PIC中断汇编例程
listp=16f876
#include
;--------------------------
;定时计数单元
HW_TIMEEQU0X40
;-----------------------------
;定时常数
HW_TIMECT0EQU0XDF;TMR0定时器时间常数,载波信号频率37.88KHz(13.2us)
HW_TIMECT1EQU0X64;发送信号位间隔,*(1.32ms)
HW_TIMECT3EQU0X31;
;-------------------------------------
ORG0X00
GOTOHW_RECEIVE
;------------------------------------
ORG0X04
GOTOINT
;---------------------------------------
bcfINTCON,GIE
BCFINTCON,T0IF;(T0IF)定时器溢出标志位清零
BCFINTCON,T0IE;关TMR0中断(T0IE)位清零
BANKSELOPTION_REG
CLRFOPTION_REG
BANKSELHW_TIME
MOVLWHW_TIMECT3
MOVWFHW_TIME
MOVLWHW_TIMECT0
MOVWFTMR0
BANKSELINTCON
BSFINTCON,T0IE
BSFINTCON,GIE
INT;中断
movwfW_TEMP
movfSTATUS,0
bcfSTATUS,RP0;workinginbank0
movwfSTATUS_TEMP
MOVLWHW_TIMECT0
MOVWFTMR0;重装定时常数
BCFINTCON,T0IF;清除中断溢出标志位(T0IF)
;----------------------------------------------------------------------
DECFSZHW_TIME,1;为零,间跳,定时时间到
GOTOHW_LEAVE1
MOVLWHW_TIMECT1;重装时间常数
MOVWFHW_TIME
BSFHW_Sign,1
HW_LEAVE1
BANKSELSTATUS_TEMP
MOVFSTATUS_TEMP,0
MOVWFSTATUS
MOVFW_TEMP
RETFIE
PIC中断汇编例 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)