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

第6章 MCS-51单片机内部资源及编程 羊大立 E-mail: 309747726@ yangdali @ 主要内容 一、并行输入/输出接口 二、定时/计数器 三、串行接口 四、中断系统 一、并行输入/输出接口 51单片机有4个并口:P0~P3 它们可直接通过SFR方式访问。 在C51中使用时,应包含REG51.H或REG52.H头文件,否则需要自己作定义。 二、定时/计数器 1、定时/计数器的主要特性 2、T0、T1的结构及工作原理 3、TMOD和TCON寄存器 4、定时/计数器的工作方式 5、定时/计数器的编程及应用 1、定时/计数器的主要特性 (1)51子系列有两个16位的可编程定时/计数器:T0和T1,52子系列有三个(多一个T2)。 (2)每个定时/计数器既可以对系统时钟计数实现定时,也可以对外部信号计数实现计数功能。 (3)每个定时/计数器都有多种工作方式,其中T0有四种工作方式;T1和T2有三种工作方式。 (4)每一个定时/计数器的定时计数时间到时会产生溢出信号,使相应的溢出位置位,溢出可通过查询或中断方式处理。 2、T0、T1的结构及工作原理 2、T0、T1的结构及工作原理 T0、T1都是加法计数器,在使用时须注意: (1)计数值初值的确定 对于加法计数器,每来一个计数脉冲,加法器中的内容加1个单位,当由全1加到全0时计满溢出,因而,如果要计N个单位,则首先应向计数器置初值为X,且有: 初值X = 最大计数值(满值)M-计数值N 在不同的工作方式下,最大计数值(满值)不一样,当定时器/计数器工作于R位计数方式时,它的最大计数值(满值)为2的R次幂。 2、T0、T1的结构及工作原理 (2)关于外部计数脉冲的频率 当定时/计数器工作于计数方式时,对芯片引脚T0(P3.4)或T1(P3.5)上的输入脉冲计数,计数过程如下:在每一个机器周期的S5P2时刻对T0(P3.4)或T1(P3.5)上信号采样一次,如果上一个机器周期采样到高电平,下一个机器周期采样到低电平,则计数器在下一个机器周期的S3P2时刻加1计数一次。因而需要两个机器周期才能识别一个计数脉冲,所以外部计数脉冲的频率应小于振荡频率的1/24。 3、TMOD和TCON寄存器 对定时/计数器的控制要通过访问方式寄存器TMOD和控制寄存器TCON进行。 (1)方式寄存器TMOD TMOD:定时/计数器方式寄存器。用于设定T0和T1的工作方式。其格式如下: (1)方式寄存器TMOD 其中: M1、M0为工作方式选择位 ,用于对T0和T1的工作方式进行选择,如下所示: (1)方式寄存器TMOD C/T*:定时或计数方式选择位,当C/T=1时工作于计数方式;当C/T=0时工作于定时方式。 GATE:门控位,用于控制定时/计数器的启动是否受外部中断请求信号的影响。 (2)控制寄存器TCON 其中: TF1:定时/计数器T1的溢出标志位,当定时/计数器T1计满时,由硬件使它置位,如中断允许则触发T1中断。进入中断处理后由内部硬件电路自动清除。 (2)控制寄存器TCON TR1:定时/计数器T1的启动位,可由软件置位或清零,当TR1=1时启动;TR1=0时停止。 TF0:定时/计数器T0的溢出标志位,功能类同TF1。 TR0:定时/计数器T0的启动位,功能类同TR1。 低4位与中断相关。 4、定时/计数器的工作方式 4种: 方式0 方式1 方式2 方式3 (1)方式0 方式0结构图 (1)方式0 方式0是13位的定时/计数方式,因而最大计数值(满值)为2的13次幂,等于8192。如计数值为N,则置入的初值X为: X = 8192 - N 如定时/计数器T0的计数值为1000,则初值为7192,转换成二进制数为1110000011000B,则应让TH0,TL0。 (2)方式1 方式1的结构与方式0结构相同,只是把13位变成16位, 16位的加法计数器被全部用上。 由于是16位的定时/计数方式,因而最大计数值(满值)为2的16次幂,等于65536。如计数值为N,则置入的初值X为: X = 65536 - N (3)方式2 方式2结构图 (3)方式2 方式2下,16位的计数器只用了8位来计数。具体用TL0(或TL1)的8位来进行计数,而TH0(或TH1)用于保存初值。 当TL0(或TL1)计满时则溢出,一

文档评论(0)

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

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

1亿VIP精品文档

相关文档