PIC单片机应用开发典型模块_第九章程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
whatchdog程序
软件看门狗采用编程方法实现对系统运行的监测,实时地就系统的运行状态做出判断,一旦系统出现死机或者跑飞等不正常的现象,则用软件进行复位。
程序代码:
JMP 000H …
;对于4K程序存储器PIC单片机,其程序的跳转指令如下:
…
;BCF PCLA TH, 3;
;JMP 000H ; 跳转
…
;对于8K程序存储器PIC单片机,其程序的跳转指令如下:
…
BCF PCLA TH, 3;
BCF PCLA TH, 4;
JMP 000H ; 跳转
…
;*********************主程序开始*********************
ORG 00H ;
NOP ;空指令
GOTO MAIN
ORG 04H ;中断向量的地址为40H
GOTO INT ;跳到中断子程序
;**********************中断子程序开始*********************
INT
…;断处理程序
RETFIE
NOP
NOP
NOP
BCF PCLA TH, 3;
BCF PCLA TH, 4;
JMP 00H ;跳转
;***************************中断子程序结束*******************
;***************************主程序开始***********************
MAIN
…;系统设置
LOOP
…;主程序的循环语句
…;主程序的循环语句
GOTO LOOP ;
NOP
NOP
NOP
BCF PCLA TH, 3 ;
BCF PCLA TH, 4 ;
JMP 000H ;跳转
;*****************************AAA子程序************************ AAA
…
RETURN ;返回
NOP
NOP
NOP
BCF PCLA TH, 3 ;
BCF PCLA TH, 4 ;
JMP 000H ;跳转
;*****************************子程序结束************************
;*****************************BBB子程序************************ BBB
…
RETURN ;返回
NOP
NOP
NOP
BCF PCLA TH, 3 ;
BCF PCLA TH, 4 ;
JMP 000H ;跳转
;*****************************子程序结束************************
;*****************************主程序结束************************
在实例中,加入了软件看门狗,就是前一节介绍的软件陷阱,具体程序如下:;*****************************主程序开始************************ ORG 00H ;
NOP ;空指令
GOTO MAIN
ORG 04H ;中断向量的地址04H
GOTO INT ;跳到中断子程序
;*****************************中断子程序开始************************ INT
…;中断处理程序
RETFIE
NOP
NOP
NOP
BCF PCLA TH, 3 ;软件陷阱
BCF PCLA TH, 4 ;
JMP 000H ;
;*****************************中断子程序结束************************ MAIN
…;系统其他设置
BCF STA TUS, RP1 ;转到体1
BSF STA TUS, RP0 ;
MOVLW 0FH ;设置分频器给WDT
MOVWF OPTION_REG ; 分频比为1:128
…;系统其他设置
LOOP
…;主程序的循环语句
CLRWDT ;对WDT进行清零操作
…; 主程序的循环语句
GOTO LOOP ;
NOP
NOP
NOP
BCF PCLA TH, 3 ;软件陷阱
BCF PCLA TH, 4 ;
JMP 000H ;
;***************************************************************
;*****************************AAA子程序************************ AAA
…
RETURN ;返回
NOP
NOP
NOP
BCF PCLA TH, 3 ;软件陷阱
BCF PCLA TH, 4 ;
JMP 000H ;
;*****************************子程序结束************************ ;*****************************BBB子程序************************ BBB
…
RETURN ;返回
NOP
NOP
NOP
BCF PCLA TH, 3 ;软件陷阱
BCF PCLA TH, 4 ;
JMP 000H ;
;*****************************子程序结束************************
;*****************************主程序结束***********************