- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
此时,T1通常是作为串行口的波特率发生器使用,以确定串行通信的速率。因为已经没有计数溢出标志位TF1可供使用,因此只能把计数溢出直接送给串行口。若将T1强行设置为模式3,就会使T1立即停止工作。 第六十二页,编辑于星期五:十三点 二十四分。 例4 设定时器/计数器T0工作于方式3,TL0和TH0作为两个独立的8位定时/计数器分别产生250us和500us的定时中断,使P1.1和P1.2产生500us和1000us的方波。设晶振频率为6MHz。 (1)计算计数初值 TL0的计数初值=256-250us/2us=131=83H TH0的计数初值=256-500us/2us=06H 因此,TL0=83H,TH0=06H。 (2)TMOD寄存器初始化 第六十三页,编辑于星期五:十三点 二十四分。 M1M0=11, =0, GATE=0, 同时设 T1工作于方式0 因此: TMOD=03H 位序号 D7 D6 D5 D4 D3 D2 D1 D0 位符号 GATE C/T M1 M0 GATE C/T M1 M0 0 0 0 0 0 0 1 1 第六十四页,编辑于星期五:十三点 二十四分。 (3)程序清单: ORG 0000H AJMP MAIN ORG 000BH ;T0 AJMP TIMER0 ORG 001BH ;T1 AJMP TIMER1 ORG 1000H MAIN: MOV TMOD,#03H MOV TL0, #83H MOV TH0, #06H 第六十五页,编辑于星期五:十三点 二十四分。 SETB TR0 ;启动定时器运行 SETB TR1 SETB ET0 ;允许定时/计数器中断 SETB ET1 SETB EA ;总中断允许 SJMP $ ;等待中断 TIMER0: MOV TL0, #83H CPL P1.1 RETI TIMER1: MOV TH0, #06H CPL P1.2 RETI END 第六十六页,编辑于星期五:十三点 二十四分。 上页 下页 回目录 四、定时/计数器的初始化 初始化一般有以下几个步骤: ⑴ 确定工作方式,对方式寄存器TMOD赋值 ⑵ 预置定时或计数初值,直接将其写入T0、T1中 ⑶ 根据需要对中断允许寄存器有关位赋值,以开放 或禁止定时/计数器中断 ⑷ 启动定时/计数器,将TRi 赋值为“1” 计数初值的设定: 最大计数值M:不同的工作方式M值不同 方式0: M = 213 = 8192 方式1: M = 216 = 65536 方式2、3:M = 28 = 256 第六十七页,编辑于星期五:十三点 二十四分。 计数初值X的计算方法: 计数方式: X = M-计数值(X即为计数值的补码数) 上页 下页 回目录 定时方式: (M - X)×T = 定时值 ∴ X = M-定时值 / T 其中T为机器周期,时钟的12分频, 若晶振为6MHz,则T = 2μs, 若晶振为12MHz,则T = 1μs 第六十八页,编辑于星期五:十三点 二十四分。 上页 下页 回目录 例5-1 若单片机晶振为12MHz, 要求产生500μs定时,试计算X的初值。 解:由于T = 1μs,产生500μs定时, 需要“+1” 500次,定时器方能产生溢出。 采用方式0:( 13位计数器 ) X= 213-(500×10-6 /10-6 ) = 8192 -500 = 7692 = 1E0CH = F00CH 采用方式1:( 16位计数器 ) X= 216 -(500×10-6 /10-6)= 65036 = FE0CH ? 1 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 THi TLi D7D6D5 0 0 0 不用 F00CH = ? 暂时写成 第六十九页,编辑于星期五:十三点 二十四分。 上页 下页 回目录 五、定时/计数器应用举例(自我练习) 1、作定时器用 例5-2 设主频为12MHz,利用定时器T1定时。 使P1.0输出周期为2ms的方波。 解:用P1.0作方波输出信号,周期为2ms的方波 即可用每1ms改变一次电平的方法完成, 故定时值可设置为1ms。 可做“+1”运算1000次,使T1工作在方式0,
您可能关注的文档
最近下载
- 重型车辆事故救援培训.pptx
- 六年级家长会方案最新.pdf VIP
- 久保田D722发动机零件图册.pdf VIP
- 美国《先进制造业国家战略》(英)(202210).pdf VIP
- 中文学科论文写作(第三版)卢卓群-第四章.pptx VIP
- 《水浒传》导读封面+第一周任务卡.docx VIP
- 《工业机器人系统操作与运维》 课件 第31-32讲-点焊机器人.ppt
- 北大荒精神专题讲座党史学习教育课件.pptx VIP
- 2024年关于安全生产重要论述PPT课件.ppt VIP
- Find_My_Network_Accessory_Specification__Developer_Preview_R3-高清版操作说明.pdf VIP
文档评论(0)