1675|0

1140

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

MSP430F5438A无线升级 [复制链接]

430无线升级,是通过JTAG烧写一个自定义BSL程序,然后通过BSL程序接收应用程序(APP程序)。

接收方式多种--UART,IIC,SPI。430手册关于固件升级,也介绍了BSL协议等内容。

由于项目需要,采用无线升级,无线模块是SPI接口,也可理解为SPI接收方式。

BSL程序和APP程序需作地址空间区分,修改对应的XCL文件。

---- APP的XCL文件

关于XCL文件,由于我的程序很短,空间设置的很小。升级时,只要程序rebulid时没报错就没问题,

如果升级出问题时,可不考虑这方面的原因。也不用考虑高地址空间的问题。

---BSL的XCL文件

地址空间分配好后,然后编写对应的程序。程序中最关键的是终端向量重映射。

----APP程序,很简单,方便测试

-----BSL程序中关于定时器中断重映射

烧写BSL程序,然后通过无线发送APP程序,并烧写到对应的flash空间。最后是跳转到APP区。


单步调试,程序跳转正常。当单步执行APP程序中打开全局中断语句后,再单步,程序复位,指向0xFFFE。

复位向量里放的BSL程序的起始地址,也就是0x7000。但程序并没有执行到0x7000,而是执行到0x0000,

再单步就跳到0x0004不动了。

经过示波器观测,发现时钟引脚仍然有信号,说明程序还是运行了,中断函数没进去。所以一直考虑是中断

向量重映射的问题。

重新看官网例程,发现将所有没用的中断都做了处理,我也这样试试,

再调试,发现不再复位,而是进入84中断了。

也就是P2口中断,查看IO口配置函数,发现打开了P2口的中断使能,导致有中断,没有对应的中断服务程序。

到此问题终于解决。
 

 
点赞 关注

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表