您现在的位置: 主页 > MCU > 单片机技术应用 > STC12C2052AD单片机看门狗及其溢出时间计算公式 -
本文所属标签:
为本文创立个标签吧:

STC12C2052AD单片机看门狗及其溢出时间计算公式 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-06 

[导读]
;本程序用于验证STC12C2052AD系列单片机的看门狗及其溢出时间计算公式;看门狗及其溢出时间=(12*Pre_scale*32768)/OscillatorFrequencyWDTCREQU0E1H;看门狗地址WDT_TIME_LEDEQUP1.5;用P1.5控制看门狗溢出

;本程序用于验证STC12C2052AD系列单片机看门狗及其溢出时间计算公式
;看门狗及其溢出时间=(12*Pre_scale*32768)/OscillatorFrequency

WDTCREQU0E1H;看门狗地址

本文引用地址: http://www.21ic.com/app/mcu/201806/761575.htm


WDT_TIME_LEDEQUP1.5;用P1.5控制看门狗溢出时间指示灯,
;看门狗溢出时间可由该指示灯亮的时间长度或熄灭的时间长度表示
WDT_FLAG_LEDEQUP1.7;用P1.7控制看门狗溢出复位指示灯,如点亮表示为看门狗溢出复位

Last_WDT_Time_LED_StatusEQU00H;位变量,存储看门狗溢出时间指示灯的上一次状态位

;WDT复位时间(Oscillatorfrequency=18.432MHz):
;Pre_scale_WordEQU00111100B;清0、启动看门狗,预分频数=320.68S
Pre_scale_WordEQU00111101B;清0、启动看门狗,预分频数=641.36S
;Pre_scale_WordEQU00111110B;清0、启动看门狗,预分频数=1282.72S
;Pre_scale_WordEQU00111111B;清0、启动看门狗,预分频数=2565.44S

ORG0000H
AJMPMAIN

ORG0100H
MAIN:
MOV A,WDTCR;检测是否为看门狗复位
ANLA,#10000000B
JNZWDT_Reset;WDTCR.7=1,看门狗复位,跳转到看门狗复位程序

;上电复位,冷启动,RAM单元内容为随机值
SETBLast_WDT_Time_LED_Status;上电复位,
;初始化看门狗溢出时间指示灯的状态位=1
CLRWDT_TIME_LED;上电复位,点亮看门狗溢出时间指示灯
MOV WDTCR,#Pre_scale_Word;启动看门狗

WAIT1:
SJMPWAIT1;循环执行本语句(停机),等待看门狗溢出复位

;看门狗复位,热启动,RAM单元内容不变,为复位前的值
WDT_Reset:;看门狗复位,热启动
CLRWDT_FLAG_LED;点亮看门狗溢出复位指示灯

JBLast_WDT_Time_LED_Status,Power_Off_WDT_TIME_LED
;根据看门狗溢出时间指示灯的上一次状态位设置WDT_TIME_LED灯,
;若上次亮本次就熄灭,若上次熄灭本次就亮
CLRWDT_TIME_LED;上次熄灭本次点亮看门狗溢出时间指示灯
CPLLast_WDT_Time_LED_Status;将看门狗溢出时间指示灯的上一次状态位取反
WAIT2:
SJMPWAIT2;循环执行本语句(停机),等待看门狗溢出复位

Power_Off_WDT_TIME_LED:
SETBWDT_TIME_LED;上次亮本次就熄灭看门狗溢出时间指示灯
CPLLast_WDT_Time_LED_Status;将看门狗溢出时间指示灯的上一次状态位取反
WAIT3:
SJMPWAIT3;循环执行本语句(停机),等待看门狗溢出复位

END




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机技术应用 > STC12C2052AD单片机看门狗及其溢出时间计算公式 -
 

"STC12C2052AD单片机看门狗及其溢出时间计算公式 -"的相关文章

网站地图

围观()