5单片机中断定时器的使用
- 格式:ppt
- 大小:1.31 MB
- 文档页数:39


- 1 - 单片机定时器
定时器是控制系统运行的必备工具,在单片机系统的应用中也不例外。单片机定时器技术是不可缺少的,它可以帮助我们实现定时功能,以正确地完成系统的功能。
单片机定时器的基本原理是,它使用一个时钟源,将它连接到定时器内部的计数器或计时器上。该计数器将它接受的时钟计数加1,并以每次计数器累加1为一个周期向外输出一个下降沿信号。当计数器的计数到达其定义的最大计数值时,它会自动回到起点重新计数,从而形成一个周期性的计数器循环。
单片机定时器的特性对于实现定时和同步功能至关重要。它可以帮助我们准确地控制时钟频率,避免因电源频率变化而引起的系统不稳定性。定时器也可以用来实现时区同步功能,保证系统可以正确处理全球时间同步功能。
单片机定时器可以根据不同的应用场景,使用不同类型的定时器来实现特定的功能。最常见的定时器类型是8位定时器,它最多可以支持256个计数值,可以达到的最高分辨率为1/256秒。另外还有16位定时器,它可以支持65536个计数值,可以达到的最高分辨率为1/65536秒。
单片机定时器可以用来实现时间控制,多个任务切换,计时和温度控制等多种功能。它们也可以用来实现精确的控制,例如控制30分钟后打开设备,控制一秒钟加料给机器,或者控制每隔五秒检测一下仪器的温度等等。 - 2 - 另外,单片机定时器使用起来很方便,不需要复杂的调试和编程。它们的调试可以通过通用的调试器进行,也可以通过软件来实现。另外,它们的编程也非常简单,只需要使用一些简单的语句就可以控制定时器的工作。
因此,单片机定时器是单片机系统应用中不可缺少的一部分,它可以提供准确的定时和同步功能,又不失灵活性和易用性,使得它成为系统自动控制的理想工具。
定时器中断实验内容:(第6章 中断系统.doc和第7章 定时器、计数器.doc)
1. 基础实验5(定时器输出PWM)
2. 定时器中断函数实验:
要求:每一次按键(查询方式),同时要求改变LED1~LED8循环点亮(定时中断)的方式。
1) 初始状态或按下KEY1键(松开后保持),只点亮一只LED灯,每隔1秒(定时)右循环显示(中断),移到LED8后回到LED1。
LED1LED8
…………………………
LED1LED8
2) 按下KEY2键(松开后保持),同时点亮相邻的两只LED灯,每隔1秒(定时)右循环显示(中断),移到LED8后回到LED1。
LED1LED8
3) 按下KEY3键(松开后保持),同时点亮间隔的两只LED灯,每隔1秒(定时)右循环显示(中断),移到LED8后回到LED1。
LED1LED8
4) 按下KEY键(松开后保持),点亮一只LED灯,每隔1秒(定时)多点亮一只LED灯(中断),直到LED灯全亮,然后回到一只LED点亮状态循环。
LED1LED8
LED1LED8
…………………………
LED1LED8
5) 按下KEY键(松开后保持),同时点亮相邻的两只LED灯,隔1秒(定时)后再次增加点亮相邻的两只LED灯,直到全亮后再隔1秒点亮123456,后又1234,直到全灭后重新循环。
LED1LED8
LED1LED8
…………………………
LED1LED8
…………………………
LED1LED8
6) 按下KEY键(松开后保持),开始点亮LED1灯,隔1秒
(定时)后点亮23,再隔1秒点亮345,隔1秒后5678,隔1秒后8,隔1秒后76 ,隔1秒后654,隔1秒后4321,隔1秒后1重复。
LED1LED8
LED1LED8
LED1LED8
…………………………
LED1LED8
7) 按下KEY键(松开后保持),开始点亮LED1、LED8灯,隔1秒(定时)后点亮12、78,再隔1秒点亮123、678,直到全亮后再隔1秒点亮123、678,后又12、78,直到点亮LED1、LED8灯后重新循环。
51 单片机定时器工作原理
51 单片机定时器工作原理及用法
TMOD : 控制定时器的工作方式。8 个 bit,高四位 bit 控制 T1,、低四位
bit 控制 T0。因为定时器有 4 种工作方式;TMOD = 0x00(工作方式 0),
TMOD = 0x01(工作方式 0),TMOD = 0x02(工作方式 2),TMOD = 0x03
(工作方式 3)。以上是控制低 4 位的,所以是对应着 T0。
TR0:T0 定时器 使能开关,TR0 = 1,开始工作; =0 停止工作。
ET0:T0 定时器中断开关,定时时间一到,就会跑去中断程序。ET0=1,
中断使能,=0 失能。
EA : 中断总开关,你可以想象成电路的总电闸,EA=1,中断使能;
=0,中断失能。
TH0,TL0 : T0 定时器计数寄存器,组成 16 位的计数,0x0000--
第六课 中断、定时器函数的设计使用1
教学内容:中断、定时器函数的设计使用
教学重点: 中断、定时器函数的设计
教学难点:中断、定时器函数的使用
教学目的:1、掌握中断、定时器函数的设计
2、掌握中断、定时器函数的使用
一、 中断和定时器使用所必须基础知识
1、 中断
1)中断的概念
在程序执行的过程中插入另外一段程序的执行就称为中断
2) MCS-51单片机的中断系统结构(中断示意图)
3) 中断允许控制寄存器的介绍(IE)
4) 中断优先级
5) 中断函数的定义
例:void 函数名( ) interrupt0~4
Void time0( ) interrupt1
{
D1=0;
}
6) 中断函数和子函数的区别
7)中断响应的条件
2、定时计数器
两个16位的定时计数器,T0,T1
四种工作方式
初始化步骤:
1)对TMOD赋值,确定T0和T1的工作方式
2)计算初值,并将其写入TH0,TL0,TH1,TL1
3)中断方式时,对IE赋值,开放中断
4)使TR0,TR1置1,启动T0,T1
例: MOV TMOD,#01H
MOV TH0,#0B0H
MOV TL0,#3CH
SETB EA
SETB ET0
SETB TR0
二、实战练习 例1:利用定时计数器让发光二极管以1HZ闪烁。
#include //52单片机头文件
#include //包含有左右循环移位子函数的库
#define uint unsigned int //宏定义
#define uchar unsigned char //宏定义
sbit P1_0=P1^0;
uchar tt;
void main() //主函数
{
TMOD=0x01;//设置定时器0为工作方式1