使用NXP MCX W71无线MCU保护您的资产
使用AI生成
试想一下,如果无论在家中还是在工作场所,都能立即检测到对您宝贵资产所做的任何篡改、盗窃或滥用行为,并收到警报,是不是会让您感到无比安心?本实践指南就将介绍这样一个项目,它采用将Mikroe Hall Switch 3 Click连接到NXP FRDM-MCXW71开发板的方案,来配置NXP Semiconductors的FXLS8974CF加速度计和NXP NMH1000磁开关传感器,借助它们的低功耗运动唤醒和磁唤醒功能自主检测可疑活动,并通过低功耗蓝牙无线UART传输警报消息。
本项目的核心理念是利用先进的传感器技术保护高价值或涉及安全事宜的资产。例如,它可以监控智能电表是是否被篡改,也可以检测保险箱或储物柜是否发生未经授权进入的情况以提高家庭安全性。它还可以防止个人医疗设备遭到误用,或者用作笔记本电脑或平板电脑的防盗措施。在工业环境中,它可以用于仓库盗窃检测和机器篡改警报,从而大大减少损失并提高安全性。这项技术甚至可以用于一些简单的应用,例如开/关门检测。
在这个项目中,FXLS8974CF加速度计和NMH1000磁开关传感器分别用于检测特定的运动或磁变化。当这些传感器检测到异常时,它们就会触发低功耗唤醒功能。因此,设备在检测到异常之前,将始终保持低功耗状态,从而延长电池续航时间。一旦触发警报,传感器就会通过低功耗蓝牙发送警报消息,让用户立即收到通知。
项目材料与资源
项目物料清单(BOM)
● NXP Semiconductors FRDM-MCXW71开发板
● Mikroe MIKROE-6017 Hall Switch 3 Click
项目代码/软件
● 用于NXP MCU的MCUXpresso IDE
● MCUXpresso SDK Builder
其他资源
● 终端软件(如PuTTY,或者MCUXpresso IDE中的命令行界面)
其他硬件
● 运行Windows的PC
● USB Type-C转USB Type-A或Type-C电缆(取决于PC提供的USB端口类型)
● TE Connectivity 535541-6接头
帐户
● NXP帐户(可免费创建)
项目技术概述
NXP FRDM-MCXW71开发板(图1)是一款多功能、可扩展的平台,设计用于对MCX W71无线微控制器进行快速原型设计与便捷评估。这款紧凑型开发板非常适合用来探索多协议无线支持功能,包括低功耗蓝牙、Zigbee®、Thread和Matter。
图1 NXP FRDM-MCXW71开发板(图源:贸泽电子)
主要特性:
● 配备板载MCU-Link调试器,可简化调试和编程。
● 采用行业标准接头,便于访问MCU的输入/输出。
● 使用外部SPI闪存,从而增强了存储能力。
FRDM-MCXW71开发板非常适合开发物联网应用、智能家居设备和工业自动化系统,可为创新项目提供坚实的基础。
FRDM-MCXW71开发板配备NXP FXLS8974CF数字物联网加速度计。这款紧凑型三轴MEMS加速度计设计用于需要超低功耗运动唤醒功能的各种工业和医疗物联网应用。
Mikroe Hall Switch 3 Click(图2)是一款紧凑型磁场激活开关,设计用于简化您的电子项目。这款附加板采用NXP NMH1000霍尔效应磁开关,非常适合电子系统唤醒、家庭自动化(如门窗开关检测)、非接触式开关和接近检测等应用。
图2 Mikroe Hall Switch 3 Click(图源:贸泽电子)
主要特性:
● 兼容mikroBUS™,能够轻松集成到各种支持mikroBUS标准的主机系统中。
● 配备ClickID™,便于自动检测并识别附加板,简化设置和配置。
● 使用开源的mikroSDK库,可实现灵活评估和定制。
软件概述
MCUXpresso IDE
MCUXpresso集成开发环境(IDE)(图3)为开发人员提供基于Eclipse的用户友好开发环境,专为搭载Arm® Cortex®-M内核的NXP MCU量身定制,包括通用跨界MCU和支持无线功能的MCU。此IDE提供各种高级编辑、编译和调试功能,包括MCU特定调试视图、代码跟踪和剖析、多核调试以及集成的配置工具。
图3 NXP MCUXpresso IDE主界面(图源:贸泽电子)
MCUXpresso SDK
MCUXpresso SDK Builder(图4)通过提供开源驱动程序、中间件和参考示例应用来加快软件开发速度。通过SDK Builder,用户可以定制并下载与所选处理器或评估板相匹配的软件开发套件(SDK),从而简化开发流程。我们将在后面构建并安装该SDK。
图4 NXP MCUXpresso SDK Builder(图源:贸泽电子)
NXP IoT Toolbox
NXP IoT Toolbox(图5)提供了用户友好的方式来评估NXP联网芯片组的低功耗蓝牙、Zigbee和Thread应用,增强了开箱即用的体验。这款多合一移动应用可在Google Play和App Store上下载,通过低功耗蓝牙和自定义专有配置文件展示NXP的功能,实现与各种智能手机的交互。
图5 用于Android的NXP IoT Toolbox(图源:贸泽电子)
项目开发
本项目将展示如何通过集成各种设备,对这项应用进行概念验证。
硬件组装
本项目仅涉及很少的硬件组装工作,只需焊接标准接头并插入Hall Switch 3 Click即可。
1.将引脚接头焊接到FRDM-MCXW71开发板上的J5和J6。
2.将Hall Switch 3 Click连接到这些接头上,确保位置正确(图6)。
图6 连接到NXP FRDM-MCXW71开发板上的Mikroe Hall Switch 3 Click(图源:贸泽电子)
软件安装
安装步骤非常简单,只需导航至NXP MCUXpresso IDE下载网站(图7)。
图7 MCUXpresso IDE下载页面(图源:贸泽电子)
1.在网站上,单击Downloads(下载)。
2.导航到MCUXpresso Integrated Development Environment (IDE),然后单击Download(下载)(图8)。
图8 MCUXpresso IDE下载界面(图源:贸泽电子)
如果出现提示,请按照屏幕上的说明创建帐户。在接下来的画面上,您可以选择要下载的版本以及要使用的操作系统(OS)(图9)。本项目使用MCUXpresso 11.10.0版本(请下载最新版本)和Windows操作系统。
图9 MCUXpresso IDE版本和操作系统选择界面(图源:贸泽电子)
SDK安装
SDK包含驱动程序、中间件、文档、示例和其他组件。您可以从之前提供的链接或MCUXpresso IDE安装SDK。
1.打开MCUXpresso IDE。
2.在欢迎屏幕上,单击Download and Install SDKs(下载并安装SDK)链接(图10)。
图10 MCUXpresso IDE欢迎屏幕(图源:贸泽电子)
3.在屏幕右侧的Filter(筛选)字段中,输入“MCXW”。
4.选择frdmmcxw71。
5.单击Install(安装)(图11),然后等待安装完成。
图11 SDK安装中的开发板选择界面(图源:贸泽电子)
安装SPSDK并上传NBU固件
安全配置SDK(SPSDK)是一款功能多样且可靠的Python SDK库,设计用于实现NXP MCU产品组合的无缝集成。通过该SDK库,用户能够连接设备并与之交互、对设置进行配置以及管理数据操作,包括安全数据处理。窄带单元(NBU)是一个无线电内核,包含低功耗蓝牙单元和专用闪存。为确保本项目中的设备正常运行,我们需要更新NBU固件。
在更新NBU固件之前,请先下载示例项目。
1.在MCUXpresso IDE欢迎页面中,单击Import from Application Code Hub(从Application Code Hub导入)链接(图12)。
图12 MCUXpresso IDE欢迎页面中的导入应用程序代码链接(图源:贸泽电子)
2.在搜索窗口中,输入“Tamper detection + FRDM-MCXW”。
3.选择Tamper detection with low-power wake-up sensor using BLE wireless UART(使用低功耗唤醒传感器通过BLE无线UART进行篡改检测)演示(图13)。
图13 MCUXpresso IDE导入项目窗口(图源:贸泽电子)
4.单击窗口顶部的GitHub Link(GitHub链接)。
5.链接加载完成后,单击Next(下一步)。
6.选择git分支main,然后单击Next(图14)。
图14 Application Code Hub分支选择(图源:贸泽电子)
7.在下一个窗口中,选择本地目标目录,然后单击Next。
8.保持默认向导处于选中状态,然后单击Next。
9.将两个tamper_detect项目全部选中,然后单击Finish(完成)(图15)。
图15 从git导入和克隆(clone)项目(图源:贸泽电子)
克隆此项目的示例后,NBU文件的位置将取决于您选择的目标文件夹。在此位置下,NBU文件将位于以下目录中:
gitdm-tamper-detection-using-low-power-wakeup-sensor-over-bletamper_detection_demofrdmmcxw71_fxls8974_tamper_detectnbu
安装NBU固件更新前,需要先安装SPSDK。
1.打开Windows的命令提示符窗口。
2.在命令提示符下,依次输入以下命令(图16)。
python -m venv GetSpsdk
cd GetSpsdk
cd Scripts
activate
pip install -U spsdk
图16 在命令提示符下安装SPSDK(图源:贸泽电子)
然后就可以从此处上传NBU固件。
注意:将NBU文件从原始位置复制到其他目录可能会让操作更容易。
1.在同一命令提示符下,将目录更改为NBU固件所在的位置。
2.按住FRDM-MCXW71上的SW3,将该开发板的J10 USB Type-C™口连接到PC。
3.松开SW3。
4.确认设备管理器中MCU-Link COM端口是否位于正确的位置(图17)。
图17 设备管理器窗口(图源:贸泽电子)
5.在命令提示符下,输入:blhost -p COMX -- receive-sb-file mcxw71_nbu_ble_1_9_14_0.sb3,注意要将COMX中的X替换为相应的COM端口(图18)。
图18 NBU固件更新(图源:贸泽电子)
执行
现在,NBU固件更新已完成,示例软件已从git仓库中复制,我们可以构建并运行演示了。
软件集成和演示
打开MCUXpresso IDE。此时示例项目应出现在Project Explorer(项目浏览器)窗口中。
1.编译/构建frdmmcxw71_fxls8974_tamper_detect项目:在项目窗口中选择该项目,然后单击Build(构建)图标,或者右键单击该项目并选择Build(图19)。
图19 在MCUXpresso IDE中构建演示项目(图源:贸泽电子)
2.单击GUI Flash Tool(GUI刷写工具)图标。
3.在Probes discovered(发现调试器)窗口(图20)中,选择MCU-LINK,然后单击OK(确定)。
图20 调试器发现窗口(图源:贸泽电子)
4.在下一个窗口中,单击Run…(运行)开始编程。如果编程成功,MCXW71开发板的蓝色LED指示灯(位于Hall Switch 3 Click下方)将会闪烁。
5打开终端软件,配置MCU的COM端口,并将波特率设置为115200(图21)。
图21 终端界面设置(图源:贸泽电子)
6.在移动设备上,打开NXP IoT Toolbox(图22)。
7.选择Wireless UART(无线UART)(图23)。
图22 NXP IoT Toolbox移动应用(图源:贸泽电子)
图23 NXP IoT Toolbox中的Wireless UART界面(图源:贸泽电子)
8.选择NXP_WU字段。
9.移动或摇晃FRDM-MCXW71开发板以触发警报。此时下面的消息应出现在NXP IoT Toolbox(图24)和终端窗口(图25)中。
图24 NXP IoT Toolbox无线终端中显示运动篡改检测警报(图源:贸泽电子)
图25 设备连接后的终端界面(图源:贸泽电子)
图26 NXP IoT Toolbox无线终端中显示磁篡改检测警报(图源:贸泽电子)
10.要测试霍尔效应传感器,请使用frdmmcxw71_nmh1000_tamper_detect完成上述编程步骤。此时若将磁铁放在Hall Switch 3 Click上方,便会输出如图26所示的结果。
结语
本项目中的技术并不仅仅适用于技术爱好者;它还具有实际应用,能够使日常生活更加安全、更有保障。无论您是要保护个人物品、确保医疗设备的完整性,还是保护工业设备,这些传感器都能提供可靠、高效的解决方案。将这些传感器集成到安全系统中,便可以让您随时了解情况并迅速采取行动,确保在各种环境下都能安心无忧。
作者简介
Joseph Downing于2011年加入贸泽电子,担任技术支持专员,后转为技术内容专员。此外,Joseph还曾就职于英特尔、Radisys和Planar等电子行业公司,拥有20多年的工作经验。作为一名狂热的创客,Joseph帮助管理并向应用与技术专栏(Mouser.com网站上)以及贸易展会提供技术项目和材料。
评论