概述
PS:本【案例】基于STM32F10x系列。
如何利用蓝牙等无线设备进行无线下载编程?
简化步骤:
1. 第一步:配置BootLoard工程,通过有线(如ST-LinK)下载BootLoard工程。
2. 第二步:配置用户工程,通过无线(如蓝牙)下载APP到MCU内。
具体步骤:
1. 配置BootLoard工程:
a. BootLoard是什么?
是一个工程。BootLoard工程相当于电脑的Boos系统, 相当于母鸡下蛋的那个牵引蛋。与用户工程的关系就像, BootLoard相当于360手机助手, 用户工程相当于你要下载的APP。也就是说BootLoard本质也是个App。使用BootLoard引导下载程序的方式被称为使用IAP(in application programming) , 这种方式利用stm32的任意一个通讯端口,如spi,iic,can,usart等来更新程序。
b. 为什么要用BootLoard来更新(下载)用户工程?
可以实现远程编程和无线编程。比如小米手环就是利用蓝牙更新手环里面的程序,手机通过WIFI等获取小米官网的最新程序到手机内。再通过手机的蓝牙将最新程序烧写到小米手环内。
小米手环如何更新固件?
对于我们在校生有啥用呢?你需要无线下载的时候就用这个。比如在比赛现场无线下载程序什么的,别说我说的(逃)!
c. BootLoard工程怎么编写?慢慢编呗,哈哈,开玩笑了,当然找会的人要呀,比如我。或者去网上搜罗,然后自己修改参数。那么如何修改那些参数呢?
参数修改:
很简单,就修改2个地方:一,Target;二,Flash DownLoad ;
一,Target:配置程序的首地址0x8000000和空间大小0x10000(64KB)**
Boot配置01-Target
二,Flash DownLoad:配置烧写时BootLoader的空间大小
Boot配置02-Flash DownLoad
Boot配置-注意01
2. 配置用户工程:
a. 用户工程有什么不同?没有任何代码差异,主要差异在配置上。
b. 用户工程如何配置?
修改3个地方:一,Target;二,Flash DownLoad;三,User
跟修改BootLoard工程一样,只是多了User。因为,我们蓝牙发送的是.bin文件,而不是.Hex文件。
一,Target:配置程序的首地址0x8010000和空间小0x70000(448KB)
用户工程配置01-Target
二,Flash DownLoad:配置烧写时BootLoader的空间大小
用户工程配置02-Flash DownLoad
三,User:配置生成Bin文件
用户工程配置03-User
OK了
问题补充:
1. 用户工程烧进去运行不成功的常见原因?
a) 用户工程的起始地址设置有误
参考资料:
最后
以上就是跳跃早晨为你收集整理的单片机蓝牙烧录_【MCU】如何利用蓝牙对单片机进行无线编程?的全部内容,希望文章能够帮你解决单片机蓝牙烧录_【MCU】如何利用蓝牙对单片机进行无线编程?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复