单片机应用技术-基于51单片机的智能小车设计与开发 课件 项目13:智能小车运行时间统计_第1页
单片机应用技术-基于51单片机的智能小车设计与开发 课件 项目13:智能小车运行时间统计_第2页
单片机应用技术-基于51单片机的智能小车设计与开发 课件 项目13:智能小车运行时间统计_第3页
单片机应用技术-基于51单片机的智能小车设计与开发 课件 项目13:智能小车运行时间统计_第4页
单片机应用技术-基于51单片机的智能小车设计与开发 课件 项目13:智能小车运行时间统计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机应用技术APPLICATIONTECHNIQUESFORMICROCONTROLLER《微控制器应用技术》课程团队模块四:中断技术应用项目13:智能小车运行时间统计项目13:智能小车运行时间统计STC15W4K32S4系列单片机内部设置了5个16位定时器/计数器T1、T2、T3以及T4,其中T0/T1与传统8051兼容,T2-T4为增强型资源。5个定时器/计数器都具有计数方式和定时方式两种工作方式,不论是工作在定时器模式还是计数器模式,实质都是对脉冲信号进行计数,只不过是计数信号的来源不同。在工作于定时模式时,其计数脉冲的时钟源可通过配置寄存器在系统时钟和系统时钟12分频后的信号两者之间选择。项目13:智能小车运行时间统计01TMOD寄存器高4位控制T1,低四位控制T0。GATE位门控位,为0时,仅由TCON中的TRx来控制;为1时,由TRx和引脚INTx共同控制。M1、M0有4种编码,对应4种工作方式。02

通过AUXR寄存器可以配置T0、T1和T2的时钟频率,以及T2的工作模式;T4T3M寄存器主要是配置T3和T4的工作模式和时钟频率。03

通过配置对应的TxCLKO位,可以设置是否允许将对应的引脚配置为定时器x的时钟输出,1表示允许,0表示不允许。项目13:智能小车运行时间统计1.模式0(16位自动重装载模式)2.模式1(16位不可重装载模式)3.模式2(8位自动重装模式)4.模式3(不可屏蔽中断的16位自动重装载模式)定时器/计数器0有4种工作模式定时器/计数器1除模式3外,其他工作模式与定时器/计数器0相同,T1在模式3时无效,停止计数。定时器T2、T3和T4的工作模式固定为16位自动重装载模式,可以当定时器使用,也可以当串口的波特率发生器和可编程时钟输出。项目13:智能小车运行时间统计①②③④⑤⑥定时器/计数器0工作模式0(16位自动重装载模式)结构图①定时时钟源选择②定时/计数两个模式二选一③门控位决定定时启动是否需要外部引脚共同决定④高8位和低8位寄存器⑤中断溢出标志⑥设置定时器时钟是否在相应引脚输出项目13:智能小车运行时间统计定时器/计数器0工作模式1(16位不可重装载模式)结构图模式1和模式0的区别在于无隐藏的寄存器RL_TH0和RL_TL0,不能实现重装载,为16位不可重装载模式。项目13:智能小车运行时间统计定时器/计数器0工作模式2(8位自动重装模式)结构图模式2的TL0的溢出不仅置位TF0,而且将TH0内容重新装入TL0,TH0内容由软件预置,重装时TH0内容不变,为8位自动重装模式。项目13:智能小车运行时间统计定时器/计数器0工作模式3(不可屏蔽中断的16位自动重装载模式)结构图与工作模式0是一样的。唯一不同的是,一旦中断被打开,那么该中断是不可屏蔽的,即该中断不能被任何中断所打断,当EA=0或ET0=0时都不能屏蔽此中断。项目13:智能小车运行时间统计推荐选用模式0(16位自动重装载模式)的原因1.满足单次1ms计时的需求,方便取整得到秒;2.自动重装载简化程序,又不占用太多中断资源。配置定时器的步骤1.对TMOD、AUXR或T4T3M赋值,以确定Tx的工作方式,得到该模式下最大计数值;2.计算初值,并将初值写入THx和TLx;3.对IE或者IE2赋值,开放中断;4.置位TRx或者TxR,启动定时器;5.从初值开始计数,计到最大值时溢出,产生中断,完成1次定时。项目13:智能小车运行时间统计假设系统时钟为12MHz,配置为模式0,且不分频,要实现1ms定时,计算定时器初值。定时器初值计算01不分频,定时器时钟源也为12MHz,定时器计数1个脉冲的时间为1/12M≈83.33ns;02实现1ms定时,需要计数1ms/83.33ns=12000次;03

16位定时器的最大计数值是65536,想要计数12000次那么初值=65536-12000=53536转换为十六进制就是0xD120对应TH0=0xD1、TL0=0x20。项目13:智能小车运行时间统计项目13:智能小车运行时间统计1234配置定时器:通过AUXR寄存器设置T1不分频,TMOD寄存器配置为16位自动重装载模式,装载初值后开启定时器中断和总中断;设计计时逻辑:中断服务函数中,每1ms计数一次,累计1000次即为1秒,更新时间变量time;实现人机交互:按键按下时切换启停状态,奇数次按下启动定时器(TR1=1),偶数次按下暂停(TR1=0),暂停后重新启动可累计计时,这是典型的“状态机设计”思路;同步显示:主函数中实时读取time变量,通过数码管动态扫描显示,确保时间更新无延迟。(同项目6)项目

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论