周期中断定时器PIT.ppt

上传人:本田雅阁 文档编号:3397771 上传时间:2019-08-21 格式:PPT 页数:15 大小:814.54KB
返回 下载 相关 举报
周期中断定时器PIT.ppt_第1页
第1页 / 共15页
周期中断定时器PIT.ppt_第2页
第2页 / 共15页
周期中断定时器PIT.ppt_第3页
第3页 / 共15页
周期中断定时器PIT.ppt_第4页
第4页 / 共15页
周期中断定时器PIT.ppt_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《周期中断定时器PIT.ppt》由会员分享,可在线阅读,更多相关《周期中断定时器PIT.ppt(15页珍藏版)》请在三一文库上搜索。

1、周期中断定时器(PIT),定时器简介 周期中断定时器简介(PIT) 周期中断定时器寄存器 PIT模块编程范例 时钟产生器模块,定时器简介 为什么使用定时器,时间延迟的产生和测量 外部信号周期和脉冲宽度的测量 事件计数器 事件发生时间比较器 波形发生器 周期性的中断产生 定时器实际上是计数器,它通过累计已知时间间隔的个数来计算时间。被累计的时间间隔若是系统时钟,计数器就变成了定时器。,定时器简介 怎样获得定时器,程序设计软件定时器 void delay(void) unsigned int i,j; for(i=0;i10;i+) for(j=0;j10000;) j+; 微处理器常常内置定时器

2、(硬件定时器) MCS51单片机内有二个16位定时器、计数器 MC9S12XS内置 RTI ( Real Time Interrupt) ECT enhanced capture timer OC Output comparer PWM Pulse width modulationPeriod and pulse width measurement 四个24位PIT定时器,定时器简介 怎样获得定时器,外围扩展定时器,8253内部有三个计数器,分别成为计数器0、计数器1和计数器2,他们的机构完全相同。每个计数器的输入和输出都决定于设置在控制寄存器中的控制字,互相之间工作完全独立。每个计数器通过三

3、个引脚和外部联系,一个为时钟输入端CLK,一个为门控信号输入端GATE,另一个为输出端OUT。每个计数器内部有一个8位的控制寄存器,还有一个16位的计数初值寄存器CR、一个计数执行部件CE和一个输出锁存器OL。,定时器简介 怎样获得定时器,外围扩展定时器,DS12887把时钟芯片所需的晶振和外部锂电池相关电路集于芯片内部,可广泛用于各种需要较高精度的实时时钟场合中。其主要功能如下: (1)内含一个锂电池,断电情况运行十年以上不丢失数据。 (2)计秒、分、时、天、星期、日、月、年,并有闰年补偿功能。 (3)二进制数码或BCD码表示时间、日历和定闹。 (4)12小时或24小时制,12小时时钟模式带

4、有PWM和AM指导,有夏令时功能。 (5)MOTOROLA5和INATAEL总线时序选择。 (6)有128个RAM单元与软件音响器,其中14个作为字节时钟和控制寄存器,114字节为通用RAM,所有ARAM单元数据都具有掉电保护功能。 (7)可编程方波信号输出。 (8)中断信号输出(IRQ)可以产生500ms一次到每122s一次的中断,定时器简介 定时器的主要性能参数,位数 加1或是减1 时钟 重装载,周期中断定时器简介(PIT),4路24位定时器,每路可以分别 打开或关闭 1224个总线 周期定时 产生中断信号,周期中断定时器寄存器,1、PIT控制寄存器及强制载入微定时器寄存器 PITCFLM

5、T,PITE:PIT模块使能位 0 禁止PIT 1 使能PIT PITSWAIT:等待模式PIT停止控制位 0 在等待模式下PIT正常运行 1 在等待模式下PIT时钟产生器停止 PITFRZ:冻结模式PIT计数器冻结控制位 0 在冻结模式下PIT正常运行 1 在冻结模式下PIT计数器失去作用 PFLMT10:PIT强制载入微定时器模数值控制位 1 相应的8位微定时器模数值被载入8位微定时器递减计数器中 0 强制载入无效,地址:$0340,周期中断定时器寄存器,2、PIT强制载入定时器寄存器 PITFLT,PFLT30:PIT强制载入定时器模数值控制位 1 相应的16位定时器模数值被载入16位定

6、时器递减计数器中 0 强制载入无效 3、PIT通道使能寄存器 PITCE,PCE30:PIT使能控制位。该寄存器使能PIT四个通道,如果PCE写0,PIT通道将被禁止, PITTF中相应的标志位也将被清除;如果PCE写1,PIT通道使能,16位定时器计数器被载入起始值并开始计数。 1 通道使能 0 通道禁止,地址:$0341,地址:$0342,周期中断定时器寄存器,4、PIT定时器复合寄存器 PITMUX,PMUX30:PTI定时器复合寄存器控制位。该寄存器控制16位定时器与8位微定时器时基0或者时基1连接复合。 0 相应16位定时器与微时基0连接 1 相应16位定时器与微时基1连接 5、PI

7、T中断使能寄存器 PITINTE,PINTE30:PIT定时器溢出中断使能控制位。 0 PIT相应通道溢出中断禁止 1 PIT相应通道溢出中断使能,周期中断定时器寄存器,6、PIT溢出标志寄存器PITTF,PIF30:PIT通道溢出标志位。当16位定时器计数器和相复合的8位微定时器计数器递减到0后, 相应位的标志位被置位。写1后清除标志位,写0无效。 0 PIT相应通道没有发生溢出中断 1 PIT相应通道发生了溢出中断 7、PIT微定时器装载寄存器 PITMTLD0/PITMTLD1,周期中断定时器寄存器,8、PIT定时器装载寄存器 PITLD0/PITLD1/PITLD2/PITLD3,PL

8、D150:同上原理。,周期中断定时器寄存器,9、PIT通道计数器 PITCNT04,PCNT150:该寄存器存放16位递减计数器值。,PIT模块编程范例,void initIOBoutput(void)/IO口初始化,B口为输出 DDRB=0XFF; PORTB=0XFF; void initPIT(void)/定时中断初始化函数 50MS定时中断设置 PITCFLMT_PITE=0; /定时中断通道0关 PIT使能端 PITCE_PCE0=1;/定时器通道0使能 PITMTLD0=240-1;/8位定时器初值设定。240分频,在24MHzBusClock下,为0.1MHz即10us. PIT

9、LD0=PITTIME-1;/16位定时器初值设定。PITTIME*0.01MS PITINTE_PINTE0=1;/定时器中断通道0中断使能 PITCFLMT_PITE=1;/定时器通道0使能 ,初始化模块,PIT模块编程范例,中断服务子程序,void interrupt 66 PIT0(void) vTmpPIT+; if(vTmpPIT=10) PORTB=PORTB;/输出取反 vTmpPIT=0; PITTF_PTF0=1;/清中断标志位 ,void main(void) pllclk(); initIOBoutput(); initPIT(); EnableInterrupts; for(;) /* wait forever */ ,主程序,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1