1 智能小车运动控制系统设计与实现_第1页
1 智能小车运动控制系统设计与实现_第2页
1 智能小车运动控制系统设计与实现_第3页
1 智能小车运动控制系统设计与实现_第4页
1 智能小车运动控制系统设计与实现_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

项目3智能小车运动控制系统设计与实现嵌入式技术及应用可控LED流水灯设计引导案例在嵌入式系统应用中,经常会遇到以下情况:周期性执行某任务,如每隔固定时间完成一次AD采集;延时一定时间执行某个任务,如交通灯信号变化;显示实时时间,如万年历;产生不同频率的波形,如MP3播放器;产生不同脉宽的波形,如驱动伺服电机;测量脉冲的个数,如测量转速;测量脉冲的宽度,如测量频率;以上情况,可以归纳为两种情况:一种是定时(即对内部脉冲的计数操作),完成与时间相关的任务(如以上前5种情况);另一种是计数(即对外部输入的计数操作),完成脉冲个数、宽度和频率的测量等(如以上后2种情况)。定时器是非常重要的组件,用于实现各种与时间相关的功能。以下是一些定时器的常见应用场景。01任务调度02定时中断03计时和延时04脉冲宽度调制可以用来按照设定的时间间隔执行特定的任务。可以设置一个特定的时间间隔,在到达预定时间时触发一个中断信号用于计时操作。如测量某个操作的执行时间;还可以用于实现精确的延时操作。PWM信号广泛应用于电机控制、LED亮度调节、音频信号发生器等领域性。05计数器用于计算某个事件的频率或者脉冲数量。定时器本项目以“智能小车运动控制系统的设计与实现”为例,学习STM32F4系列微控制器的定时器应用开发。任务3.1智能小车循迹状态获取的应用开发任务描述:要求设计一个应用程序,以实现周期性地获取智能小车循迹的状态。任务要求使用反射式红外光电传感器电路板作为智能小车的循迹模块,实现智能小车的巡线前进功能。测试场地路面有黑白两色,其中黑色路面为跑道,宽30mm,智能小车可循此跑道前进。智能小车所用红外光电管、循迹模组及整车如图3-1所示。任务分析03如果要求智能小车以一定的速度沿着黑色跑道前进,则微控制器需要以较短的周期频繁地获取循迹板上8路二进制数字信号,进而才能通过及时判断车身状态以调整电机的转向。智能小车的此要求可通过定时器的基本定时功能来实现,因此本任务涉及的知识点如下。(1)STM32F4系列微控制器定时器的基本功能特性。(2)STM32F4系列微控制器定时器的基本定时功能的编程配置方法。3.1.2 定时器概述7知识链接041 基本概念8--

南昌大学“卓越”辅导员培养工程建设Timer基本概念时钟定时器和计数器的区别定时器是对周期固定的脉冲信号进行计数,如MCU内部的外设时钟(APB)。计数器是对周期不确定的脉冲信号进行计数,如MCU的I/O引脚所引入的外部脉冲信号。结论:定时器和计数器本质上都是计数器,定时器是计数器的一种特例。周期固定或者不固定9南昌大学“卓越”辅导员培养工程建设Timer滴水实例定时器和计数器的区别假如有一个水容器1000滴水刚好装满问:如果每秒滴入1滴水,还需多长时间才能将其装满?计数的概念计数初值定时的概念计数终值答:还需滴入500滴水才能将其装满,第501滴水时容器溢出。答:还需500秒时间才能将其装满,第501秒时容器溢出。问:还需滴入多少滴水才能将其装满?初始值已经装入500滴水10--

南昌大学“卓越”辅导员培养工程建设定时器(容器容量)的计数范围16位定时器的最大计数值为65535位宽计数值处理关注问题定时器初值(容器初始已有水滴数)的设置定时器终值(容器溢出时的水滴数)的设置定时器(容器)溢出以后的需要完成的操作关注问题Timer定时器使用所关注的三个问题11两个概念Timer时钟频率计数时间在定时器模式下,计数单元记一次数所花费的时间,它是时钟频率的倒数定时器模式的两个概念在定时器模式下,送入定时器的周期性时钟信号的频率定时时间

=

计数值

*

计数时间定时时间

=

计数值

/

时钟频率定时时间计算公式以STM32F407微控制器为例,送入定时器的时钟频率为168M假设计数单元在1s内计数1680000次,则计数时间为1us122 STM32微控制器的定时器概述13--

南昌大学“卓越”辅导员培养工程建设Timer分类STM32定时器家族外设定时器常规定时器高级定时器通用定时器基本定时器专用定时器看门狗定时器实时时钟低功耗定时器内核定时器系统节拍定时器STM32定时器家族按照定时器的位置按照定时器的功能14--

南昌大学“卓越”辅导员培养工程建设Timer几乎没有任何输入/输出通道,常用作时基,实现基本的定时/计数功能除具备通用定时器的功能外,还具备带死区控制的互补信号输出、紧急刹车关断输入等功能,可用于电机控制和数字电源设计基本定时器通用定时器高级定时器常规定时器常规定时器分类具有多路独立的捕获比较通道,可以完成定时计数,输入捕获,输出比较等功能。15--

南昌大学“卓越”辅导员培养工程建设Timer2

16

高级定时器2

32

通用定时器8

16

通用定时器应用:数字频率计智能家用电器定时控制设备电机驱动STM32F40716定时器应用--

