单片机原理与应用第5章 定时器及其应用
- 格式:ppt
- 大小:2.15 MB
- 文档页数:46
单片机定时器的原理及应用概述单片机定时器是单片机的一种重要功能模块,它能够实现精确的时间计量和控制,广泛应用于各种自动化设备和工业控制系统中。
本文将详细介绍单片机定时器的原理和应用。
单片机定时器的原理单片机定时器的原理主要基于计数器的工作原理。
计数器是一种能够按照一定规律自动加(或减)1的电子装置。
单片机定时器通常使用定时/计数器模块来实现。
在单片机中,定时器模块通常由一个或多个8位或16位的寄存器组成,用于保存计数值。
定时器模块还包含一组控制寄存器,用于配置定时器的工作模式、计数方式等。
单片机的定时器工作过程如下: 1. 初始化定时器:配置定时器的工作模式、计数方式等参数。
2. 启动定时器:将定时器的计数值清零,并开始计数。
3. 定时器计数:根据设定的计数方式和工作模式,定时器将自动进行计数,并根据计数规则更新计数值。
4. 定时器溢出:当定时器的计数值达到设定的最大值时,定时器将溢出并触发相应的中断或事件。
5. 定时器复位:定时器溢出后,可以选择自动清零计数值或保持当前计数值不变,然后重新开始计数。
单片机定时器通常支持多种工作模式,如定时模式、计数模式、PWM模式等。
具体的工作模式和计数方式根据不同的单片机型号而有所差异。
单片机定时器的应用单片机定时器的应用非常广泛,以下是一些常见的应用场景:实时时钟单片机定时器可以用于实现实时时钟功能。
通过定时器的计数功能,可以精确地测量经过的时间,并能够提供秒、分、时、日期等各种时间单位的计量。
实时时钟广泛应用于各种计时、计量和时间戳等场景。
脉冲产生定时器可以用来产生各种脉冲信号,例如方波、矩形波、脉冲串等。
通过定时器的计数规则和工作模式设置,可以控制脉冲的频率、占空比等参数,实现精确的波形生成。
周期性任务调度单片机定时器可以用于周期性任务的调度。
通过设置定时器的计数值和溢出中断,可以实现定时触发中断,从而执行一些周期性的任务,例如数据采集、数据上传、状态刷新等。
大连理工大学软件学院《单片机原理与应用》实验报告姓名:学号:班级:姓名:学号:班级:组号:实验箱编号:实验时间:月日实验室:嵌入式实验室实验台:Embest Edukit-III平台指导教师:侯刚成绩:实验五:秒表定时器实验一、实验目的和要求题目:秒表定时器实验实验目的1. 学习单片机的基本接口技术。
2. 学习74HC595、74HC138使用及与51单片机的控制方法。
实验要求1.通过按键控制,完成数码管的显示计数控制。
2. 用汇编语言设计程序,完成8个数码管的显示控制。
当按下INT 按钮时,数码管开始快速计时,高五位为秒数,低三位为ms 数,每1ms 刷新一次显示内容。
当再次按下INT 按钮时,停止计数。
二、实验原理和内容实验内容:用汇编语言设计程序,完成8个数码管的显示控制。
当按下INT 按钮时,数码管开始快速计时,高五位为秒数,低三位为ms 数,每1ms 刷新一次显示内容。
当再次按下INT 按钮时,停止计数。
实验原理:1.根据原理图,分析工作原理,有P0进行取段码,P2.0 P2.1 P2.2进行取位码。
2.使用定时器进行计时。
根据所给开发板上的晶振频率,计算出计时器所付初值,设置计时器TO在模式下工作,每次计时100ms后,转入数码管显示中断处理程序。
3.实验板为共阴极数码管显示,将对应的显示0~9的电信号依次存储在“数组表”中。
4.使用key1,key2两个按键,按下key1,开始计时。
按下key2,计时停止。
5.根据实验要求,采用T0,T1两个定时器,其中T0用来增加时间显示,T1为按暂停键时为LED显示管循环上电所用。
6.每部分中断程序用寄存器间接寻址的方式获取显示数字的电信号量。
并进行循环上电,保证数字的亮度。
三、主要仪器设备及软件编程环境主要仪器:计算机编程软件,51电路开发板编程环境:uVision2 ,progisp烧写软件四、实验步骤与编程实验步骤:编写代码,编译,调试,烧写,完成实验。
单片机定时器作用原理及学习应用详解定时器是单片机的重点中的重点,但不是难点,大家一定要完全理解并且熟练掌握定时器的应用。
定时器的初步认识时钟周期:时钟周期T是时序中最小的时间单位具体计算的方法就是1/时钟源,如果大家用的晶振是11.0592M,那么对于这个单片机系统来说,时钟周期=1/11059200秒。
机器周期:我们的单片机完成一个操作的最短时间。
机器周期主要针对汇编语言而言,在汇编语言下程序的每一条语句执行所使用的时间都是机器周期的整数倍,而且语句占用的时间是可以计算出来的,而C 语言一条语句的时间是不可计算的。
51单片机系列,在其标准架构下一个机器周期是12个时钟周期,也就是12/11059200秒。
现在有不少增强型的51单片机,其速度都比较块,有的1个机器周期等于4个时钟周期,有的1个机器周期就等于1个时钟周期,也就是说大体上其速度可以达到标准51架构的3倍或12倍。
因为我们是讲标准的51单片机,所以我们后边的课程如果遇到这个概念,全部是指12个时钟周期。
这两个概念了解即可,下边就来我们的重头戏,定时器和计数器。
定时器和计数器是单片机内部的同一个模块,通过配置SFR(特殊功能寄存器)可以实现两种不同的功能,我们大多数情况下是使用定时器功能,因此我们的课程也是主要来讲定时器功能,计数器功能大家自己了解下即可。
顾名思义,定时器就是用来进行定时的。
定时器内部有一个寄存器,我们让它开始计数后,这个寄存器的值每经过一个机器周期就会加1 一次,因此,我们可以把机器周期理解为定时器的计数周期。
我们的秒表,每经过一秒,数字加1,而这个定时器就是每过一个机器周期的时间,也就是12/11059200秒,数字加1。
还有一个特别注意的地方,就是秒表是加到60后,秒就自动变成0 了,这种情况在单片机和计算机里我们称之为溢出。
那定时器加到多少才会溢出呢?定时器有几种模式,假如是16位的定时器,也就是2个字节,最大值就是65535,那么加到65535后,再加1就算溢出,如果有其他位数的话,道理是一样的,对于51单片机来说,溢出后,这个值会直接变成0。