版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微机原理及应用第五章定时器/计数器5.1 定时器/计数器的结构定时器/计数器的结构如下图所示。TH1TL1TH0TL0TCONTMOD中断请求P3.5 (T1P3.4 (T0定时计数CPU44外部计数输入启动启动溢出溢出5.2 定时器/计数器的操作管理寄存器GATEC / TM1M0GATEC / TM1M0T1T0D7D4D3D0(89H1. 工作方式选择位M1、M0M1 M00 0 方式0。13位定时器/计数器,TH 高8位,TL 低5位。0 1 方式1。16位定时器/计数器。1 0 方式2。8位自动重装初值定时器/计数器。1 1 方式3。T0分为1个8位计数器/计数器和1个8位定时器。(
2、 T1无方式32. C / T 定时器/计数器方式选择位C / T = 1时,设为计数器方式。 C / T = 0时,设为定时器方式。3.门控位GATEGATE =1时,要启动定时器/计数器,除启动控制位TR0(TR1=1外,还必须使INT0(INT1=1,才能启动。称为定时器/计数器的外部启动方式。D7TF1TR1TF0TR0IE1IT1IE0IT0D0(88HTCONTF0、TF1分别是T0、T1的溢出中断标志。TR0、TR1分别是T0、T1的启动控制位。P45.3 定时器/计数器的工作方式1. 作计数器计数器的计数值:N = 213-X ( X :计数器的初值计数器的计数值范围为:1 2
3、13即1 8192 。2. 作定时器定时器的定时时间:t = (213X×12/fosc ( fosc :时钟频率定时器的定时范围:( 1 8192 ×12/foscP5振荡器÷12T0引脚&1TR0GATE INT0C/T=0C/T=1KTL0 (5位TH0 (8位TF0中断定时器/计数器方式0 逻辑框图加1计断器1. 作计数器计数器的计数值:N = 216-X ( X :计数器的初值计数器的计数值范围为:1 216即1 65536。2. 作定时器定时器的定时时间:t = (216X×12/fosc ( fosc :时钟频率定时器的定时范围:(
4、 1 65536 ×12/fosc振荡器÷12T0引脚&1TR0GATE INT0C/T=0C/T=1KTL0 (8位TH0 (8位TF0中断定时器/计数器方式1 逻辑框图加1计数器P61. 作计数器计数器的计数值:N = 28-X ( X :计数器的初值计数器的计数值范围为:1 28即1 256。2. 作定时器定时器的定时时间:t = (28X×12/fosc ( fosc :时钟频率定时器的定时范围:( 1 256 ×12/fosc振荡器÷12T0引脚&1TR0GATE INT0C/T=0C/T=1KTL0 (8位TH0 (
5、8位TF0中断定时器/计数器方式2 逻辑框图加1计数器重装初值P7定时器T0方式3逻辑框图TH0 (8位振荡器÷12TF1中断TR1K振荡器÷12T0引脚&1TR0GATEINT0C/T=0C/T=1KTL0 (8位TF0中断加1计数器P 8T0工作在方式3时,T1的工作方式振荡器÷12 T1 (P3.5C/T=0C/T=1TL1(8位T1方式1(或方式0 逻辑框图加1计数器TH1(8位或5位串行口振荡器÷12 T1 (P3.5C/T=0C/T=1TL1(8位TH1(8位T1方式2 逻辑框图加1计数器重装初值串行口通常当T1用作串行口波特率发生器
6、时,T0才设置为方式3。P95.4 定时器/计数器应用实例【例5-1】应用定时器T0,采用定时中断的方法,在P1.0产生周期为1ms 宽度为2s 的负脉冲序列。设时钟频率为12MHz 。计算T0初值X :t = (213X×12/(12×106 =1×10-3求得初值X = 7192 = 11100000 11000B 程序如下:ORG 0000H AJMP MAIN ORG 000BHAJMP T0INT ORG 0200HORG 0100H T0INT :CLR P1.0MAIN :MOV TH0 , #0E0H NOP MOV TL0 , #18H SETB
7、 P1.0MOV IE , 82H MOV TH0 , #0E0H ;重装SETB TR0 MOV TL0 , #18H ;初值LOOP :SJMP LOOP ;等待中断RETI1ms 2s P102s【例5-2】利用T0在P1.0产生25Hz 的方波,设fosc=12MHz 。25Hz 方波,算出周期为40ms ,则T0定时时间为20ms ,设T0工作方式1,计算出T0的初值为:X=B1E0H 。(1 查询方式程序如下:ORG 0100H MOV TMOD , #01H MOV TH0 , #0B1H MOV TL0 , #0E0H SETB TR0 LOOP :JNB TF0 , LOOP
8、CLR TF0MOV TH0 , #0B1HMOV TL0 , #0E0HCPL P1.0SJMP LOOP END (2 中断方式程序如下:ORG 0100H MOV TMOD ,#01H MOV TH0 , #0B1H MOV TL0 , #0E0H MOV IE , #82H SETB TR0SJMP $ORG 000BH AJMP T0INT T0INT :CPL P1.0MOV TH0 , #0B1H MOV TL0 , #0E0HRETIENDP11P12【例5-3】利用T1工作方式2对外部信号计数。要求每计满100次,将P1.0取反。定时器T1工作方式2,要使它计满100次产生溢
9、出,必须给计数器置初值。初值为:X=28100=156=9CH。程序如下:MAIN:MOV TMOD , #60H ;T1设为定时器方式2MOV TL0 , #9CH ;装入初值MOV TH0 , #9CHMOV IE , #88H ;CPU开中断、T1开中断SETB TR1 ;启动T1HERE:SJMP HERE ;等待中断ORG 001BH ;中断服务程序入口CPL P1.0 ;P1.0取反RETI ;中断返回T0方式3应用例【例5-4】T0设为方式3,其8位定时器/计数器TL0改为外部中断源,其8位定时器TH0用于控制P1.0产生5KHz 的方波,T1设为方式2作串行口波特率发生器。设f
10、osc=6MHz 。MOV TH1 , #BAUDMOV TMOD , #27HMOV TCOM , #55H MOV IE , #9FH SJMP $ORG 000BH ;TL0溢出中断ORG 001BH ;TH0溢出中断AJMP TL0INT AJMP TH0INT ORG 0100H ORG 0180HTL0INT :MOV TL0 , #0FFH TH0INT :MOV TH0 ,#206 CPL P1.0RETI RETI P13由于TH0使用T1的中断标志TF1,因此其中断入口地址是T1的入口地址001BH IE EA ES ET1EX1ET0EX010011111TCON TF1
11、TR0IE1IT1IE0IT001010101TR1TF00TMODGATE M0GATE C/T M1M000100111C/T M1P14定时器/计数器综合应用【例5-5】利用T0产生1秒钟定时,设fosc=6MHz。采用计数器计算定时器中断次数的方法实现长时间定时。令T0为方式1作100ms定时,用寄存器B作计数器,对T0的中断次数进行计数,当B计约够10次后便是1秒。T0初值计算:X = 216t×fosc/12 = 15536 = 3CB0H程序如下:ORG 0000H SETB ET0LJMP MAIN SETB EAORG 000BH SETB TR0AJMP SERV
12、E SJMP $ORG 1000H SERVE:MOV TL0 , #0B0H MAIN:MOV SP , #60H MOV TH0 , #3CHMOV B ,#0AH DJNZ B , LOOPMOV TMOD , #01H CLR TR0MOV TL0 , #0B0H LOOP:RETIMOV TH0 , #3CH END定时器/计数器综合应用【例5-6】利用T0门控位测试INT0引脚上出现的正脉冲宽度,并以机器周期数的形式显示在显示器上。测量原理:(设被测脉冲宽度216个机器周期T0设为定时器方式1,当TR0=1,GATE=1时,定时器的启停则由INT0控制。若INT0=0(低电平,则定
13、时器停止计数。若INT0=1,则定时器启动计数。将被测信号接到INT0引脚上,在脉冲的上升沿启动计数,在脉冲下降沿停止计数。然后读取计数器的值,便是脉冲宽度。INT0振荡器÷12T0引脚&1TR0 = 1GATE = 1C/T=0C/T=1K TL0(8位TH0 (8位TF0中断定时器/计数器方式1 逻辑框图加1计数器P15测量程序如下:START:MOV TMOD , #09HMOV TL0 , #00HMOV TH0 , #00HSETB P3.2WAIT1:JB P3.2 , WAIT1SETB TR0WAIT2:JNB P3.2 , WAIT2 WAIT3:JB P3
14、.2 , WAIT3CLR TR0MOV R0 , #DISBUFMOV A , TL0XCHD A , R0INC R0SWAP AXCHD A , R0INC R0MOV A , TH0XCHD A , R0INC R0SWAP AXCHD A , R0DIS:LCALL DISUPAJMP DISP16第五章完 作业三参考答案P20 17.片内RAM以DATA开始的区域中存放着10个单字节的十进制数。求其累加和结果存入SUM和SUM+1单元中。ORG 2000HSTART:MOV R0 ,#DATA MOV A ,SUM+1 MOV R2 ,#10 ADD A , #1MOV SUM+1
15、 ,#00H DA ACLR A MOV SUM+1 , A LOOP:ADD A , R0 NEXT:INC R0DA A DJNZ R2 ,LOOPMOV SUM , A SJMP $JNC NEXT P70程序执行结果:和的低字节存放在SUM单元,和的高字节存放在SUM+1单元。采用中断技术设计一LED 闪烁电路,闪烁周期为2s ,亮暗各1s+5VP1.0INT0+5V8051接口电路程序如下:(一 中断服务程序:主程序ORG 0000H EXT0:CPL P1.0AJMP START ACALL DELAY ORG 0003H DJNZ R2,EXT0AJMP EXT0 RETIORG
16、 1000H DELAY :MOV R5 , #100 ;1sSTART :MOV SP , #2FH D1:MOV R6 , #20MOV IE , #81H D2:MOV R7 , #248MOV TCON , #00H DJNZ R7 , $MOV R2,#02 DJNZ R6 , D2 SETB P1.0 DJNZ R5 , D1SJMP $ RET P82采用中断技术设计一LED 闪烁电路,闪烁周期为2s ,亮暗各1s 接口电路程序如下:(二 中断服务程序:主程序ORG 0000H EXT0:CPL P1.0AJMP START ACALL DELAY ORG 0003H SJMP
17、EXT0AJMP EXT0 RETIORG 1000H DELAY :MOV R5 , #100 ;1sSTART :MOV SP , #2FH D1:MOV R6 , #20MOV IE , #81H D2:MOV R7 , #248MOV TCON , #00H DJNZ R7 , $SETB P1.0 DJNZ R6 , D2SJMP $ DJNZ R5 , D1RET P82+5VP1.0INT0+5V8051采用中断技术设计一发光二极管闪烁电路,闪烁周期为2s,亮暗各1s。(P82 现采用定时中断方法实现。程序清单:(三主程序:ORG 0000HLJMP MAINORG 000BHA
18、JMP SERVE MAIN:MOV SP,#60HMOV R2,#0AHMOV TMOD,#01HMOV TL0,#0B0HMOV TH0,#3CHSETB ET0SETB EASETB TR0SETB P1.0SJMP $中断服务程序:SERVE:MOV TL0,#0B0HMOV TH0,#3CHDJNZ R2,LOOPMOV R2,#0AHCPL P1.0LOOP:RETIEND利用T0定时加计数的方法实现1s钟定时,每当1s定时到时,将P1.0的状态取反,则在P1.0便可输出周期为2s的闪炼信号。己知8051单片机的fosc=6MHz,利周T0和P1.0输出矩形波。矩形波高电平宽50s,低电平宽300s。设T0工作方式3,用TL0作8位定时器,分别计算出定时50s和300s的初值X1和X2。X1=256-50/2=231;X2=256-300/2=106。程序如下:ORG 0000HAJMP MAIN SERVE:JB P1.0 , NEXTORG 000BH MOV TL0 , #231;高电平宽度AJMP SERVE SJMP NEXT1ORG 1000H NEXT:MOV TL0 , #106 ;低电平宽度MAIN:MOV SP , #2FH NEXT1:CPL P1.0MOV TMOD , #03H RETIMOV TL0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度新能源汽车充电桩安装与维护个人聘用合同4篇
- 2025年食堂外包项目绩效考核与评估合同3篇
- 2025年度个人消费分期贷款合同模板(2025版)4篇
- 2025年度个人工厂品牌形象及营销权转让合同2篇
- 2025年全球及中国三环癸烷二甲醇二甲基丙烯酸酯行业头部企业市场占有率及排名调研报告
- 2025年全球及中国全自动线材前处理机行业头部企业市场占有率及排名调研报告
- 2025-2030全球调湿蒸纱机行业调研及趋势分析报告
- 2025年度个人借款延期还款及担保人责任合同2篇
- 2025年度个人房产交易定金担保合同范本2篇
- 2025年度企业间技术秘密保密及合作开发合同4篇
- 励志课件-如何做好本职工作
- 2024年山东省济南市中考英语试题卷(含答案解析)
- 2024年社区警务规范考试题库
- 2024年食用牛脂项目可行性研究报告
- 静脉治疗护理技术操作标准(2023版)解读 2
- 2024年全国各地中考试题分类汇编(一):现代文阅读含答案
- 2024-2030年中国户外音箱行业市场发展趋势与前景展望战略分析报告
- GB/T 30306-2024家用和类似用途饮用水处理滤芯
- 家务分工与责任保证书
- 消防安全隐患等级
- 温室气体(二氧化碳和甲烷)走航监测技术规范
评论
0/150
提交评论