1 / 15

定时器输入中断捕捉实验

实验目的 实验器材 硬件接线. 软件功能 程序清单 备注说明. 定时器输入中断捕捉实验. <<<. 实验目的 :. 熟悉定时器接口模块的使用. 实验器材 :. 1.SD-1 型在线编程实验仪 2. 导线若干. MOTOROLA GP32 MCU. PTA1. VCC. 硬件接线 :. 软件功能 :. ① 系统初始化: CONFIG2 、 1 、 PTCL 、堆栈 ② 以输入捕捉中断方式 , 取反指示灯 PTA1 , 使其闪动. 程序说明 寄存器地址定义 内存变量定义 主程序 系统初始化 主循环

nita
Download Presentation

定时器输入中断捕捉实验

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 实验目的 实验器材 硬件接线 软件功能 程序清单 备注说明 定时器输入中断捕捉实验 <<<

  2. 实验目的: 熟悉定时器接口模块的使用

  3. 实验器材: 1.SD-1型在线编程实验仪 2.导线若干

  4. MOTOROLA GP32 MCU PTA1 VCC 硬件接线:

  5. 软件功能: ① 系统初始化:CONFIG2、1、PTCL、堆栈 ② 以输入捕捉中断方式,取反指示灯PTA1, 使其闪动

  6. 程序说明 寄存器地址定义 内存变量定义 主程序 系统初始化 主循环 定时器1通道0输入捕捉中断子程序 向量区 程序清单:

  7. *-----------------程序说明-----------------------------------------**-----------------程序说明-----------------------------------------* *文件名:Tim1Ch0I.ASM--定时器接口模块编程实验2-输入捕捉 *功能: • ① 系统初始化:CONFIG2、1、PTCL、堆栈 • ② 以输入捕捉中断方式,取反指示灯PTA1,使其闪动 说明:本例是将定时器1通道0(21脚)设为“跳变沿捕捉”(即电平发生变化时产生中断), * 验证方法是将21脚不断接高电平、低电平,此时指示灯PTA1状态跟随改变 *

  8. *-------------寄存器地址------------------------------ 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 ;程序开始地址(因芯片不同可以更改)

  9. *---------内存变量----------------------------------------- org FlashStartAddr MainStart: SEI ;禁止所有中断 LDHX #$023F ;堆栈初始化, ;放入GP32的RAM最高端 TXS

  10. ;-------系统初始化----------------------------- 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

  11. ;定时器1通道0初始化 LDA #%00110000 ;不允许溢出中断、不启动计数、 ;分频因子 =1 STA T1SC ;定时器1状态和控制寄存器 LDA #%01001100 ;设为输入捕捉模式,允许输入捕捉中断, ;跳变沿捕捉(即电平发生变化时产生中断) STA T1SC0 ;定时器1通道0状态和控制寄存器 BCLR 5,T1SC ;允许定时器1计数寄存器计数 CLI ;开放中断 --------------------初始化结束-------------------

  12. *========主循环开始处======================== MainLoop: NOP ;仅为实验例程,无其它事务处理 JMP MainLoop ;转总循环

  13. *----------定时器1通道0输入捕捉中断子程序--------*----------定时器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 寄存器 RTI

  14. PTA1SET: BSET 1,PTA PTA1CLR: ;LDA T1SC ;清除定时器溢出标志位 BCLR 7,T1SC RTI ;中断返回

  15. *----------------------------向量区--------------------------------*----------------------------向量区-------------------------------- ORG $FFF6 ;定时器1通道0输入捕捉中断向量 DW Timer1CH0In ORG $FFFE ;复位向量 DW MainStart

More Related