完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
14个回答
|
|
|
|
|
|
有标准协议,在Flash Loader Demodoc下面,UM0516.pdf
|
|
|
|
原理就是Flash的可读写,烧录程序就是将二进制文件写入单片机中指定地址的Flash中。
你可以设置单片机boot引脚,利用已经固化在系统存储区中的程序进行更新,这样只需要自己写上位机就可以了,但要先搞清楚通信协议是怎样的。 你也可以自己编写一个单片机端的IAP程序,制定自己的通信协议,在编写上位机程序来更新,这样灵活性更大一些,不用设置boot引脚。 |
|
|
|
testd018 发表于 2019-1-16 19:30 感谢回复! |
|
|
|
感谢回复!已经找到,我会仔细阅读的。 |
|
|
|
对了,ST在芯片内部ROM区域出厂固化的那段程序是支持接收上位机的命令的,但绝对没法改变已经固化程序,是吧? |
|
|
|
ldd1211_ 发表于 2019-1-16 19:52 感谢回复!能详细说说编写单片机端的IAP程序吗?你所说的这个编写的IAP程序能将芯片出厂的固化程序修改掉吗?又为什么不用设置Boot脚呢? |
|
|
|
学习了,试试自己弄个下载软件,编个上位机。
|
|
|
|
无法更改芯片中的固件,可以自己写一个程序实现串口或者其他方式进行程序烧写,这个类似IAP,第一次需要手动烧写。
|
|
|
|
单片机内部Flash可以分为两部分,System Flash 和 User Flash, 单片机上电之后执行哪个Flash中的程序由boot引脚控制。User是你可以使用的Flash,自己编写的代码都被烧录在User Flash中了,单片机在正常工作下也是运行在User Flash中。System内有自举程序代码,用于更新User Flash中你自己编写的程序,它由ST在芯片生产期间编程,你是没有办法改变的。 自己编写IAP的意思就是你再将User Flash 分为两部分使用,一部分存放IAP程序,另一部分存放Application程序,关于IAP的编写,论坛里资料太多了,你搜一下吧。 |
|
|
|
ldd1211_ 发表于 2019-1-16 21:28 感谢回复!就算我自己写个上位机串口烧写工具,然后Boot0拉高,烧写代码时候交互的还是System Flash来写User Flash,我无法改变原来ST固化的BootLoader,就只能把User Flash分成两部分了。 |
|
|
|
感谢回复!就是我自己可以写上位机串口烧写工具,也可以在Flash区域自己写个BootLoader,但ST固化的串口烧写时候的交互代码,我是没有办法擦除重写的? |
|
|
|
办法肯定有,量大的可以直接在订购芯片的时候,厂家给一次性刷好。具体后期的修改,没有做过类似的操作。
|
|
|
|
感谢回复!我再找找办法~~~~ |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1107 浏览 0 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1055 浏览 2 评论
2159 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1253 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1678 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 16:42 , Processed in 0.803823 second(s), Total 69, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号