1428|0

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

MSP430FR5969 远程升级 [复制链接]

MSP430 远程升级功能: 基于1、片外EEPROM(片内flash够大也可使用片内)
2、射频通信
3、上位机软件(传输升级文件)

总结点:
1、程序运行总是从复位中断向量开始寻址入口执行,中断向量就是保存每个中断触发满足后的中断函数的入口地址的存储单元。
根据数据手册上诉说The interrupt vectors are located in the address range 0FFFFh to 0FF80h, for a maximum of 64 interruptsources ,默认中断向量位置为0XFF80~0XFFFF,长度为0x80.MSP430FR5969的头文件中定义复位向量为 #define RESET_VECTOR  

      (55 * 2u) /* 0xFFFE Reset [Highest Priority] */默认值0XFFFE~0XFFFF这两个字节是复位中断向量,存储是主函数在FLASH的运行起始地址。如主函数保存在P(CODE)CODE=4400-4A00则0XFFFE内保存的是0X00,0XFFFF内保存的是0X44;则系统复位后,就到0XFFFE,0XFFFF中去寻找主函数的入口地址。
其他中断函数的运行地址也保存在相应的向量中,当触发中断的条件满足后,程序根据中断向量内所指的地址去寻址中断函数的入口地址。
工程建立产生一个link文件(.xcl文件),文件中定义了内存划分,CODE代码段存储位置,中断向量表默认值从0XFF80~0XFFFF表述为
-Z(CONST)SIGNATURE=FF80-FF8F
-Z(CONST)JTAGSIGNATURE=FF80-FF83
-Z(CONST)BSLSIGNATURE=FF84-FF87
-Z(CONST)IPESIGNATURE=FF88-FF8F
-Z(CODE)INTVEC=FF90-FFFF
-Z(CODE)RESET=FFFE-FFFF
2、要进行远程文件升级,则需要将代码划分为两段代码:BOOT、应用程序APP两段代码,若有升级文件,在应用程序中接收文件存储入片外epprom,再使用BOOT将文件搬移到应用程序区。


3、前面谈到程序运行总是从中断向量表中启动,那么内存中有两段代码(BOOT、应用程序APP),他们的中断向量指向的位置就不能一致,即需要修改link文件。我们使BOOT代码的启动位置为默认值,修改应用程序的启动区和代码区存储位置
 
点赞 关注

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表