msp430f5438调试中遇到的问题请教各位老师

2019-03-24 14:15发布

1,msp430f5438看门狗默认状态下是开启的,为什么在调试状态下看门狗不会复位芯片(假设还没有执行到关闭看门狗的语句),是不是程序暂停的时候看门狗内部计数器也是停止的?另一个问题搞得莫名其妙,msp430f5438程序中用了6K的RAM变量空间(理论上5438是由16KRAM的),编译通过进入调试界面以后程序总是运行在启动代码中的_data16_memzero函数中跳出不来,查看内存数据发现每次只初始化了4678字节后芯片就自动复位了。如果把程序使用的RAM空间降到4678以下就可以正常启动了。什么原因有人碰到或知道吗?知道的话告诉我一下啊,十分谢谢!   [ 本帖最后由 阿力 于 2011-7-7 10:35 编辑 ] 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
阿力
1楼-- · 2019-03-24 22:57
<

一进入DEBUG调试界面以后程序一直在启动代码里面走,暂停程序停在如图位置,RAM只能初始化到地址0x2e46,(会不会是内部看门狗把芯片复位了?)如果把代码中RAM的使用量降到4678字节以下则能正常运行到main()函数开头部分,另外,IAR软件有没有配置或查看芯片RAM信息的地方吗?我没找到,知道的兄弟吱一声啊!

[ 本帖最后由 阿力 于 2011-7-7 11:53 编辑 ]
什么都不懂
2楼-- · 2019-03-24 23:57
 精彩回答 2  元偷偷看……
阿力
3楼-- · 2019-03-25 05:38
谢谢回复,兄弟能说的详细点么?您上面说RAM定的是不是超出了,指的是5438芯片RAM的空间吗?如果是说这个的话应该不会的,我实际上用了6.5K左右的RAM,5438有16K空间,目前发现造成上述原因是因为RAM还没有初始化好芯片就被看门狗复位了,正在寻找在IAR的引导程序里面加上关闭看门狗指令的方法,至于__no_init 这个具体是怎么使用还真不知道,最近刚开始用IAR,还请说得详细点!
阿力
4楼-- · 2019-03-25 07:21
我在定义变量的时候用了__no_init ,现在把这个问题解决了!这个__no_init 定义的变量跳过了IAR引导程序里面对RAM区的初始化!再次感谢!
deweyled
5楼-- · 2019-03-25 11:18
 精彩回答 2  元偷偷看……
deweyled
6楼-- · 2019-03-25 16:04
具体的参考TImsp430f5x系列IAR汇编例程

一周热门 更多>

相关问题

    相关文章