




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1(1)定时发出脉冲信号,向定时发出脉冲信号,向CPU申请中断,其定时间隔的长短申请中断,其定时间隔的长短及起始控制的时间均可由程序控制。及起始控制的时间均可由程序控制。例如某机械零件的热处理工艺曲线为:例如某机械零件的热处理工艺曲线为:温度温度开始定时开始定时保温保温5分钟分钟淬火淬火清洗清洗开始定时开始定时回火回火3小时小时空冷空冷 实际控制可实际控制可以由单片机定时以由单片机定时发出信号控制自发出信号控制自动完成整个工艺动完成整个工艺过程。过程。2: 对外界发生的事件脉冲进行计数,当达到程序规定的计数对外界发生的事件脉冲进行计数,当达到程序规定的计数值时,输出一脉冲信号,申请中断。值时,
2、输出一脉冲信号,申请中断。例如一啤酒生产线,如下图所示例如一啤酒生产线,如下图所示:计数计数24瓶瓶光电信号检测光电信号检测24瓶装完申请中断瓶装完申请中断转入中断服务程序装箱转入中断服务程序装箱输送带输送带3 8031片内有两个片内有两个16位定时器计数器,称为位定时器计数器,称为T0,T1,与其,与其有关的特殊功能寄存器有关的特殊功能寄存器SFR有:有: T1 T0 GATE C/T M1 M0 GATE C/T M1 M0 字节地址字节地址89H 门控位门控位 ,为,为1时时 ,要求,要求INTi引脚高电平才计数,否则停止引脚高电平才计数,否则停止 1 计数计数 ; 0 定时定时 00
3、方式方式0 ;01 方式方式1 ; 10 方式方式2 ; 11 方式方式34 字节地址字节地址88H 可位寻址可位寻址 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 对对T1控制控制 对对T0控制控制 与外部中断相关,已经介绍与外部中断相关,已经介绍 TRx置置1,则启动定时器工作,则启动定时器工作,TFx置置1,定时器,定时器x溢出。溢出。 例例 MOV TMOD,#06H 0 0 0 0 0 1 1 0 门控位为门控位为0 T1方式方式0 T0方式方式2 定时功能定时功能 计数功能计数功能只要用只要用 SETB TR0 ,SETB TR1 即可启动即可启动T0 T1 开始
4、工作。开始工作。5 TL0 TH0 TL1 TH1 用于存放计数初值,具有自动加用于存放计数初值,具有自动加1功能,加满后溢出功能,加满后溢出 它们的它们的字节地址是字节地址是: 控制定时器控制定时器/计数器工作方式,计数长度可分别选计数器工作方式,计数长度可分别选择择8位,位,16位,位,13位。位。 注意它是加注意它是加1计数器,例如选择计数器,例如选择8位计数器,最大位计数器,最大可存可存255,如果置入初值,如果置入初值250,则计数,则计数6次即溢出中断。次即溢出中断。66.3 定时器计数器的四种工作方式(以定时器计数器的四种工作方式(以T0为例)为例) 13位计数器位计数器(无自动
5、重装入功能)无自动重装入功能) TL0的低的低5位高三位为位高三位为0,TL0高高3位和位和TH0低低5位凑成一个字节位凑成一个字节 选择选择T0方式方式0定时,定时,TMOD的低的低4位为:位为: 0 0 0 0 TH0低低5位位 TL0低低5位位7例如:要求从例如:要求从P1.0脚发出周期为脚发出周期为2ms的方波只要选的方波只要选T0定时间隔定时间隔1ms求反求反P1.0即可满足。即可满足。定时工作方式中令计数器加定时工作方式中令计数器加1的周期是每个的周期是每个机器周期加机器周期加1,10高电平高电平1ms低电平低电平1ms8设定时器时间常数为设定时器时间常数为N设设f=6MHZ,则有
6、,则有 N=8192 - 500=7692 00011110 00001100B 11110000 00001100 TH0=F0H TL0=0CH 即共加即共加500次,每次耗费次,每次耗费2s,共耗费时间,共耗费时间1ms 程序如下:程序如下:910讨论计数方式:讨论计数方式: 如前述啤酒生产线,计数如前述啤酒生产线,计数24瓶中断转入装箱程序瓶中断转入装箱程序选选T1方式方式0计数,计数,TMOD的高的高4位为位为: 0 1 0 0初始常数初始常数X的计算的计算: 213 - X =24 X=8192 - 24=8168 00011111 11101000B 00001000 TH1=F
7、FH TL1=08H加加24次即溢出中断。程序如下次即溢出中断。程序如下:1112(2)方式)方式1 16位计数器(位计数器(定时时间最长定时时间最长) 方式方式1与方式与方式0唯一的区别是计数器是唯一的区别是计数器是16位位,即即TL 8位,位,TH 8位,因此,计算时间常数的公式中位,因此,计算时间常数的公式中 213 应改为应改为216,上述程序如改用方式上述程序如改用方式1,则常数计算为:,则常数计算为:定时定时 (216-X)(12/f)=110-3 解之解之X =FE0CH 即即TH0=FEH ,TL0=0CH计数计数 216-X =24 解之解之 X=FFE8H 即即TH1=FF
8、H,TL0=E8H程序中的程序中的TMOD赋值相应改为方式赋值相应改为方式113(3)方式)方式2 8位计数器,位计数器,能自动重装,定时准确能自动重装,定时准确TL0作为作为8位位计数器计数器,当,当TL0计数溢出中断时,在置计数溢出中断时,在置1溢出中断标志溢出中断标志TF0的同时,自动将的同时,自动将TH0中所装的原中所装的原初始常数送初始常数送TL0,使,使TL0从原初始开始重新计数。从原初始开始重新计数。TH0作为初值寄存器用,因此在中断响应后不必重作为初值寄存器用,因此在中断响应后不必重装时间常数,省去了重装时间常数的时间,因此定装时间常数,省去了重装时间常数的时间,因此定时准确。
9、时准确。 时间常数计算公式为:时间常数计算公式为: 定时定时 (28 X)12/f =定时间隔定时间隔 计数计数 28 X = 计数次数计数次数1415(4)方式)方式3 方式方式3只适用于只适用于T0TL0 作为作为8位定时器计数器,使用位定时器计数器,使用T0的的C/T 、GATE 、TR0 、TF0 ,,外部计数脉冲从,外部计数脉冲从T0引脚输入,引脚输入,TR0置置1启动。启动。TH0 可单独用作可单独用作8位定时器,位定时器,。置。置1 TR1即可启动,溢出中断时将即可启动,溢出中断时将TF1置置1,即它,即它的启动位的启动位和中断源。和中断源。 TH1、TL1 当定时器当定时器T0
10、定义为工作方式定义为工作方式3时,定时器时,定时器T1常常用作串行口的波特率发生器,用作串行口的波特率发生器,T1仍可选择方式仍可选择方式0、1、2,用,用TL1、TH1分别作为分别作为13、16、8位计数器,可以改变不同的位计数器,可以改变不同的波特率范围。波特率范围。此时的此时的T1不能使用中断源不能使用中断源。16例:例: 按下述要求,编写按下述要求,编写8051定时器计数器定时器计数器程序程序段段(1) 用用T0计数外界事件计数外界事件192次申请中断次申请中断(2) 用用T1定时定时50ms申请中断,设晶振频率申请中断,设晶振频率f = 6MHZ T0计数初始常数计数初始常数 213
11、 X = 192 X= 8192 192 = 8000 8000 = 1F40H = B T1定时初始常数定时初始常数 (216 X) (12/f) = 50 10 3 X = 65536 - 25 10 3 = 40536 = 9E58H 17MOV SP, #60H ;建立堆栈建立堆栈 MOV TMOD, #14H ;T0方式方式0计数,计数,T1方式方式1定时定时 MOV TL0, #00H ;T0计数计数192次初始常数次初始常数 MOV TH0, #0FAH MOV TL1, #58H ;T1定时定时50ms时间常数时间常数 MOV TH1, #9EH SETB TR0 ;启动启动T
12、0开始计数开始计数 SETB TR1 ;启动启动T1开始定时开始定时 SETB EA ;以下以下3条指令打开中断条指令打开中断 SETB ET0 SETB ET1186.4.1 定时定时/计数两种功能计数两种功能:8051有有T1、T0两个定时两个定时/计数器,具有定时计数器,具有定时/计数两种功能。计数两种功能。 选择定时功能,此时计数器加选择定时功能,此时计数器加1频率为一个机器周频率为一个机器周期加期加1,即,即每隔每隔12/f 秒加秒加1。 选择计数功能,此时计数器加选择计数功能,此时计数器加1频率由外部输入的频率由外部输入的脉冲频率决定,信号由脉冲频率决定,信号由T0和和T1(805
13、1的的14脚和脚和15脚)输入,脚)输入,当当T0或或T1引脚输入引脚输入一个脉冲信号时,相应的计数器加一个脉冲信号时,相应的计数器加1,。 19振荡器振荡器TH1 TL1TF1中断中断&GATEINT1TR1控制控制12 T1端端与门与门或门或门206.4.2 计数初值计数初值N的计算公式的计算公式: (2n N) (12/ f )= 定时间隔定时间隔 或者或者: 2n N = 计数次数计数次数 式中的式中的n,由工作方式决定,当分别选择工作方式,由工作方式决定,当分别选择工作方式分别为分别为0、1、2、3时,时,21 定时范围:定时范围: 初值为初值为0 时,时,16384 计数范
14、围:计数范围: 18192 定时范围:定时范围: 计数范围计数范围 : 165536 定时范围:定时范围: 计数范围:计数范围: 125622 要求用一台单片机控制要求用一台单片机控制10台加热炉,每隔台加热炉,每隔10秒钟秒钟进行一次温度测量。则需要定时进行一次温度测量。则需要定时10秒。设秒。设 f = 6MHZ,选用选用T0。 可选择定时可选择定时100mS中断,当中断中断,当中断100次时,可达到次时,可达到10秒。秒。 计算定时计算定时的时间常数的时间常数X,。 (2n X) (12/ f )= 定时间隔定时间隔 (216 X) 2 10-6 = 100 10-3 即即 TH0 =
15、3CH TL0 = B0H 23 ORG 0000H AJMP START ORG 000BH LJMP DS0 STAT: MOV SP,#30H MOV TMOD,#01H ;T0方式方式1定时定时 MOV TH0,#3CH MOV TL0,#0B0H ;定时定时100mS时间常数时间常数 MOV R0,#0 ;中断次数计数单元清零中断次数计数单元清零 SETB TR0 ;启动启动T0 SETB EA ;允许允许CPU中断中断 SETB ET0 ;允许;允许T0中断中断 SJMP $ ;以下以下CPU可执行主程序可执行主程序24T0中断服务程序:中断服务程序: DS0: MOV TH0 ,
16、 #3CH MOV TL0 , #0B0H ;重装重装100mS时间常数时间常数 INC R0 ;中断次数计数加中断次数计数加1 CJNE R0 , #100, RETN ;到到10秒了吗?秒了吗? MOV R0 , #0 ;10秒已到,清中断计数秒已到,清中断计数 LCALL CYPID ;调温度控制程序调温度控制程序 RETN: RETI 25例:设有一频率固定的脉冲信号,欲测量其正脉冲宽度。例:设有一频率固定的脉冲信号,欲测量其正脉冲宽度。(1)最佳办法利用计数器的计数功能(选用)最佳办法利用计数器的计数功能(选用T1);(2);(3)可将外部脉冲信号接至)可将外部脉冲信号接至INT1引脚上,电平参与控制计数;引脚上,电平参与控制计数;(4)利用)利用GATE门控端配合门控端配合INT1端电平来控制:高计数、低停端电平来控制:高计数、低停 止计数;止计数;(1)计数器清零,启动计数器,出现正脉冲开始计数,计数器自动加)计数器清零,启动计数器,出现正脉冲开始计数,计数器自动加1 ;(2)正脉冲下降沿停止计数,查询计数个数,计算正脉冲宽度;)正脉冲下降沿停止计数,查询计数个数,计算正脉冲宽度;(1)GATE=1,工作方式可选择方式,工作方式可选择方式0或者方式或者方式1;(2)TR11、INT1为高开始计数,为高开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国牛初乳营养粉数据监测研究报告
- 部编版五年级语文(下)句子专项复习(含答案)
- 部编版历史七年级下册第三单元明清时期:统一多民族国家的巩固与发展 单元练习题(含答案)
- 豆粕饲料购销合同
- 三农产品电商市场新机遇与抢占策略研究报告
- 消防设备控制柜施工方案
- 建设工程施工合同发布抓紧
- 员工培训学习进展统计表
- 社会学研究方法与数据处理测试卷
- 文化娱乐行业各类型受众分析表
- 培养正念提升幸福感
- 追悼会流程方案
- 公司制度制定执行等情况汇报范文
- 营销员压力管理
- 浅议乡镇机构改革的难点与对策
- 二年级下册口算题1000题大全
- 聚酯生产技术 聚酯聚合原理
- GB 4806.7-2023食品安全国家标准食品接触用塑料材料及制品
- 中职统编《金属材料与热处理》系列课件 第1章 金属的结构与结晶(动画) 云天系列课件
- 新编英语教程6练习册答案
- 2019新人教高一英语必修一-课本听力与视频材料原文(精校打印版)
评论
0/150
提交评论