文档详情

单片机原理及应用-第五章(2讲).ppt

发布:2018-03-04约1.5千字共12页下载文档
文本预览下载声明
§5.4 HSI中断处理 HSI包含了两种中断 一、 HSI.0中断 由HSI.0引脚上的正跳变引发的中断。(相当于一个外部中断) HSI.0引脚上的正跳变引发的中断以及中断处理程序可以参考EXTINT外中断程序处理方式 二、 HSI数据有效中断 这个中断包含有两个中断源:FIFI满(FIFO内存储的数据达到6项)、保持寄存器有数(由于这两个中断源共用一个中断类别,在中断系统设计时,两个中断源在每次任务中只能选择一种,不能同时使用)。 HIS中断的向量地址2004H 通过对IOC1.7的设置决定中断源 三、中断处理程序的编制 1、主程序与中断初始化(对于开放多个HSI引脚的情况) 2、中断服务程序 §5.5 HSI应用举例 例1:采用查询方式计算HSI.0引脚输入脉冲的周期 例题编程思路:1.查询方式:查询保持寄存器有数便读出 2.事件触发方式:每个跳变为一外部触发事件 3.周期:T= 高电平持续时间+低电平持续时间 高电平持续时间=(后沿计数值-前一个前沿计数值)T1min 低电平持续时间=(前沿计数值-前一个后沿计数值)T1min 寄存器设置: HI_TIME equ 30H ;高电平持续时间 LOW_TIME equ 32H ;低电平持续时间 PERIOD equ 34H ;周期值寄存器 HI_EDGE equ 36H ;正跳(前沿)计数值寄存器 LO_EDGE equ 38H ;负跳(后沿)计数值寄存器 例1:采用中断方式计算HSI.0引脚输入脉冲的周期 例题编程思路:1.中断方式:由中断系统查询保持寄存器有数进入中 断服务程序读出事件数据 2.事件触发方式:每个跳变为一外部触发事件 3.周期:T= 高电平持续时间+低电平持续时间 高电平持续时间=(后沿计数值-前一个前沿计数值)T1min 低电平持续时间=(前沿计数值-前一个后沿计数值)T1min 寄存器设置: HI_TIME equ 30H ;高电平持续时间 LOW_TIME equ 32H ;低电平持续时间 PERIOD equ 34H ;周期值寄存器 HI_EDGE equ 36H ;正跳(前沿)计数值寄存器 LO_EDGE equ 38H ;负跳(后沿)计数值寄存器 HSI小结 1.了解HSI的用途 2. HSI的相关专用寄存器的作用 HSI _MODE HSI _STATUS HSI _TIME IOC0.0、2、4、6(HSI引脚接通) IOC1.7(中断源选择) 3.HSI事件的处理(编程) 查询方式 中断方式 无论那种方式,程序中均要区分不同引脚的事件,将事件数据按引脚分别列出,只有对同一引脚上的信号数据进行处理,才能获得正确的结果。 4.HSI计数值与时间的关系 计数值来自定时器T1 周期:T=(N2-N1)T1min 或 T=(N2-N1)T1min /8 (8个正跳变时) 频率:f=1/T 占空比: * *
显示全部
相似文档