完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
最近在搞DSP2812的远程更新Flash程序,在网上查找了一些资料,都只是说用串口下载然后远程传输,但中间的具体细节和关键技术都没有说清楚,请教一下各位大神DSP远程更新flash如何实现,如果我程序烧写在不同的Flash扇区,我该如何引导我的程序从不同的扇区进行读写数据!
|
|
相关推荐
1个回答
|
|
rong,
可以用串口进行在线升级。 首先是你要自己先一段bootloader程序放在一个特殊的扇区,这个扇区在升级的过程中是不能擦除的。 然后在用户程序中监视串口的命令,当接收到串口发送过来升级的指令的时候,就需要调到bootloader的入口,bootloader进行初始化,重新初始化系统时钟,串口等,然后回送应答给串口上位机,准备接收上位机发送过来的数据。因为升级数据很大,所以不可能一次接收完,一般是分次接收,当接收到一块数据后,就调用Flash API函数烧写到Flash中,烧写完后,回送应答给上位机,上位机再发送下一个数据块。当然,这个数据块需要包含地址信息,数据长度,数据,校验和。 最后烧写完成后,就可以重新跳到Flash的入口,0x3F7FF6。 在上位机你也要读hex文件,解析成一块块数据,发送给下位机。 这是大概的思路。 附件是2812的SCI boot Flash烧写的例子,跟在线升级不同的地方是,这个例程的bootloader是通过SCI boot 方式load到RAM中,然后再运行bootloader接收上位机数据,调用Flash API烧写。 Eric - ERIC |
|
|
|
只有小组成员才能发言,加入小组>>
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
431 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
931 浏览 1 评论
538 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
414 浏览 1 评论
970 浏览 0 评论
64浏览 3评论
CC3100BOOST使用CC3200lunchXL进行烧录
913浏览 2评论
156浏览 2评论
198浏览 2评论
176浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-30 14:07 , Processed in 0.685261 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号