单片机原理,接口及应用---第5章 单片机的定时计数器与串行接口PPT.ppt

单片机原理,接口及应用---第5章 单片机的定时计数器与串行接口PPT.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机原理,接口及应用---第5章 单片机的定时计数器与串行接口PPT

单片机原理、接口及应用 ---嵌入式系统技术基础; 第1节 单片机的定时器/计数器;1 定时/计数器的结构与工作原理 2 定时器/计数器的控制 3 定时/计数器的工作方式 4 定时/计数器的编程和应用 ;定时器——可根据设定时间进行计时的装置 计数器——可对输入脉冲数进行统计的装置;单片机纯软件定时/计数方法: 定时——空循环预定周次,等待预定时间 计数——读取I/O口电平,统计变化次数;;定时/计数器的结构;1 定时/计数器的结构与工作原理 2 定时器/计数器的控制 3 定时/计数器的工作方式 4 定时/计数器的编程和应用 ;T0;GATE; T1;GATE;1 定时/计数器的结构与工作原理 2 定时器/计数器的控制 3 定时/计数器的工作方式 4 定时/计数器的编程和应用 ;工作方式0——使用13位的定时/计数器(THi7-0+TLi4-0);解:设fosc=12MHz 计数初值a=213-5×1000×12/12=3192= 1100 0111 1000;工作方式1——使用16位定时/计数器(THi7-0+TLi7-0);延时时间 t = (28-a)×12/fosc (微秒) 可自动重装载计数初值(TLx溢出后THx中数值可自动装入TLx适合于作串口波特率发生器(定时精度较高);T0的工作方式3——主要用于当T1用作串行口的波特率发生器的情况 TH0+TF1+TR1组成的8位定时器 TL0+TF0+TR0组成的8位定时/计数器 T1组成的无中断功能的定时器 特点:方式3下T0可有2个具有中断功能的8位定时器;使用定时/计数器的步骤:; ;每个机器周期包括12个振荡周期,若晶振频率 为6MHz,一个机器周期: 定时时间为TC: Tp为机器周期: 计数个数为: 则应装入的计数初值为:; ;ET0 = 1; EA = 1; void tx_srv (void) interrupt n { … … };4)启动定时器: TR0 = 1 或 TR1= 1 ;1 定时/计数器的结构与工作原理 2 定时器/计数器的控制 3 定时/计数器的工作方式 4 定时/计数器的编程和应用 ;例1 假设系统时钟频率采用6MHz,要在P1.0上输出一个周期为2ms的方波,如图所示。 ; (1)计算初值X 设初值为X,则有:机器周期为 12/(6×106)=2×10-6 (216-X)×2×10-6=1×10-3 216-X=500 X=65036 X化为16进制,即X=FE0CH=1111111000001100B。 所以,T0的初值为: TH0=0FEH TL0=0CH (2)初始化程序设计 对寄存器IP、IE、TCON、TMOD的相应位进行正确设???,将计数初值送入定时器中。; (3)程序设计 中断服务程序除产生方波外,还要注意将计数初值重新装入定时器中,为下一次中断作准备。 参考程序: ORG 0000H RESET: AJMP MAIN ;转主程序 ORG 000BH ;T0的中断入口 AJMP IT0P ;转T0中断处理程序IT0P ORG 0100H MAIN: MOV SP,#60H ;设堆栈指针 MOV TMOD,#01H ;设置T0为方式1 ACALL PT0M0 ;调用初始化子程序PT0M0 HERE: AJMP HERE ;自身跳转 PT0M0: MOV TL0,#0CH ;T0中断服务程序,T0重新置初值 MOV TH0,#0FEH SETB TR0 ;启动T0 SETB ET0 ;允许T0中断 SETB EA ;CPU开中断 RET ; ITOP: MOV TL0,#0CH ;T0中断服务子程序,T0置初值 MOV TH0,#0FEH CPL P1.0 ;P1.0的状态取反 RETI 查询方式的参考程序: MOV TMOD,#01H ;设置T0为方式1 SETB TR0 ;接通T0 LOOP: MOV TH0,#0FEH ;T0置初值 MOV TL0,# 0CH LOOP1:JNB TF

文档评论(0)

erfg4eg + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档