基于HAL库的STM32F1开发实践教程-课件 07.PWM_第1页
基于HAL库的STM32F1开发实践教程-课件 07.PWM_第2页
基于HAL库的STM32F1开发实践教程-课件 07.PWM_第3页
基于HAL库的STM32F1开发实践教程-课件 07.PWM_第4页
基于HAL库的STM32F1开发实践教程-课件 07.PWM_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

山东师范大学信息科学与工程学院张宝译PWM任务要求本任务要求设计一个可通过定时器进行控制的呼吸灯系统,具体要求如下:LED9灯的显示效果为“逐渐变亮”然后“逐渐变暗”(重复此过程)山东师范大学信息科学与工程学院设计思路山东师范大学信息科学与工程学院想一想,在中学物理课程中,调整灯泡的亮度,咱们怎么实现?在传统的模拟控制灯亮度调整中,可以采用一个可变电阻。调整电阻值变大或变小;流经这个电阻的电流也随之增加或减少,从而改变了LED的电流值,使灯泡的亮度相应变大或变小。设计思路—模拟电路部分缺点尽管模拟控制看起来可能直观而简单,但它并不总是非常经济或可行的。(不适用我们STM32开发)1.模拟电路容易随时间漂移,因而难以调节。能够解决这个问题的精密模拟电路可能非常庞大、笨重(如老式的家庭立体声设备)和昂贵。2.模拟电路还有可能严重发热,其功耗相对于工作元件两端电压与电流的乘积成正比。3.模拟电路还可能对噪声很敏感,任何扰动或噪声都肯定会改变电流值的大小。山东师范大学信息科学与工程学院设计思路山东师范大学信息科学与工程学院调整亮的时间比例实现灯亮度的逐步控制设计思路山东师范大学信息科学与工程学院PWM是PulseWidthModulation的缩写,中文意思就是脉冲宽度调制,简称脉宽调制。它是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,其控制简单、灵活和动态响应好等优点而成为电力电子技术最广泛应用的控制方式,其应用领域包括测量,通信,功率控制与变换,电动机控制、伺服控制、调光、开关电源,甚至某些音频放大器,因此学习PWM具有十分重要的现实意义。实现功能山东师范大学信息科学与工程学院实现LED9的呼吸灯效果!

这里面的脉冲宽度即在一个周期内输出高电平的时间与整个周期的比值,也叫占空比。设计思路山东师范大学信息科学与工程学院用PWM技术实现模拟信号:若调制信号的频率远远大于信号接受者的分辨率,则接收者并不能感知数字信号的0和1,它获得的是信号的平均效果,平均值与占空比成有关(正比关系)。

PWM采用调整脉冲占空比的方式达到调整电压与电流的效果。如:在1ms内,高电平占0.3ms,低电平占0.7ms。LED灯通电0.3ms,断电0.7ms,这样的脉冲占空比为30%。PWM工作模式山东师范大学信息科学与工程学院常用的PWM模式有以下两种:PWM1模式山东师范大学信息科学与工程学院常用的PWM模式有以下两种:PWM信号的生成样式与计数器寄存器(TIMx_CNT)、自动重载寄存器(TIMx_ARR)、捕获/比较寄存器(TIMx_CCRy)PWM2模式山东师范大学信息科学与工程学院常用的PWM模式有以下两种:PWM信号的生成样式与计数器寄存器(TIMx_CNT)、自动重载寄存器(TIMx_ARR)、捕获/比较寄存器(TIMx_CCRy)PWM占空比调节图山东师范大学信息科学与工程学院PWM输出频率是不变的,改变的是CCR寄存器内的值,此值的改变将导致PWM输出信号占空比的改变。选择呼吸灯对应的定时器山东师范大学信息科学与工程学院实现呼吸灯流程分析山东师范大学信息科学与工程学院2.默认PWM的输出功能时关闭的,需要调用函数开启。HAL_TIM_PWM_Start(&htim4,TIM_CHANNEL_3);(开启)HAL_TIM_PWM_Stop(&htim4,TIM_CHANNEL_3);(停止)1.使用CubeMX软件对定时器4通道3进行初始化配置。(PB8对应TIM4_CH3)3.主循环中,编写程序控制PWM输出信号的占空比STM32CubeMX配置山东师范大学信息科学与工程学院打开最左侧的Timers选项,在其内部选项中,点击TIM4。在中间列,“TIME4MODEandConfiguration”中,Mode参数作如下设置:ClockSource:InternalClockChannel3:PWMGenerationCH3STM32CubeMX配置山东师范大学信息科学与工程学院“TIME4MODEandConfiguration”中,Configuration中参数作如下设置:Prescaler:72-1

CounterMode:Up

CounterPeriod:500-1auto-reloadpreload:EnablePWMGenerationChannel3中,Mode:PWMmode1Pulse:100CHPolarity:Low代码山东师范大学信息科学与工程学院在初始化函数中调用HAL_TIM_PWM_Start()函数代码山东师范大学信息科学与工程学院voidTIM_SetTIM4Compare3(uint32_tcompare){ TIM4->CCR3=compare;}定时器4通道三占空比值(灯的亮度值)代码山东师范大学信息科学与工程学院while(1){HAL_Delay(5);if(dir)led9pwmval++;elseled9pwmval--;if(led9pwmval>360)dir=0;if(led9pwmval==0)dir=1;TIM4->CCR3=led9pwmval;}500T11003000T2TIM4_ARR的值TIM4_CNT的值TIM4_CCR3的值PWM1模式有效电平为低

uint8_tdir=1; uint16_tled9pwmval=0;代码山东师范大学信息科学与工程学院while(1){HAL_Delay(5);if(dir)led9pwmval++;elseled9pwmval--;if(led9pwmval>360)dir=0;if(led9pwmval==0)dir=1;TIM4->CCR3=led9pwmval;}500T11003000T2TIM4_ARR的值TIM4_CNT的值TIM4_CCR3的值PWM1模式有效电平为低

uint8_tdir=1; uint16_tled9pwmval=0;实践

温馨提示

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

评论

0/150

提交评论