- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二、方式和控制寄存器 2、TCON控制寄存器 TCON (88H) TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TR1(TR0):T1(T0)运行控制位 TF1(TF0):T1(T0)溢出中断请求标志位 三、定时/计数器的工作方式(T0为例) 1、方式0(13位) 振荡器 ÷12 定时方式 计数方式 T0(P3.4) TL0 低5位 TH0 8位 TF0 ≥1 TR0 GATE INT0(P3.2) 1 C/T=0 C/T=1 控制 计数范围:1 ~ 213(8192) 三、定时/计数器的工作方式(T0为例) 2、方式1(16位) 振荡器 ÷12 定时方式 计数方式 T0(P3.4) TL0 8位 TH0 8位 TF0 ≥1 TR0 GATE INT0(P3.2) 1 C/T=0 C/T=1 控制 计数范围:1 ~ 216(65536) 三、定时/计数器的工作方式(T0为例) 3、方式2(8位重装) 振荡器 ÷12 定时方式 计数方式 T0(P3.4) TF0 ≥1 TR0 GATE INT0(P3.2) 1 C/T=0 C/T=1 控制 TL0 8位 TH0 8位 重装初值控制 计数范围:1 ~ 28(256) 三、定时/计数器的工作方式(T0为例) 4、方式3(8位,只T0有) 振荡器 ÷12 定时方式 计数方式 T0(P3.4) TF0 ≥1 TR0 GATE INT0(P3.2) 1 C/T=0 C/T=1 控制 TL0 8位 计数范围:1 ~ 28(256) 振荡器 ÷12 定时方式 TF1 TH0 8位 TR1 控制 T1为波特率发生器,可工作在方式0、1、2;T0被拆成两个8位定时/计数器,借用T1的触发位和溢出标志。 四、应用 1、初始化编程 1) 确定并设置工作方式——对TMOD赋值 原则:计数值最大计数值 例:设机器周期为1us,则 延时100us:延时100us→100次计数→各种方式均可(常为1、2) 延时50ms:延时50ms→50000次计数→方式1适合 2) 确定并预置初值——TH0(TH1)、TL0(TL1)赋值 3) 按需要开定时/计数器中断——直接对IE赋值 4) 启动定时/计数器工作——将TR0或TR1置“1” 定时时间:开始计数→溢出 定时方式:C=M-X=M-t/T 计数方式:C=M-X 例1 设单片机系统的晶振频率为12MHz,现用T0实现5ms的延时,试编写初始化程序。 解: MOV TMOD, #01H MOV TH0, #0ECH MOV TL0 , #78H SETB TR0 2) 计算并预置初值 3) 启动定时器 C=M-X=65536-5000=60536=0EC78H TH0=0ECH, TL0=78H 机器周期 T=12×1/12=1us 计数值 X=t/T=5ms/1us=5000(可选方式0或1) TMOD=0 0 0 0 0 0 0 1 B=01H(方式1) T1 T0 GATE C/T M1 M0 2、应用举例 1) 确定方式 例2 设单片机系统的晶振频率为12MHz,编程实现P1.0输出周期为400us的方波。 确定方式并计算初值 机器周期 T=12×1/12=1us 计数值 X=t/T=200us/1us=200(可选任一方式) 初值 C=M-X=65536-200=65336=FF38H TH0=0FFH, TL0=38H TMOD=0 0 0 0 0 0 0 1 B=01H 方式一: T1 T0 GATE C/T M1 M0 初值 C=M-X=256-200=56=38H TH0=38H, TL0=38H TMOD=0 0 0 0 0 0 1 0 B=02H 方式二: T1 T0 GATE C/T M1 M0 解:[分析] 输出周期为400us的方波,则需定时200us,对P1.0输出取反一次即可 400us 200us 源程序 方式一: ORG 0000H LJMP START ORG 0100H START: MOV TMOD, #01H ; 设T0方式一定时 MOV TH0, #0FFH MOV TL0, #38H ; 赋初值 SETB TR0 ;启动T0 WAIT: JBC TF0, NEXT ;查询计数 溢出 SJMP WAIT NEXT: CPL P1.0 ; 输出取反 MOV TH0, #0FFH MOV TL0, #38H ; 重赋初值 SJMP WAIT
您可能关注的文档
最近下载
- 丽声北极星自然拼读绘本第一级 Lola and the King 课件.pptx
- 人教版2024-2025学年九年级数学上册10月月考试题[含答案].pdf
- 品质工程教学课件.pptx
- 鲁教版五四制初一年级上册册数学知识点.pdf VIP
- 《聪明的牧羊人——欧洲民间故事精选》名著导读课件.pptx VIP
- QBT 2578-2002 陶瓷原料化学成分光度分析方法.docx VIP
- 《葡萄酒葡萄酒》课件.pptx VIP
- 新人教版高中数学选择性必修第一册全套教案含情景引入核心素养word版.docx VIP
- you and me(君と僕) 松井佑贵 吉他指弹 吉他谱.pdf
- 非急救转运协议书模板.docx
文档评论(0)