南昌大学“卓越”辅导员培养工程建设Timer详细特性STM32F407定时器的详细特性17定时器类型Timer计数器分辨率计数器类型预分频系数DMA请求生成捕获比较通道互补输出通道最大接口时钟最大定时器时钟(MHz)高级TIM1TIM816位递增、递减、增/减1~65536有4有84(APB2)168通用TIM2TIM532位递增、递减、增/减1~65536有4无42(APB1)84TIM3TIM416位递增、递减、增/减1~65536有4无42(APB1)84TIM916位递增1~65536无2无84(APB2)168TIM10TIM1116位递增1~65536无1无84(APB2)168TIM1216位递增1~65536无2无42(APB1)84TIM13TIM1416位递增1~65536无1无42(APB1)84基本TIM6TIM716位递增1~65536有0无42(APB1)84Timer时钟频率定时器的时钟频率TIM2/3/4/5/6/7/12/13/14TIM1/8/9/10/11注意:TIM2~TIM7、TIM12~TIM14的时钟为APB1的时钟的两倍即84MHz;APB2总线时钟为2分频即84M,TIM1、TIM8~TIM11的时钟为APB2时钟的两倍即168MHz。--HCLK:高速总线时钟,提供给存储器、DMA和Cortex内核外设总线时钟APB1外设总线时钟APB218Timer主要功能定时计数输出比较输入捕获计数内部时钟,即定时器模式计数外部脉冲,即计数器模式捕获时保存定时器的当前计数值捕获时,可选择触发捕获中断触发捕获的信号边沿类型可选择(上升沿,下降沿,双边沿)--

南昌大学“卓越”辅导员培养工程建设定时器PWM输出电平翻转单脉冲输出强制输出193.1.2 HAL库外设模块设计方法20Timer简单外设设计GPIO外设使用引脚初始化数据类型GPIO_InitTypeDef来描述GPIO引脚的属性:引脚编号、工作模式、输出速度等简单外设定时/计数功能输出比较功能输入捕获功能复杂外设定时器外设具有三类功能:每一类功能都需要单独的初始化数据类型简单外设的设计方法21--

南昌大学“卓越”辅导员培养工程建设复杂外设设计设计了统一的外设句柄数据类型PPP_HandleTypeDef(PPP代表外设名称)句柄设计编程模型通用接口函数复杂外设设计了轮询、中断和DMA三种编程模型设计四类通用的接口函数Timer三种基本设计方法22--

南昌大学“卓越”辅导员培养工程建设外设句柄Timer外设句柄数据类型的组成12345Handle

structureInstance(外设实例)Initialization(初始化配置参数)Status(外设状态)DMA通道句柄I/O

Buffer(I/O缓冲区)TIM1TIM2orErroror …时间基准功能Ready or BusyI/Obufferon

addressLinkedtoDMA

channel捕获/比较通道or可选模块,串口和A/D转换器包含该模块,而定时器没有包含231.typedef

struct

2.

{*hdma[7];Lock;

TIM_TypeDef*Instance;TIM_Base_InitTypeDef Init;HAL_TIM_ActiveChannel

Channel;DMA_HandleTypeDefHAL_LockTypeDef7.IO

HAL_TIM_StateTypeDef State;//

定时器寄存器的基地址定义//

时基功能的配置参数定义//捕获/比较通道的定义//

DMA通道句柄定义//

保护锁类型定义//定时器运行状态定义9.}

TIM_HandleTypeDef;定时器句柄Timer定时器句柄结构的组成定时器实例,如TIM1和TIM2等24--

南昌大学“卓越”辅导员培养工程建设定时器句柄Timer定时器句柄结构的组成1.typedef

struct

2.

{*Instance;*hdma[7];Lock;TIM_TypeDefTIM_Base_InitTypeDef Init;HAL_TIM_ActiveChannel

Channel;DMA_HandleTypeDefHAL_LockTypeDef7.IO

HAL_TIM_StateTypeDef State;//

定时器寄存器的基地址定义//

时基功能的配置参数定义//捕获/比较通道的定义//

DMA通道句柄定义//

保护锁类型定义//定时器运行状态定义9.}

TIM_HandleTypeDef;定时器的初始化配置参数251.typedef

struct

2.

{*Instance;Init;TIM_TypeDefTIM_Base_InitTypeDefHAL_TIM_ActiveChannel

Channel;DMA_HandleTypeDef *hdma[7];HAL_LockTypeDef Lock;IO

HAL_TIM_StateTypeDef State;//

定时器寄存器的基地址定义//

时基功能的配置参数定义//捕获/比较通道的定义//

DMA通道句柄定义//

保护锁类型定义//定时器运行状态定义9.}

TIM_HandleTypeDef;定时器句柄Timer定时器句柄结构的组成DMA通道句柄261.typedef

struct

2.

{*Instance;Init;//

定时器寄存器的基地址定义//

时基功能的配置参数定义// /TIM_TypeDefTIM_Base_InitTypeDefHAL_TIM_ActiveChannel

Channel;DMA_HandleTypeDef *hdma[7];HAL_LockTypeDef Lock;IO

HAL_TIM_StateTypeDef State;9.}

TIM_HandleTypeDef;定时器句柄Timer定时器句柄结构的组成外设状态保护锁是HAL库提供的一种安全机制,以避免对外设的并发访问27--

南昌大学“卓越”辅导员培养工程建设外设编程模型Timer三种外设编程模型轮询方式中断方式DMA方式编程模型HAL_TIM_Base_Start_IT(TIM_HandleTypeDef*htim);HAL_TIM_Base_Stop_IT(TIM_HandleTypeDef

*htim);HAL_TIM_Base_Start_

温馨提示

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

最新文档

评论

0/150

提交评论