定时器计数器
- 格式:ppt
- 大小:934.50 KB
- 文档页数:40


单片机作业
1
定
时
器
计
数
器
的
应
用
探测一班
1011020119
李赛
单片机作业
2
定时器计数器的应用系统设计
一. 系统分析
设计一个简单的单片机应用系统,要求如下:晶振为12MHZ,使用定时器计数器1(T1)作为延时控制,利用I/O端口P0点亮三只灯,三只灯(如P0.0、P0.1、P0.2)交替闪烁,间隔1s。
二. 系统功能框图设计
晶振
单
片
机
P0.0灯
P0.1灯
复位 P0.2灯
定时计数器
三.系统硬件设计
单片机AT89C51 瓷片电容CAP30PF 电阻RES 晶振CRYSTAL
12MHZ 按钮BUTTON
电解电容CAP-ELEC 发光二级管LED-BIBY 发光二级管LED-BIGY 发光二级管LED-BIRG 单片机作业
3
四.系统软件、原理图设计
该系统的原理图如图1所示
图1系统的原理图
五.程序流程图设计 单片机作业
4 开始
定时/计数器初始值设置
P0.0清0、P0.1置1、P0.2置1
启动定时/计数器1
定时/计数器是否延时25ms?
启动定时/计数器重新赋值
是否循环40次(延时1s)?
P0.0、P0.1取反
定时/计数器是否延时25ms?
启动定时/计数器重新赋值
是否循环80次(延时1s)?
P0.1、P0.2取反
N
N 定时/计数器是否延时25ms?
启动定时/计数器重新赋值
是否循环120次(延时1s)?
P0.0、P0.2取反
重新计循环次数
N N N
` N
Y
Y
Y
Y
Y
单片机作业
5 六.系统的程序设计
汇编程序:
ORG 0000H
LJMP MAIN
ORG 0100H
MAIN: MOV SP,#60H ;初始化堆栈
1. 计数概念的引入
从选票的统计谈起:画“正”。这就是计数,生活中计数的例程处处可见。例:录音机上的计数器、家里面用的电度表、汽车上的里程表等等,再举一个工业生产中的例程,线缆行业在电线生产出来之后要计米,也就是测量长度,怎么测法呢?用尺量?不现实,太长不说,要一边做一边量呢,怎么办呢?行业中有很巧妙的办法,用一个周长是1米的轮子,将电缆绕在上面一周,由线带轮转,这样轮转一周不就是线长1米嘛,所以只要记下轮转了多少圈,就能知道走过的线有多长了。
2、计数器的容量
从一个生活中的例程看起:一个水盆在水龙头下,水龙没关紧,水一滴滴地滴入盆中。水滴持续落下,盆的容量是有限的,过一段时间之后,水就会逐渐变满。录音机上的计数器最多只计到999….那么单片机中的计数器有多大的容量呢?8031单片机中有两个计数器,分别称之为T0和T1,这两个计数器分别是由两个8位的RAM单元组成的,即每个计数器都是16位的计数器,最大的计数量是65536。
3、定时
8031中的计数器除了能作为计数之用外,还能用作时钟,时钟的用途当然很大,如打铃器,电视机定时关机,空调定时开关等等,那么计数器是如何作为定时器来用的呢?
一个闹钟,我将它定时在1个小时后闹响,换言之,也能说是秒针走了(3600)次,所以时间就转化为秒针走的次数的,也就是计数的次数了,可见,计数的次数和时间之间的确十分相关。那么它们的关系是什么呢?那就是秒针每一次走动的时间正好是1秒。
结论:只要计数脉冲的间隔相等,则计数值就代表了时间的流逝。由此,单片机中的定时器和计数器是一个东西,只不过计数器是记录的外界发生的事情,而定时器则是由单片机供给一个非常稳定的计数源。那么供给组定时器的是计数源是什么呢?看图1,原来就是由单片机的晶体震荡器经过12分频后获得的一个脉冲源。晶体震荡器的频率当然很准,所以这个计数脉冲的时间间隔也很准。问题:一个12M的晶体震荡器,它供给给计数器的脉冲时间间隔是多少呢?当然这很不难,就是12M/12等于1M,也就是1个微秒。结论:计数脉冲的间隔与晶体震荡器有关,12M的晶体震荡器,计数脉冲的间隔是1微秒。 4、溢出
PLC程序中定时器和计数器的配合使用
实际使用中,定时器和计数器,常常有“强强联合”形式的搭配性使用。
一、定时器
1、定时器是位/字复合元件,可以有三个属性:
1)有线圈/触点元件,当满足线圈的驱动(时间)条件时,触点动作;
2)具有时间控制条件,当线圈被驱动时,触点并不是实时做出动作反应,而是当线圈被驱动时间达到预置时间后,触点才做出动作;
3)具有数值/数据处理功能,同时又是“字元件”。
2、可以用两种方法对定时时间进行设置:
1)直接用数字指定。FX编程器用10进制数据指定,如K50,对于100ms定时器来讲,延时5秒动作。为5秒定时器。对LS编程器,可用10制数或16进制数设定,如50(或h32),对于100ms定时器来讲,延时5秒动作;
2)以数据寄存器D设定定时时间,即定时器的动作时间为D内的寄存数值。
3、由定时器构成的时间控制程序电路:
LS编程器中的定时器有多种类型,但FX编程器中的定时器只有“得电延时输出”定时器一种,可以通过编写相应程序电路来实现“另一类型”的定时功能。图1程序电路中,利用M0和T1配合,实现了单稳态输出——断开延时定时器功能,X1接通后,Y0输出;X1断开后,Y0延时10秒才断开;T2、T3、Y2电路则构成了双延时定时器,X4接通时,Y2延时2秒输出;X4断开时,Y2延时3秒断开;Y3延时输出的定时时间,是由T4定时器决定的,T4的定时时间是同D1数据寄存器间接指定的。当X2接通时,T4定时值被设定为10秒;当X3接通时,T4定时值则被设定为20秒。XO提供定时值的清零/复位操作。
单个定时器的定时值由最大设定值所限定(0.1∽3276.7s),换言之,其延时动作时间不能超过1小时。如欲延长定时时间,可以如常规继电控制线路一样,将多只定时器“级联”,总定时值系多只定时器的定时值相加,以扩展定时时间。更好的办法,是常将定时器和计数器配合使用,其定时时间,即变为定时器的定时器和计数器的计数值相乘,更大大拓展了定时范围,甚至可以以月或年为单位进行定时控制。 需要说明的是:各种品牌的PLC,一般都有“时钟继电器”——属于特殊辅助继电器的类别,FX系列编程器有M8011-M8014的10ms、100ms、1s、1min时钟继电器四种,相当于“方便定时器”了。其线圈是被系统驱动的,我们只要根据控制要求,取其触点信号使用就是了。可以方便编写年、月、日、时、分、秒的设备运行时间累计、指示灯烁报警信号输出等程序。
本科学生综合性实验报告
学号 姓名
学院 物电学院 专业、班级 10应电A班
实验课程名称 微机原理与接口技术实验
教师及职称
开课学期 2012 至 2013 学年 1 学期
填报时间 2012 年 9 月 17 日
云南师范大学教务处编印 一、实验设计方案
实验序号 实验名称 可编程定时器/计数器
实验时间 2012.9.17 实验室 同析3.319
1.实验目的
掌握8253的基本工作原理和编程方法,用示波器观察不同方式下的波形图。
2. 实验原理、实验流程或装置示意图
(1)、按下图虚线连接电路图,将计数器0设置为方式0,计数器初值为N,用手动逐个输入当脉冲,编程使计数器值在屏幕上显示,并同时用逻辑笔观察OUTO电平变化。
(2)
(2)、按下图连接电路图,将计数器0、计数器1分别设置为方式3,计数初值为1000。用逻辑笔观察OUT1输出电平的变化。
3.实验设备及材料
通用微机原理接口实验系统 电脑 导线 二、实验报告
4.实验方法步骤及注意事项
在实验过程中应保持硬件与计算机的连接才可以正确进行实验,电路连接时要正确连接。
5.实验数据处理方法
观察实验法
6.参考文献
《微机原理与接口技术实验指导书》
《微机原理与接口技术》 第三版 电子工业出版社; 1.实验现象与结果
实验编程如下:
;*************************;
;* 8253方式0计数器实验 *;
;*************************;
io8253a equ 283h
io8253b equ 280h