《最新定时器输入中断捕捉实验PPT课件》由会员分享,可在线阅读,更多相关《最新定时器输入中断捕捉实验PPT课件(16页珍藏版)》请在金锄头文库上搜索。
1、定时器输入中断捕捉实验定时器输入中断捕捉实验实验目的实验目的:熟悉定时器接口模块的使用熟悉定时器接口模块的使用2*-*-内存变量内存变量内存变量内存变量-org FlashStartAddrorg FlashStartAddrorg FlashStartAddrorg FlashStartAddrMainStart:MainStart:MainStart:MainStart: SEI ; SEI ; SEI ; SEI ;禁止所有中断禁止所有中断禁止所有中断禁止所有中断 LDHX #$023F ; LDHX #$023F ; LDHX #$023F ; LDHX #$023F ;堆栈初始化,堆
2、栈初始化,堆栈初始化,堆栈初始化, ; ; ; ;放入放入放入放入GP32GP32GP32GP32的的的的RAMRAMRAMRAM最高端最高端最高端最高端 TXS TXS TXS TXS9 ;- ;- ;- ;-系统初始化系统初始化系统初始化系统初始化- - - - MOV #%00000001,$001E ; MOV #%00000001,$001E ; MOV #%00000001,$001E ; MOV #%00000001,$001E ;初始化初始化初始化初始化CONFIG2CONFIG2CONFIG2CONFIG2 MOV #%00111101,$001F ; MOV #%00111
3、101,$001F ; MOV #%00111101,$001F ; MOV #%00111101,$001F ;初始化初始化初始化初始化CONFIG1 CONFIG1 CONFIG1 CONFIG1 MOV #%00110001,$0036 ; MOV #%00110001,$0036 ; MOV #%00110001,$0036 ; MOV #%00110001,$0036 ;初始化初始化初始化初始化PTCLPTCLPTCLPTCL BSET 7,$0037 BSET 7,$0037 BSET 7,$0037 BSET 7,$0037 MOV #$01,$0038 MOV #$01,$00
4、38 MOV #$01,$0038 MOV #$01,$0038 MOV #$2C,$0039 MOV #$2C,$0039 MOV #$2C,$0039 MOV #$2C,$0039 MOV #$80,$003A MOV #$80,$003A MOV #$80,$003A MOV #$80,$003A BSET 1,DDRA BSET 1,DDRA BSET 1,DDRA BSET 1,DDRA 定义定义定义定义PTA.1PTA.1PTA.1PTA.1为输出(指示灯)为输出(指示灯)为输出(指示灯)为输出(指示灯) BSET 1,PTA BSET 1,PTA BSET 1,PTA BSET
5、1,PTA 10 ; ; ; ;定时器定时器定时器定时器1 1 1 1通道通道通道通道0 0 0 0初始化初始化初始化初始化 LDA #%00110000 ; LDA #%00110000 ; LDA #%00110000 ; LDA #%00110000 ;不允许溢出中断、不启动计数、不允许溢出中断、不启动计数、不允许溢出中断、不启动计数、不允许溢出中断、不启动计数、 ; ; ; ;分频因子分频因子分频因子分频因子 =1 =1 =1 =1 STA T1SC ; STA T1SC ; STA T1SC ; STA T1SC ;定时器定时器定时器定时器1 1 1 1状态和控制寄存器状态和控制寄存
6、器状态和控制寄存器状态和控制寄存器 LDA #%01001100 ; LDA #%01001100 ; LDA #%01001100 ; LDA #%01001100 ;设为输入捕捉模式,允许输入捕捉中断设为输入捕捉模式,允许输入捕捉中断设为输入捕捉模式,允许输入捕捉中断设为输入捕捉模式,允许输入捕捉中断, , , , ; ; ; ;跳变沿捕捉跳变沿捕捉跳变沿捕捉跳变沿捕捉( ( ( (即电平发生变化时产生中断即电平发生变化时产生中断即电平发生变化时产生中断即电平发生变化时产生中断) ) ) ) STA T1SC0 ; STA T1SC0 ; STA T1SC0 ; STA T1SC0 ;定时
7、器定时器定时器定时器1 1 1 1通道通道通道通道0 0 0 0状态和控制寄存器状态和控制寄存器状态和控制寄存器状态和控制寄存器 BCLR 5,T1SC ; BCLR 5,T1SC ; BCLR 5,T1SC ; BCLR 5,T1SC ;允许定时器允许定时器允许定时器允许定时器1 1 1 1计数寄存器计数计数寄存器计数计数寄存器计数计数寄存器计数 CLI ; CLI ; CLI ; CLI ;开放中断开放中断开放中断开放中断 -初始化结束初始化结束初始化结束初始化结束-11*=*=主循环开始处主循环开始处主循环开始处主循环开始处=MainLoop: MainLoop: NOP NOP ; ;
8、仅为实验例程,无其它事务处理仅为实验例程,无其它事务处理仅为实验例程,无其它事务处理仅为实验例程,无其它事务处理 JMP MainLoop JMP MainLoop ; ;转总循环转总循环转总循环转总循环12*-*-定时器定时器定时器定时器1 1通道通道通道通道0 0输入捕捉中断子程序输入捕捉中断子程序输入捕捉中断子程序输入捕捉中断子程序-Timer1CH0In:Timer1CH0In:Timer1CH0In:Timer1CH0In: PSHH ; PSHH ; PSHH ; PSHH ;保护保护保护保护 h h h h 寄存器寄存器寄存器寄存器 ; ; ; ; ; ; ; ;至此至此至此至此
9、, , , ,可读取计数器的值,可在此处添加用户的程序可读取计数器的值,可在此处添加用户的程序可读取计数器的值,可在此处添加用户的程序可读取计数器的值,可在此处添加用户的程序 ; ; ; ;本程序仅为实验例程,用指示等状态改变,说明发生了中断本程序仅为实验例程,用指示等状态改变,说明发生了中断本程序仅为实验例程,用指示等状态改变,说明发生了中断本程序仅为实验例程,用指示等状态改变,说明发生了中断 BRCLR 1,PTA,PTA1SET ; BRCLR 1,PTA,PTA1SET ; BRCLR 1,PTA,PTA1SET ; BRCLR 1,PTA,PTA1SET ;指示灯状态变换指示灯状态变
10、换指示灯状态变换指示灯状态变换 BCLR 1,PTA BCLR 1,PTA BCLR 1,PTA BCLR 1,PTA BRA PTA1CLR BRA PTA1CLR BRA PTA1CLR BRA PTA1CLRPTA1SET:PTA1SET:PTA1SET:PTA1SET: BSET 1,PTA BSET 1,PTA BSET 1,PTA BSET 1,PTAPTA1CLR:PTA1CLR:PTA1CLR:PTA1CLR: ; ; ; ; LDA T1SC0 ; LDA T1SC0 ; LDA T1SC0 ; LDA T1SC0 ;清除定时器清除定时器清除定时器清除定时器1 1 1 1通道
11、通道通道通道0 0 0 0输入捕捉中断标志位输入捕捉中断标志位输入捕捉中断标志位输入捕捉中断标志位 BCLR 7,T1SC0 BCLR 7,T1SC0 BCLR 7,T1SC0 BCLR 7,T1SC0 ; ; ; ; PULH ; PULH ; PULH ; PULH ;释放释放释放释放 h h h h 寄存器寄存器寄存器寄存器 RTI RTI RTI RTI13PTA1SET:PTA1SET: BSET 1,PTA BSET 1,PTA PTA1CLR:PTA1CLR: ;LDA T1SC ;LDA T1SC ; ;清除定时器溢出标志位清除定时器溢出标志位清除定时器溢出标志位清除定时器溢出
12、标志位 BCLR 7,T1SC BCLR 7,T1SC RTI RTI ; ;中断返回中断返回中断返回中断返回14*-*-向量区向量区向量区向量区- ORG $FFF6 ; ORG $FFF6 ; ORG $FFF6 ; ORG $FFF6 ;定时器定时器定时器定时器1 1 1 1通道通道通道通道0 0 0 0输入捕捉中断向量输入捕捉中断向量输入捕捉中断向量输入捕捉中断向量 DW Timer1CH0In DW Timer1CH0In DW Timer1CH0In DW Timer1CH0In ORG $FFFE ; ORG $FFFE ; 复位向量复位向量复位向量复位向量 DW MainStart DW MainStart 15