一、文章目标
本篇文章带你认识 Nordic 最新的 nRF54L15 芯片,了解它到底适合用在哪些物联网场景。
二、背景知识
前面我们讲了 BLE 和边缘计算,也聊过 nRF5340 和 nRF54H20 芯片,今天我们聚焦一下另一颗很受关注的芯片:nRF54L15。
nRF54L15 是 Nordic 最新推出的超低功耗 BLE 芯片,它专门为那些超长续航、极致节能的应用而生。虽然算力不如 nRF54H20 那么强悍,但 nRF54L15 更强调低功耗、成本低、待机时间长,特别适合低数据量、高待机要求的场景,比如一次性医疗贴片、智能标签、资产追踪设备等等。
简单来说,nRF54L15 就是为“超长待机”物联网场景量身打造的。
三、真实案例
我们拿医疗领域中的一次性健康监测贴片举个例子吧。
某医疗企业希望推出一种可以连续监测病人心率、体温的贴片设备,这个贴片要求非常薄,电池容量非常小,但要持续监测数据长达一周,期间数据还能通过 BLE 无线同步到病人或医生的手机上。
这个要求对芯片来说挑战非常大,工程师经过评估最终选定了 nRF54L15,因为它超低的功耗和稳定的 BLE 连接完全符合需求。nRF54L15 可以让贴片在极小电池容量的情况下实现长达一周的实时监测。产品推出后,患者使用体验非常好,医生满意度也非常高,医疗贴片很快就大量进入市场。
四、实战演示
我们用 nRF54L15 来实现一个超低功耗的 BLE Beacon,能以极低功耗广播简单数据。
#include <nrf.h>
#include <ble_advdata.h>
#include <nrf_sdh.h>
#include <nrf_sdh_ble.h>
#define DEVICE_NAME "nRF54L15_Beacon"
#define APP_BLE_CONN_CFG_TAG 1
void ble_stack_init(void)
{
ret_code_t err_code;
err_code = nrf_sdh_enable_request();
APP_ERROR_CHECK(err_code);
uint32_t ram_start = 0;
err_code = nrf_sdh_ble_default_cfg_set(APP_BLE_CONN_CFG_TAG, &ram_start);
APP_ERROR_CHECK(err_code);
err_code = nrf_sdh_ble_enable(&ram_start);
APP_ERROR_CHECK(err_code);
}
void advertising_init(void)
{
ble_advdata_t advdata;
uint8_t beacon_data[] = {0x01, 0x02, 0x03, 0x04}; // 简单广播数据
memset(&advdata, 0, sizeof(advdata));
advdata.flags = BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE;
ble_advdata_manuf_data_t manuf_specific_data;
manuf_specific_data.company_identifier = 0x0059; // 示例公司ID
manuf_specific_data.data.p_data = beacon_data;
manuf_specific_data.data.size = sizeof(beacon_data);
advdata.p_manuf_specific_data = &manuf_specific_data;
ble_advdata_set(&advdata, NULL);
}
int main(void)
{
ble_stack_init();
advertising_init();
while (true)
{
__WFE(); // 极低功耗睡眠模式,等待广播事件
}
}
代码说明:
- 初始化 BLE 协议栈,设置极低功耗模式。
- 广播少量自定义数据,这种模式几乎不消耗电池电量,非常适合医疗、标签等低功耗场景。
通过这个简单的演示,你就能看到 nRF54L15 芯片如何以极低功耗长时间运行。
五、小结与拓展阅读
核心要点:
- nRF54L15 芯片以超低功耗、高续航为亮点,非常适合医疗设备、智能标签、资产追踪等应用场景。
- 通过简单的 Beacon 示例,让你快速掌握如何利用 Nordic 芯片实现低功耗应用。
下一篇预告:
下一篇,我们要进一步了解 Nordic 的旗舰芯片 nRF54H20,看看它强悍的性能和更复杂的应用场景到底怎么玩转。