欢迎来到天天文库
浏览记录
ID:50337137
大小:246.50 KB
页数:19页
时间:2020-03-08
《单片机原理、应用与Proteus仿真 教学课件 作者 兰建军 第6章 定时计数器.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、定时和计数在各种场合应用普遍,常用方法有法:硬件定时定时时间调整较大时,需要重新设计电路。软件定时CPU效率不高,不适合应用于较大延时场合。可编程的定时器/计数器法综合硬件定时和软件定时的优点,控制简单。6.1定时/计数器工作原理及其控制8051内部集成了2个16位可编程定时/计数器,称为定时/计数器0(T0)和定时/计数器1(T1)。2、功能及其控制(1)定时/计数器功能定时功能对8051内部时钟信号的12分频信号进行计数,计数信号的周期就是一个机器周期,根据计数的次数就可以得到计数时间,从而实现定时功能。计数功能对外部输入的脉冲信号进
2、行计数,计数频率取决于外部信号的频率,外部脉冲通过单片机的T0(T1)引脚输入。(2)定时/计数器的控制方式控制字TMOD字节地址89HGATE:门控位,为1时要求INTi引脚高电平才计数C/T:1计数;0定时M1M0:00方式0;01方式1;10方式2;11方式3GATEM0M1GATEM0M1T1T0TF1TR0TF0IE1IT0IE0TR1IT1定时器控制寄存器TCON88H可位寻址对T1控制对T0控制与外部中断相关,已经介绍TRx置1,则启动定时器工作,否则停止工作;TFx置1,定时器x溢出,否则未溢出。6.2定时/计数器工作方式
3、及其设置1、工作方式及其特点方式013位计数器(无自动重装入)定时范围:(2-16384)μs初值为0时,16384计数范围:1~8192方式116位计数器(无自动重装入)定时范围:(2-131072)μs计数范围:1~65536方式2、38位计数器(其中方式2具有自动重转入功能)定时范围:(2~512)μs计数范围:1~2562、定时/计数器配置及初始化(1)定时/计数器配置工作模式和方式的确定确定采用定时还是计数模式初值计算???初值???定时模式公式计数模式公式溢出判断方式中断方式还是查询方式(2)定时/计数器初始化定时/计数器的初
4、始化程序可按照上述三个步骤进行,溢出方式设置则需要根据实际需要具体编写,如采用中断方式,还需设置中断入口地址等。例题:假设8051单片机外接晶振频率为12MHz,请用单片机T0以方式0的工作方式实现5ms的定时,试计算初值并给出初始化子程序。例题:假设8051单片机外接晶振频率为6MHz,T0工作在方式1下实现定时100mS后申请中断,T1工作在方式2下计数100次后申请中断,计算初值并编写相应程序。MOVTMOD,#61H;设置T0和T1的工作方式MOVTH0,#3CH;T0赋初值MOVTL0,#0B0HMOVTL1,#9CH;T1赋初
5、值SETBET0;开放相关中断SETBET1SETBEA…..;设置其他程序3、扩大定时时间方法如要实现10S的定时。要让单片机产生10秒钟的定时信号,由于6MHz的频率T0溢出一次的最大时间约为131mS左右。因此可让T0每次定时时间为100mS,连续溢出100次,时间就能到10S。6.3定时/计数器实现软件“看门狗”原理??“看门狗”(Watchdog,简称WDT)定时器??基本原理:所谓的“看门狗”技术就是利用一个WDT计数器不断计数来监测程序的运行,当WDT计数器运行后,应当定期的把WDT计数器清0(俗称喂狗),否则计数器溢出后将
6、在单片机复位引脚上产生复位信号,强制复位单片机。例题:假设单片机外接晶振频率为6MHz,程序中T0的溢出时间设置为100mS。因此正常的“喂狗”时间不能超过100mS,否则将导致单片机复位。分析:定时/计数器配置,中断方式;中断子程序中实现复位功能防止溢出,必须定时喂狗。DS0:MOVA,#00H;连续将两个00H入栈,PUSHACCPUSHACCRETI;执行RETI时,PC=0000H,从头开始执行程序WDFOOD:CLRTR0MOVTH0,#3CH;重新赋计数器初值MOVTL0,#0B0HSETBTR0RETvoidSoft_Rst
7、(void)//软件复位子程序{((void(code*)(void))0x0000)();//令8051复位}voidWDT_RST()interrupt1//利用T0模拟看门狗{Soft_Rst();//软件复位8051单片机}voidWDT_FOOD(void)//喂狗子程序{TR0=0;TH0=0x3C;//TH0赋初值TL0=0xB0;//TL0赋初值TR0=1;//启动T0计数}6.4单片机LED亮度控制系统设计实例1、PWM调制技术基本知识定频调宽、定宽调频、调频调宽2、控制要求:利用8051单片机定时/计数器产生PWM信号
8、,实现LED的亮度控制。可以通过1个按键调整亮度,每按一次键亮度增加10%,到最大值时重新回到10%占空比,周而复始,同时要求LED不出现闪烁现象。程序设计上,可以采用定频调宽的方式,利用80
此文档下载收益归作者所有