解决:C8051系列单片机,代码量较大时工作不正常问题
2015-07-20 09:44
274 查看
问题:最近用一款C8051F380单片机,写一个项目程序,结果奇怪地发现,当我的代码量增加一些后,程序烧录进去后,发现单片机几乎没工作,没有进主函数,串口更是不能工作了。怀疑是内存资源用超了,一看,此单片机4K RAM和64K ROM,资源绰绰有余,而且主函数下第一句就关闭了看门狗。找了好半天原因,无果。
解决:最后,将调试功能的Run to main()勾去掉,发现程序能调试了,但是代码在XDATALOOP这儿就容易产生复位,心想,是不是这个循环上单片机耗费的时间太长了,没有及时关闭看门狗,从而导致单片机复位了。于是,我在单片机的Startup.A51文件里,在STARTUP1下增加了如下代码:
STARTUP1:
;关闭看门狗
MOV A,0D9H
ANL A,#0BFH
MOV 0D9H,A
CLR A
问题成功解决了。
解决:最后,将调试功能的Run to main()勾去掉,发现程序能调试了,但是代码在XDATALOOP这儿就容易产生复位,心想,是不是这个循环上单片机耗费的时间太长了,没有及时关闭看门狗,从而导致单片机复位了。于是,我在单片机的Startup.A51文件里,在STARTUP1下增加了如下代码:
STARTUP1:
;关闭看门狗
MOV A,0D9H
ANL A,#0BFH
MOV 0D9H,A
CLR A
问题成功解决了。
相关文章推荐
- android 代码实现控件之间的间距
- [Android]在代码里运行另一个程序的方法
- 肯特·贝克:改变人生的代码整理魔法
- 许多数据中心的工作者很满意他们的工作,将鼓励他们的孩子继续从事这份工作
- 网页恶意代码的预防
- Mootools 1.2教程 函数
- autoit InputBox 函数
- 文件遍历排序函数
- 高手写的Tracer-Flash代码调试类代码下载
- Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
- CSS代码缩写技巧
- 非主流Q-zOne代码代码搜集第1/2页
- ASP下经常用的字符串等函数参考资料
- CreateWeb.vbs 代码
- PostgreSQL教程(五):函数和操作符详解(1)
- DOS批处理 函数定义与用法
- asp Chr 函数 数字转字母的方法
- Lua中的函数精讲笔记
- Lua中的闭合函数、非全局函数与函数的尾调用详解