MCUXW72三核芯片支持MCUXPresso for VScode、MCUXPresso IDE多种开发环境,支持freeRTOS、zephyr、bera-metel多种开发方式,这里先以MCUXPresso for VScode插件来进行环境搭建以及编译、NBU更新、应用烧录(LinkServer、J-Flash、spsdk(blhost)多种)。
1、 环境安装
所有工具下载见MCUXpresso Software and Tools | NXP Semiconductors。有傻瓜的方式,可以下载MCUXpresso Installer进行安装,它会吧需要的所有工具全都装上,这里包括ARM GNU Toolchain、ARM GNU Toolchain Add-ons、CMake、ninja、git、python、JLink必装,zephyr开发的话额外必装dtc、wget,其余LinkServer、PEmicro等选装可以单独安装再在插件里指定Jlink、PEMicro、MCUXPresso Config Tool、MCUXPresso Secure Provisioning Tool位置即可。

2、 SDK导入
下载页面见选择电路板 | MCUXpresso SDK 构建工具。选好FRDM-MCXW72板子核armgcc工具链下载下来并解压。打开VScode,切到MCUXPresso for VSCode,点击Quick Panel折叠项下的Import Repository,选择刚解压的SDK文件夹,再Import即可,

3、 工程编译
如上图导入完SDK,再Import Repositories能看到已经导入的SDK_26_03_00-FRDM-MCXW72,此时就能基于SDK里的例程进行工程创建了具体点击Import example from repository,Repository选择刚才导入的SDK,Board选FRDM-MCXW72,模板这里选择wireless_examples/Bluetooth/w_uart/freertos/wirelss_uart_freertos,工程名和工程路径选定,Toolchain选择ARM GNU Toolchain 14.2即可,
完成后点击编译,生成了elf,可通过选中elf右键菜单Binary Utilities->Create hex,bin千万不要点这里,生成bin有问题,先别急调试或烧录,因为无线应用需要射频协议栈的控制,必须先进行NBU的更新,文件在mcuxsdk\middleware\wireless\ble_controller\bin\mcxw72_nbu_ble_hosted.bin,地址0x48800000,具体操作见下一节。

4、 烧录
板子上MCU-link是LPC55S69 JEV98编程器,可支持J-Flash和CMSIS-DAP模式。官方的LinkServer只支持CMSIS-DAP HID模式。具体可以看设备管理器,常规的J-Flash不复述(有license问题,有破解工具解决),
现在切到CMSIS-DAP模式,更新DAPLink固件就跳帽短接ISP_EN JP5再上电进入bootrom再点击MCU-Link下的Program MCU-Link CMSIS-DAP firmware就能切成DAP模式,烧完拔掉跳帽在重新上电,

此时LinkServer就能识别到MCU-link,再LinkFlash烧录即可,下图就是更新NBU的快照,

以上都是GUI的操作,NXP也提供了一套命令行的更新MCU固件烧录方式blhost,由于是python文件可按Installation Guide — SPSDK documentation指导进行安装,这里烧录应用才是按住SW3 ISP不放再上电就能“blhost -p COM101 -- flash-image "F:\Electronics\NXP\MCXW72\myprojects\frdmmcxw72_temperature_sensor_freertos\debug\frdmmcxw72_temperature_sensor_freertos_cm33_core0.hex"”进行烧录,
5、 运行
烧录进wireless_uart_freertos先按下SW4由Central切成Peripheral,再按下SW2开始广播,手机可以看到“NXP_WU”的广播,用NXP IoT Toolbox进行连接就能双向互传,

我要赚赏金
