社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
  • 干货
搜索
查看: 556|回复: 0

[蓝牙BLE] STEVAL-IDB007V1 烧入Demo程序

[复制链接]

911

TA的帖子

1

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

发表于 2017-12-30 00:31:15 | 显示全部楼层 |阅读模式
本帖最后由 cruelfox 于 2017-12-30 13:22 编辑

插上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程序。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2018-7-22 13:08 , Processed in 0.089399 second(s), 16 queries , Gzip On, Redis On.

快速回复 返回顶部 返回列表