单片机与上位机软件设计项目3 汽车生产线监控.pptVIP

单片机与上位机软件设计项目3 汽车生产线监控.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* ②工作方式1 当M1M0为01时,定时计数器工作于方式1,方式1的结构与方式0相同,只是把13位变成16位。 图 3-9 T0、T1方式1结构图 * 在方式1下,16位的加法计数器被全部用上,TL0(或TL1)作低8位,TH0(或TH1)作高8位。计数时,当TL0(或TL1)计数满时向TH0(或TH1)进位,当TH0(或TH1)也计数满时,使TF0(或TF1)置位,向CPU提出中断申请。可以通过中断或者查询的方式来处理溢出信号TF0(或TF1)。由于是16位计数器,最大计数值为216 = 65536。 C/T =1 时,则为计数模式,有:N=65536-初值 C/T =0 时,则为定时模式,有:T=(65536-初值)×机器周期 对于12MHz频率的单片机,最长的计时时间为65536?s=65.536ms。 当计数器计数满溢出后,计数器的计数过程并不会结束,当有计数脉冲来时同样的会进行加1计数,只是这是计数器从0开始计数,即是满值计数。如果要重新实现N个单位计数,则需要重新装入初值,这点在编程的时候务必注意。 * ③工作方式2 当M1M0为10时,定时计数器工作于方式2,如图3-10所示。 图3-10 T0、T1方式2结构图 方式2下,16位的计数器只用了8位来计数,用的是TL0(或TL1)的8位来进行计数,而TH0(或TH1)用于保存初值。最大计数值为28= 256,当TL0(或TL1)计满时则溢出,一方面使TF0(或TF1)置位,另一方面溢出信号又会触发图6.5上的三态门,使三态门导通,TH0(或TH1)的值就自动装入TL0(或TL1)。 * C/T =1 时,则为计数模式,有:N=256-初值 C/T =0 时,则为定时模式,有:T=(256-初值)×机器周期 对于12MHz频率的单片机,最长的计时时间为256?s。 这种方式的优点是定时初值可自动恢复;缺点是计数范围小,适用于需要重复定时,而定时范围不大的应用场合。 由于方式2计满后,溢出信号会触发三态门自动地把TH0(或TH1)的值装入TL0(或TL1)中,因而如果要重新实现N个单位的计数,不用重新置入初值。 * ④ 工作方式3 方式3只有定时/计数器T0才有,当M1M0两位为11时,定时/计数器T0工作于方式3。 图3-11 T0方式3结构图 * 方式3下,定时/计数器T0被分为两个部分TL0和TH0,其中,TL0可作为定时/计数器使用,占用T0的全部控制位:GATE、 C/T、TR0和TF0;而TH0固定只能作定时器使用,对机器周期进行计数,这时它占用定时/计数器T1的TR1位、TF1位和T1的中断资源。 由于其TF1、TR1被T0的TH0占用,计数器溢出时,只能将输出信号送至串行口,即用作串行口波特率发生器。 定时/计数器的四种工作方式,其实就是为了让定时/计数器更加具有通用性,适用更对的情况而设置的,通常使用的是方式1和方式2,根据具体的要求,选择使用相应的工作方式。方式0已经基本不使用,方式3在T1做串行口波特率发生器时可以提供2个8位的计数器,在特殊情况下可以采用。所以重点掌握方式1和方式2 。 * 3)定时/计数器的应用 (1)定时/计数器应用步骤 ①定时/计数器的初始化 ● 确定工作方式寄存器TMOD的值。即设置定时或计数功能、启动方式、工作方式。 ● 给定时器赋初值。不同工作方式,算法不同。 ● 根据需要开放中断。开放中断总控位EA和定时器中断控制位ET1或ET0。 ● 启动定时器。即TR0(或TR1)置1。 ②编制定时/计数器溢出中断服务程序或溢出查询程序 * (2)定时/计数器的应用举例 ①简易秒表的设计 利用定时器精确定时,输出用P1口的8位LED灯显示,十位数的二进制码由高四位显示,个位数的二进制码由第四位显示。秒表时间范围是00~59。 第一步,根据要求设计硬件电路图。 注意:此图中采用了总线的画法,使电路图看起整体更美观。 图3-13 简易秒表仿真电路图 * 总线 ● 放置总线。选择最左边工具条中的总线模式,Buses Mode,就可画出蓝色总线。 ● 与总线相连接的导线放置成斜线,即按着键盘的Ctrl键放置导线。 ● 放置网络标号。网络标号相同的两条线,电路上是相连接的线。具体放置方法:把鼠标移动到导线位置,变成小手状,按下键盘的A键,弹出的对话框中string一栏中输入net=“某某网络标号”(一般网络标号都是英文字母加数字,如S0、S2……S7),然后点击ok关闭窗口,再把鼠标移动到要放置网络标号的导线上时候,鼠标就变成带绿点的小手,单击鼠标左键,网络标号放置成功。 ●网络标号还可以自动增序变化。按下键盘的A键打开如图3-14所示的对话框。输入net=d#,然后设置起始数值Count为0,增量In

文档评论(0)

132****9295 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档