资源预览内容
第1页 / 共32页
第2页 / 共32页
第3页 / 共32页
第4页 / 共32页
第5页 / 共32页
第6页 / 共32页
第7页 / 共32页
第8页 / 共32页
第9页 / 共32页
第10页 / 共32页
第11页 / 共32页
第12页 / 共32页
第13页 / 共32页
第14页 / 共32页
第15页 / 共32页
第16页 / 共32页
第17页 / 共32页
第18页 / 共32页
第19页 / 共32页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
点击查看更多>>
资源描述
,按一下以編輯母片標題樣式,按一下以編輯母片,第二層,第三層,第四層,第五層,单片机应用技术项目教程(C语言版),计算机科学系,项目五 定时-计数器综合应用,按一下以編輯母片標題樣式,按一下以編輯母片,第二層,第三層,第四層,第五層,陳慶逸、林柏辰編著-文魁資訊,ARM嵌入式系统,*,项目五 定时,-,计数器综合应用,教学目的,了解定时器,/,计数器的结构与工作原理。,掌握定时器,/,计数器的四种工作方式的特点及应用。,掌握定时器,/,计数器的初始化。,掌握定时器,/,计数器与中断综合应用的设计方法。,工作模块,12 生产线自动打包系统,如图所示,在一个工业生产线上,零件通过一个装有光电传感器的传输带传送,每当零件通过传感器时,传感器向单片机发出一,个脉冲信号,,每通过,100,个,零件,单片机,发出控制信号,,生产线自动将,100,个零件打,包。,生产线自动打包,控制电路,用,LED,模拟打包机;,用按钮模拟零件通过一个装有光电传感器的传输带传送,产生一个脉冲信号,向单片机发出一个计数脉冲信号。,生产线自动打包,控制程序,利用,T0,的方式,2,、计数功能,每计满,100,个外部脉冲,从,P1.0,输出一个低电平脉冲信号(宽度约为,0.1ms,)。,生产线自动打包系统程序,定时,/,计数器结构,内设,2,个,16,位可编程定时,/,计数器,T0,T1,具有计数方式和定时方式,4,种工作模式,定时器,/,计数器的原理,16,位的定时器,/,计数器实质上是一个,加,1,计数器,,可实现,定时和计数两种功能,,其功能由软件控制和切换。,在定时器,/,计数器开始工作之前,,CPU,必须将一些命令,(,称为控制字,),写入定时器,/,计数器,(,即初始化,),。,初始化,工作方式控制字写入定时器方式寄存器,(TMOD),;,工作状态控制字,(,或相关位,),写入定时器控制寄存器,(TCON),;,赋定时,/,计数初值给,TH0(TH1),和,TL0(TL1),。,定时功能,每过一个机器周期,计数器加,1,,直至计满溢出,,即对机器周期进行计数,。,定时器的定时时间与系统的时钟频率有关。因一个机器周期等于,12,个时钟周期,所以,计数频率应为系统时钟频率的十二分之一(即机器周期),。,如晶振频率为,12MHz,,则机器周期为,1,s,。,通过改变定时器的定时,初值,,并适当选择定时器的长度,(8,位、,13,位或,16,位,),,可以,调整定时时间,。,计数功能,通过外部计数输入引脚,T0(P3.4),和,T1(P3.5),对外部脉冲信号计数,,外部脉冲信号的,下降沿,触发计数。,计数器在每个机器周期的,S5P2,期间采样引脚输入电平,若一个机器周期,S5P2,期间采样值为,1,,下一个机器周期,S5P2,期间采样值为,0,,则计数器加,1,,再下一个机器周期,S3P1,期间,新的计数值装入计数器。,检测一个由,1,至,0,的跳变需要两个机器周期,外部信号的最高计数频率为时钟频率的二十四分之一。,若晶振频率为,12MHz,,则最高计数频率为,0.5MHz,。,为了确保给定电平在变化前至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需,在一个机器周期以上。,定时器,/,计数器的应用,定时与延时控制方面,产生定时中断信号,,以设计出各种不同频率的信号源;,产生定时扫描信号,,对键盘进行扫描以获得控制信号,对显示器进行扫描以不间断地显示数据。,测量外部脉冲方面,对外部脉冲信号进行计数可测量脉冲信号的宽度、周期,也可实现自动计数。,监控系统工作方面,对系统进行定时扫描,当系统工作异常时,使系统自动复位,重新启动以恢复正常工作。,定时器方式寄存器,TMOD,TMOD,的作用是设置,T0,、,T1,的工作方式。,TMOD,的格式:,GATE,:门控位。,GATE=0,:软件启动定时器,用指令使,TCON,中的,TR1(TR0),置,1,即可启动定时器,1(,定时器,0),。,GATE=1,:软件和硬件共同启动定时器,用指令使,TCON,中的,TR1(TR0),置,1,时,,只有外部中断,INT0(INT1),引脚输入高电平时,,才能启动定时器,1(,定时器,0),。,定时器方式寄存器,TMOD,C/T,:功能选择位。,C/T=0,时,以定时器方式工作。,C/T=1,时,以计数器方式工作。,M1,、,M0,:方式选择位。,定时器工作方式选择位定义,M1 M0,工作方式,功能描述,0 0,方式,0,13,位计数器,0 1,方式,1,16,位计数器,1 0,方式,2,自动重装初值,8,位计数器,1 1,方式,3,定时器,0,:分为两个独立的,8,位计数器,定时器,1,:无中断的计数器,定时器控制寄存器,TCON,TCON,的作用是控制定时器的启动与停止,并保存,T0,、,T1,的溢出和中断标志。,TCON,的格式,:,TF1(TCON.7),:定时器,1,溢出标志位。,当定时器,1,计满溢出时,由硬件自动使,TF1,置,1,,并申请中断。对该标志位有两种处理方法:,以中断方式工作,,即,TF1,置,1,并申请中断,响应中断后,执行中断服务程序,并由硬件自动使,TF1,清,0,;,以查询方式工作,,即通过查询该位是否为,1,来判断是否溢出,,TF1,置,1,后必须用软件使,TF1,清,0,。,定时器控制寄存器,TCON,TR1(TCON.6),:定时器,1,启停控制位。,GATE=0,时,用软件使,TR1,置,1,即启动定时器,1,,若用软件使,TR1,清,0,则停止定时器,1,。,GATE=1,时,用软件使,TR1,置,1,的同时外部中断,INT1,的引脚输入高电平才能启动定时器,1,。,TF0(TCON.5),:定时器,0,溢出标志位。,其功能同,TF1,。,TR0(TCON.4),:定时器,0,启停控制位。,其功能同,TR1,。,定时器,/,计数器,0,方式,0,逻辑结构,方式,0,构成一个,13,位定时,/,计数器,,,定时器,1,的结构和操作,与定时器,0,完全相同,。,当门控位,GATE=0,时,或门输出始终为,1,,与门被打开,由,TR0,控制定时器,/,计数器的启动和停止。,定时器,/,计数器,0,方式,0,工作过程,软件使,TR0,置,1,,接通控制开关,,启动定时器,0,,,13,位加,1,计数器在,定时初值,或,计数初值,的基础上,进行加,1,计数,;,软件使,TR0,清,0,,关断控制开关,,停止定时器,0,,加,1,计数器停止计数;,计数溢出时,,,13,位加,1,计数器为,0,,,TF0,由硬件自动置,1,,并申请中断,,同时,13,位加,1,计数器继续从,0,开始计数。,方式,0,应用示例,在,P1.0,输出周期为,1 ms(,频率,1kHz),的方波,采用定时器,1,方式,0,设计程序,晶振频率为,12MHz,。,使,P1.0,每隔,500,s,取反一次即可得到周期,1 ms,的方波,,T1,的,定时时间为,T=500,s,;,用定时器,1,方式,0,,,TMOD,高,4,位中的,M1M0,应取,00,;,设定为软件启动定时器,,GATE,取,0,;,用定时功能,,C/T,取,0,。,TMOD,为,00H,。,晶振频率为,12MHz,,,T,机,=,12/fosc=12/(12,10,6,)=,1,s,定时初值,X=,2,13,-T/T,机,=2,13,-500/1=8192-500=7692,=,因,TL1,的高,3,位未用,对计算出的定时初值,X,要进行修正,即在低,5,位前插入,3,个,0,,,修正后的定时初值为:,X=,11110000,000,01100B=,F00CH,工作模块,13,霓虹灯模拟控制系统,由,P1,口输出控制,8,个,LED,(模拟霓虹灯)的亮灭。,要求实现:,首先从灯,D1,开始,,8,个灯循环点亮一次,即,D1,点亮,1s,后熄灭,,D2,点亮,1s,后熄灭,,,,D8,点亮,1s,后熄灭;,然后间隔闪烁,3,次,即,D1,、,D3,、,D5,、,D7,点亮,1s,后熄灭,,D2,、,D4,、,D6,、,D8,点亮,1s,后熄灭,重复,3,次;,循环上述过程(,晶振频率为,6MHz,)。,霓虹灯模拟控制电路,电路同项目二,LED,循环点亮一样,霓虹灯模拟控制程序,编程分析(整个控制过程分,2,个阶段):,循环点亮阶段输出控制码,8,次,初始控制码为,7FH,(,D1,点亮),下一个控制码可由上一个控制码,循环右移,得到(即,8,个控制码分别为:,7FH,、,0BFH,、,0DFH,、,0EFH,、,0F7H,、,0FBH,、,0FDH,、,0FEH,),;,间隔闪烁阶段输出控制码,6,次,初始控制码为,0AAH,,下一个控制码可由上一个控制码,取反,得到(即分别为:,0AAH,、,55H,交替,3,次);,任意,2,个控制码输出间隔为,1s,,因此可以利用,T0,(或,T1,)定时功能,每,1s,后,根据,阶段标志,判断输出下一个控制码。,霓虹灯模拟控制程序,采用,T1,定时器,在方式,1,(晶振频率为,6MHz,)下,,T1,定时最大为,131.072ms,,为了定时,1s,,采用硬件定时加软件计数方式,即设置,T1,定时,100ms,,软件计数,10,次。,分配如下:,i10,:定时的软件计数器,初值为,10,;,F0,:控制阶段标志位,,F0=0,表示循环点亮阶段,,F0=1,表示间隔闪烁阶段;,i8,、,i6,:分别为,2,个控制阶段输出控制码的计数器,初值为,8,和,6,;,mod1,、,mod2,:分别为,2,个阶段的控制码寄存器初值为,0 x01,和,0 xAA,。,霓虹灯模拟控制程序,定时器,/,计数器方式,1,定时器,/,计数器是一个由,TH0,中的,8,位和,TL0,中的,8,位组成的,16,位加,1,计数器,。,方式,1,与方式,0,基本相似,最大的区别是方式,1,的加,1,计数器位数是,16,位。,定时器,/,计数器,0,方式,1,逻辑结构如图所示,定时器,/,计数器方式,2,定时器,/,计数器是,一个能自动装入初值的,8,位加,1,计数器,,,TH0,中的,8,位用于存放定时初值或计数初值,,TL0,中的,8,位用于加,1,计数器。,加,1,计数器溢出后,硬件使,TF0,自动置,1,,同时自动将,TH0,中存放的定时初值或计数初值再装入,TL0,,继续计数。,定时器,/,计数器,0,方式,2,逻辑结构如图所示,T0,方式,3,逻辑结构,T0,分为两个独立的,8,位加,1,计数器,TH0,和,TL0,。,TL0,既可用于定时,也能用于计数;,TH0,只能用于定时。,T0,方式,3,的结构特点,加,1,计数器,TL0,占用了,T0,除,TH0,外的全部资源,,原,T0,的控制位和信号引脚的控制功能与方式,0,、方式,1,相同;,与方式,2,相比,只是,不能自动将定时初值或计数初值再装入,TL0,,而必须用程序来完成;,加,1,计数器,TH0,只能用于简单的内部定时功能,它,占用了原,T1,的控制位,TR1,和,TF1,,同时占用了,T1,中断源。,T0,方式,3,下,T1,的逻辑结构,振荡器,12,分频,T,L1,(8,位,),T,H1,(8,位,),C/,T,=0,C/,T,=1,T1(P3.5),(c)T1,方式,2,串行口,重新装入,振荡器,12,分频,T,H1,(8,位,),T,L1,(8,位,),C/,T,=0,C/,T,=1,T1(P3.5),(b)T1,方式,1,串行口,振荡器,12,分频,T,H1,(8,位,),T,L1,(5,位,),C/,T,=0,C/,T,=1,T1(P3.5),(a)T1,方式,0,串行口,T0,方式,3,下,T1,的结构特点,T1,不能工作在方式,3,下,因为在,T0,工作在方式,3,下时,,T1,的控制位,TR1,、,TF1,和中断源被,T0,占用,;,T1,可工作在方式,0,、方式,1,、方式,2,下,
点击显示更多内容>>

最新DOC

最新PPT

最新RAR

收藏 下载该资源
网站客服QQ:3392350380
装配图网版权所有
苏ICP备12009002号-6