null定时器输入中断捕捉实验定时器输入中断捕捉实验实验目的
实验器材
硬件接线软件功能
程序清单
备注说明<<<
实验目的:实验目的:熟悉定时器接口模块的使用实验器材:实验器材:1.SD-1型在线编程实验仪
2.导线若干硬件接线:硬件接线:软件功能:软件功能:① 系统初始化:CONFIG2、1、PTCL、堆栈
② 以输入捕捉中断方式,取反指示灯PTA1,
使其闪动程序清单:程序清单:程序说明
寄存器地址定义
内存变量定义
主程序
系统初始化
主循环
定时器1通道0输入捕捉中断子程序
向量区null*-----------------程序说明-----------------------------------------*
*文件名:Tim1Ch0I.ASM--定时器接口模块编程实验2-输入捕捉
*功能:
① 系统初始化:CONFIG2、1、PTCL、堆栈
② 以输入捕捉中断方式,取反指示灯PTA1,使其闪动 说明:本例是将定时器1通道0(21脚)设为“跳变沿捕捉”(即电平发生变化时产生中断),
* 验证方法是将21脚不断接高电平、低电平,此时指示灯PTA1状态跟随改变 * null*-------------寄存器地址------------------------------
DDRA EQU $0004 ;A口数据方向寄存器
PTA EQU $0000 ;A口数据寄存器
T1SC EQU $0020 ;定时器1状态和控制寄存器
T1CNTH EQU $0021 ;定时器1计数寄存器(高位)
T1CNTL EQU $0022 ;定时器1计数寄存器(低位)
T1MODH EQU $0023 ;定时器1模数寄存器(高位)
T1MODL EQU $0024 ;定时器1模数寄存器(低位)
T1SC0 EQU $0025 ;定时器1通道0状态和控制寄存器
T1CH0H EQU $0026 ;定时器1通道0的通道寄存器(高位)
T1CH0L EQU $0027 ;定时器1通道0的通道寄存器(低位)
RAMstartAddr EQU $0040 ;RAM的起始地址(因芯片不同可以更改)
FlashStartAddr EQU $8000 ;程序开始地址(因芯片不同可以更改)null*---------内存变量----------------------------------------- org FlashStartAddr
MainStart:
SEI ;禁止所有中断
LDHX #$023F ;堆栈初始化,
;放入GP32的RAM最高端
TXSnull ;-------系统初始化-----------------------------
MOV #%00000001,$001E ;初始化CONFIG2
MOV #%00111101,$001F ;初始化CONFIG1
MOV #%00110001,$0036 ;初始化PTCL
BSET 7,$0037
MOV #$01,$0038
MOV #$2C,$0039
MOV #$80,$003A
BSET 1,DDRA 定义PTA.1为输出(指示灯)
BSET 1,PTA null ;定时器1通道0初始化
LDA #%00110000 ;不允许溢出中断、不启动计数、
;分频因子 =1
STA T1SC ;定时器1状态和控制寄存器
LDA #%01001100 ;设为输入捕捉模式,允许输入捕捉中断,
;跳变沿捕捉(即电平发生变化时产生中断)
STA T1SC0 ;定时器1通道0状态和控制寄存器
BCLR 5,T1SC ;允许定时器1计数寄存器计数
CLI ;开放中断
--------------------初始化结束-------------------null*========主循环开始处========================
MainLoop:
NOP ;仅为实验例程,无其它事务处理
JMP MainLoop ;转总循环
null*----------定时器1通道0输入捕捉中断子程序--------
Timer1CH0In:
PSHH ;保护 h 寄存器
;
;至此,可读取计数器的值,可在此处添加用户的程序
;本程序仅为实验例程,用指示等状态改变,说明发生了中断
BRCLR 1,PTA,PTA1SET ;指示灯状态变换
BCLR 1,PTA
BRA PTA1CLR
PTA1SET:
BSET 1,PTA
PTA1CLR:
;
LDA T1SC0 ;清除定时器1通道0输入捕捉中断标志位
BCLR 7,T1SC0
;
PULH ;释放 h 寄存器
RTInullPTA1SET:
BSET 1,PTA
PTA1CLR:
;LDA T1SC ;清除定时器溢出标志位
BCLR 7,T1SC
RTI ;中断返回null*----------------------------向量区--------------------------------
ORG $FFF6 ;定时器1通道0输入捕捉中断向量
DW Timer1CH0In
ORG $FFFE ; 复位向量
DW MainStart
本文档为【定时器输入中断捕捉实验】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。