STC12LEXXXX系列单片机WDT使用

[复制链接]
3290|2
 楼主| NETEAST 发表于 2007-7-9 23:16 | 显示全部楼层 |阅读模式
  有谁也使用过STC12LE 系列的单片机?我曾遇到过WDT的开关(有效/失效控制)会产生乱码.在读取WDT复位标志时,RAM区域有乱码出现,我清除也不能清除,没有办法,我只有放弃检查WDT复位标志,结果RAM也没有乱码出现,真有点邪门!难道我的程序编写有问题?可我在使能与标志判定间的程序段除RAM清零外没有其他的RAM的读写.有遇到此类问题的能否一块摆上台来聊聊?探讨探讨!
chunyang 发表于 2007-7-10 00:46 | 显示全部楼层

可以肯定是你的程序问题

任何品牌、任何型号的带内置WDT的MCU都不会发生你说的问题。
 楼主| NETEAST 发表于 2007-7-13 00:48 | 显示全部楼层

也许是程序问题

你说的不无道理,但现实我取消WDT复位标志后,一切正常.我在程序的开始有检查WDT复位标志,当标志位为1时,不作RAM清除工作,其他复位时清除.结果出现上述现象.<br />很奇怪的是我对RAM清零后没有对RAM写入,但出现非零值,我至今想不通!<br /><br />如下程序:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MAIN:&nbsp;MOV&nbsp;&nbsp;&nbsp;A,WDT_CONTR&nbsp;&nbsp;&nbsp;;检查最高位WDT复位标志<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ANL&nbsp;&nbsp;&nbsp;A,#80H<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JNZ&nbsp;&nbsp;&nbsp;CLS_WDT_FLAG&nbsp;&nbsp;;标志位为1跳转<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;R0,#0FFH<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLSRAM:CLR&nbsp;&nbsp;&nbsp;A<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;@R0,A<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DJNZ&nbsp;&nbsp;R0,CLSRAM<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLS_WDT_FLAG:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;WDT_CONTR,#0<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INITI_MCU:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.........<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MOV&nbsp;&nbsp;&nbsp;WDT_CONTR,#3AH<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...........<br /><br />我也试过不跳过RAM擦除程序,依然是出现同样的乱码.在STC12LE5404AD上我试过的.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

15

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部