[BLE(低功耗蓝牙)] STEVAL-IDB007V1 烧入Demo程序

cruelfox   2017-12-30 00:31 楼主
插上USB之后,识别出了虚拟串口设备,这是很自然的。接着,还识别出了一个“磁盘”设备,我立即就明白了ST为什么要用STM32L151来做USB转串口功能——不仅仅是一个虚拟串口啊,这样就像Nucleo上的ST-Link v2-1那样,还带了烧写程序的功能,应该把HEX文件拷贝进去就可以烧程序了。 电脑上已安装过了 BlueNRG-1_2 DK 2.5.0 软件,先看看有没有现成的Demo编译好的可以试。在 DK 安装的目录下面,一搜.HEX的文件便找到了,在这里: demos.PNG 我发现 Application 目录里面有"BlueNRG-1 Flasher"这个程序,应该也可以实现烧录的。打开试了一下,它自动识别出了开发板。选了BLE_Chat这个Demo的HEX文件,果然可以烧进去。 flasher.PNG 在运行 BLE_Chat 时要关闭 Flasher, 用终端软件打开串口。重新复位一下,可以看到程序输出的信息。在我的手机上,也可以搜索到"BLE Chat"的蓝牙设备了。等明天安装App再继续玩。 term.PNG STEVAL-IDB007V1 上面没有带 ST-Link, 从电路图上看 BlueNRG-1 的SWD调试口是只连到 20-pin JTAG座上的,那么JFlasher软件只能是通过串口烧写的。同样,通过向虚拟磁盘设备拷贝.HEX文件烧写,也只能是STM32L151通过串口对BlueNRG-1进行操作来实现。这么看来是通过 BlueNRG-1 的 bootloader 来实现ISP了。查阅了它的文档,果然有关于bootloader的说明。 既然 BlueNRG-1 也是像STM32那样有SWD口的,用ST-Link/J-Link这些也应该可以像普通ARM MCU那样进行调试和烧写。ST提供了一个BlueNRG专用的 ST-Link Utility 软件,不妨就试一下。工具有GUI和命令行的版本,这是命令行的: util_cli.PNG 它的命令和 ST-Link_CLI 是一样的,我用 -CmpFile 来比较了一下Flash内容和(用拷贝文件的方式写入的)和HEX文件是否一致。 总结, 烧写 STEVAL-IDB007V1 上面 BlueNRG-1 的Flash有三种途径: 1. 通过JTAG座用SWD连接ST-Link等工具,像普通单片机那样烧写。 2. 在USB连接的条件下,通过向板上STM32L151虚拟出的磁盘拷贝.HEX文件的办法,不需要其它软件。 3. 用BlueNRG-1 Flasher软件,通过USB虚拟串口和bootloader直接通信实现烧写。前提是串口不要被占用,烧写前需要复位,才能执行bootloader程序。 本帖最后由 cruelfox 于 2017-12-30 13:22 编辑

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复