4397|4

66

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请教2812烧写时看门狗溢出问题 [复制链接]

我按照TI的文档,烧写flash编译都没有问题,即没有错误也没有警告,但是烧写后程序不运行。于是又对照文档仔细看了一遍,怀疑是看门狗在C程序初始化之前就溢出了。因为我按照文档上的说明,执行以下步骤:
1、File-->Load symbols-->Load symbols only;
2、Debug-->Reset CPU;
3、Debug-->Go main(根据说明,因为我是从flash启动,所以没有执行Restart)
如果程序没有跳到main函数处,说明看门狗溢出。而我的程序执行完上面三步之后就直接running了,停止运行指针就停在Memcpy函数处,怎么也跳不出来。所以我怀疑我烧写不成功是因为程序在C程序初始化之前看门狗已经溢出。于是按照文档说明,添加了Codestart.asm,文件中有对看门狗溢出进行处理的语句。但我执行上面三个步骤还是不能进入到主函数处。所以想问问到底是什么原因?我上面的判断有没有错误或者考虑不全的地方?谢谢!

最新回复

flash初始化的代码里有加速寄存器的设置,你加了这部分需要copy到ram运行的。 Codestart这部分直接用ti例程的代码就可以了。  详情 回复 发表于 2010-3-4 09:27
 
点赞 关注

回复
举报

69

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
代码里有没有加上flash init()的代码,把flash提一下速。
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我加了initflash的代码啊,我都是按照TI那个文档来执行的,难道是flash没有提速造成的吗?tonyzheng你说的提速怎么提啊?我觉得还是看门狗问题啊,就是不清楚为什么我加了禁止看门狗的语句在load symbols后还是无法Go main,知道的或者碰到过类似问题的同志们给我点建议吧,先谢谢了!
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

4
 
我把我的问题再描述清楚一点,为了关闭看门狗,我在Codestart.asm文件中是这样写的:


WD_DISABLE    .set   1   

    .ref _c_int00
        .def codestart

    .sect "codestart"
codestart:
    .if WD_DISABLE == 1
        LB wd_disable       ;Branch to watchdog disable code
    .else
        LB _c_int00         ;Branch to start of boot.asm in RTS library
    .endif

    .if WD_DISABLE == 1

        .text
wd_disable:
        EALLOW                                       
                MOVZ DP, #7029h>>6      ;Set data page for WDCR register
                MOV @7029h, #0068h      ;Set WDDIS bit in WDCR to disable WD
        EDIS                                       
                LB _c_int00             ;Branch to start of boot.asm in RTS library

    .endif

.end

完全是按照TI描述的那样修改的,load symbols后还是无法go main,请EEWORLD的老师给我点建议吧。
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

5
 
flash初始化的代码里有加速寄存器的设置,你加了这部分需要copy到ram运行的。
Codestart这部分直接用ti例程的代码就可以了。
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

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

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