- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章单片微机的定时器计数器原理及应用m
实验四 外中断 P1.0_P1.7接8个发光二极管,管脚INT0、INT1接两个按键,分别定义为“+”和“-”。要求:上电全灭, 每按一次“+”键,亮的灯多一盏, 每按一次“-”键,亮的灯减一盏, 当全亮时,再按一次“+”键,则全灭 当全灭时,再按一次“-”键,则全亮 实验报告要求: 1.写明实验日期、桌号 2.写明实验要求; 3.画出硬件接线图 4.编程,加标注 5.写出调试过程,遇到的问题及解决方法 6.总结实验目的,写出收获体会 第六章 单片微机的定时器/计数器原理及应用 6.1 概述 6.2 定时器/计数器T0、T1 6.3 定时器/计数器T2 6.4 监视定时器(看门狗)T3 6.5 定时器/计数器的应用编程 中断条件:TH0,TL0 由全1 全0 M1、M0:工作方式选择位。 3、计数器:TH0、TL0、TH1、TL1 1)TH0、TL0:定时器/计数器0高位字节和低位字节。 字节地址:8CH,8AH,可读可写. 2)TH1、TL1:定时器/计数器1高位字节和低位字节。 字节地址:8DH,8BH,可读可写. 4、定时器/计数器中断: 中断允许寄存器IE 中断优先级寄存器IP 中断矢量 ⒈ 方式0: 13位定时器/计数器(M1=0、M0=0) 计数寄存器组成:THx 高8位和TLx的低5位 (TL0- TL4),共13位。 计数时,TLx 的低5位溢出后向THx进位,THx溢出后将TFx置位,并向CPU申请中断。 最大计数值: 213 = 8192。 最大定时时间: Tmax(12M)=1us*213=8192us (8ms) Tmax(6M)=2us*213 =16384 (16ms) 定时初值计算: 初值 X=213- *t 数据寄存器TH0、TL0(TH1/TL1)的赋值: MOV TH0,#0AEH MOV TL0,#06H SETB TR0 MOV TH0,#0AEH MOV TL0,#06H 定时器/计数器的应用编程: 如果采用中断方式,应进行中断程序入口地址设置. 设置定时器/计数器工作方式(TMOD). 设置定时常数(TH和TL). 如果采用中断方式,应允许定时器中断和CPU中断. 定时器启动.(TCON) 如果采用中断方式:编写中断服务子程序. 如果查询方式:需要用指令清除溢出标志TF. ORG 0100H ST: MOV TMOD,#00H MOV TH0,#0F0H MOV TL0,#0CH SETB P1.0 SETB TR0 L0: JBC TF0,L1 ;时间到,清除溢出标志 AJMP L0 L1: CPL P1.0 MOV TH0,#0F0H ;重写定时常数 MOV TL0,#0CH AJMP L0 END 运行中读定时器/计数器 实验五 定时器 P1.0、P1.1接两个发光管,INT0接一启动按键,启动后两个发光管一亮一灭,亮灭时间为1s,再按按键停止发光管。 ORG 2000 H ;T0中断服务程序 INQP: MOV TH0,#0F0H ;重写定时常数 MOV TL0,#0CH CPL P1.0 ;P1.0变反输出 RETI ;中断返回 ? 查询方式: 【例】已知晶振12MHZ,要求利用定时器T0使图中发光二极管D进行秒闪烁。 解:发光二极管进行秒闪烁。即亮500ms,暗500 ms。晶振12MHz,机器周期1?s,T0方式1最大定时只能65ms余。 方法:取T0方式1,定时50ms,计数10次,即可实现500ms定时。 ① 计算定时初值 T0初值X=216-fosc*t/12=216-50*103=65536-50000=15536 =3CB0H TH0=3CH;TL0=B0H。 ② 设置TMOD: 0000 0 0 01 B = 01H T0方式1 T0 定时 与 无关 T1控制位 ③ 编制程序如下: ORG 00
文档评论(0)