历史上的今天

今天是:2024年09月11日(星期三)

正在发生

2019年09月11日 | STM32Cube开发-PWM

发布者:Blissful444 来源: eefocus关键字:STM32Cube  PWM  定时器 手机看文章 扫描二维码
随时随地手机看文章

上一章我们讲解了定时器的基本应用,以及定时器中断。这一章我们讲解通过定时器控制管脚输出PWM信号,控制LED实现呼吸灯。

1.    PWM简介

脉冲宽度调制(PWM),是英文“ Pulse Width Modulation” 的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽度的控制, PWM 原理如图所示:

 

上图就是一个简单的 PWM 原理示意图。图中,我们假定定时器工作在向上计数 PWM模式,且当 CNT=CCRx 时输出 1。那么就可以得到如上的 PWM示意图:当 CNT 值小于 CCRx 的时候, IO 输出低电平(0),当 CNT 值大于等于 CCRx 的时候,IO 输出高电平(1),当 CNT 达到 ARR 值的时候,重新归零,然后重新向上计数,依次循环。改变 CCRx 的值,就可以改变 PWM 输出的占空比,改变 ARR 的值,就可以改变 PWM 输出的频率,这就是 PWM 输出的原理。

2.    stm32cube配置和说明

打开STM32CubeMX新建工程,选择STM32F103ZET6芯片,选择外部高速晶振(HSE)。LED1管脚PB6配置为定时器4的通道1输出。同时TIM4的通道1配置为PWM。

 

 

脉冲宽度调制模式可以生成一个信号,该信号频率由自动重载寄存器(TIMx_ARR)寄存器值决定,其占空比则由捕获/比较寄存器(TIMx_CCRx) 寄存器值决定。在 PWM 模式下,计数器寄存器(TIMx_CNT )总是与捕获/比较寄存器(TIMx_CCRx )进行比较。 下图为PWM边沿对齐模式(递增计数配置)。图中CCRx为捕获/比较寄存器,OCxREF为输出比较信号,CCxIF为中断状态标识位。

当CCRX=4时,当捕获/比较寄存器(TIMx_CCRx)比计数器小时,输出高电平,反之则输出低电平。

下图为PWM中心对齐模式。

这里设置PWM周期为20ms,其他参数为默认不用修改。其中Pulse的为设置脉宽,即为捕获/比较寄存器(TIMx_CCRx)。通过修改它的值可以修改占空比。

 

生成报告,以及生成代码,编译程序。

3.添加应用程序

在tim.c文件中我们找到刚才的定时器初始化函数。


刚才说到的,设置Pulse的值可以修改脉宽。这里我们在main.c文件中添加一个用户PWM设置函数,函数的参数为修改的值。


在把main()函数中添加HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_1)开启定时器PWM输出。在while循环中不断修改脉宽,实现LED亮度渐变。Pulse的值最大为2000,从0开始,每100ms增加100,当增加到2000时,又逐渐递减到0。

在main.c函数前面声明pwm_value,step变量,User_PWM_Setvalue ()函数.编译程序下载(我这里LED等接在PB5,所以用杜邦线连接到PB6)。可以看到LED亮度循环逐渐变亮再变暗。

补充:TIM-PWM重映射配置,这里以TIM3_CH2部分映射为例,其他一样

其他配置跟上面一样,配置对应输入引脚就可以。


关键字:STM32Cube  PWM  定时器 引用地址:STM32Cube开发-PWM

上一篇:STM32HAL库学习(二)CubeMx按键
下一篇:stm32GUI滑杆图形操作界面

推荐阅读

1.人类一直以来都受两个问题困扰:我在哪里?要去往何方?无论是古代还是现代,人们都离不开赖以生存的这个地理空间环境,生活中与我们关联最多的是位置信息。从浑天仪到指南针,在漫长的社会进程中,人们不断探求着确定位置、导向目标的方法和途径。随着卫星导航技术的成熟,这一困扰人类多年的问题得以解决,同时也为人类监测地质灾情提供了新思路:用传...
一、STM32F10x功能模块32位的Cortex-M3微处理器;可嵌套的向量中断控制器(NVIC)和60个可屏蔽中断且有16个可编程优先级;内嵌内存:FLASH:最大512K字节STAM:最大64K字节扩展内存接口(FSMC):支持NAND、SRAM、NOR、PC Card和其他内存设备;2个DMA,共有12个通道;SDIO:支持SD、SDIO、MMC和CE-ATA卡;硬件CRC;带有电压调节器且具有多种低功耗模式:电...
Pickering Interfaces公司作为生产用于电子测试及验证的信号开关与仿真解决方案的领导厂商,将于2020年9月14日至16日期间,参加在上海举办的中国最大规模的汽车和零件测试展览会Automotive Testing Expo China —— 汽车测试及质量监控博览会。 展位号6020,以下介绍一些会被重点展出的产品: 即将推出的新款PXI功率继电器模块40-166系列适用于切换...
智东西(公众号:zhidxcom)作者 | 健恩编辑 | 云鹏智东西9月11日报道,昨天,世界机器人大会再次在北京亦庄拉开帷幕,智东西记者一大早便跨越整个北京城来到这里打探这场大会的最新消息。世界机器人大会自2015年开始举办,迄今为止已成功举办过5次。它不仅是国内一年一度规模最大的机器人产业顶级展会,也是国内机器人产业风向的集中展示。智东西了解...

史海拾趣

问答坊 | AI 解惑

什么是 数码像框?

本帖最后由 jameswangsynnex 于 2015-3-3 19:59 编辑 数码像框可以说是一款概念十足的数码产品,与传统像框相比,数码像框不仅有着传统像框轻便、随意摆放的功能,而且还可以随时随地对数码相片进行灵活地浏览与编辑,你可以更快捷更准确的挑选出 ...…

查看全部问答∨

汽车电子技术的应用与发展趋势

随着汽车工业与电子工业的不断发展,在现代汽车上,电子技术的应用越来越广泛。今天的汽车已经逐步进入了电脑控制的时代。国外专家预测未来3-5年内汽车上装用的电子装置成本将占汽车整车成本的25%以上,汽车将由单纯的机械产品向高级的机电一体化产 ...…

查看全部问答∨

模拟电路--做毕设时心电图设计资料

模拟电路--做毕设时心电图设计资料…

查看全部问答∨

有偿求助:Mobile 5.0下开发CAMERA

   小妹正在做一个课程设计,要在Mobile 5.0下开发CAMERA程序,目前能用DIRECTSHOW打开摄像头并能预览图像。但有两个问题不知道如何解决:第一不知道如何获取某一帧图像数据。第二就是预览的画面很不清楚。因为Moblie SDK中的SHCameraCap ...…

查看全部问答∨

UCOS-II的信号量问题

我用单片机移植UCOS-II创建了信号量后,不使用OSTaskQuery的时候OSSemPend和OSSemPost都可以正常调用,返回值都是OS_NO_ERR 杂个用了OSTaskQuery后OSSemPend和OSSemPost就不动了,返回值为OS_ERR_EVENT_TYPE 搞不懂啊,谁知道哦,帮帮忙 啊…

查看全部问答∨

PXA270核心板方案:

PXA270核心板方案:    CPU:PXA270    SDRAM:128M    FLASH:32M    接口:USB、SDCARD、SERIAL等    LCD+TOUCH:3.5‘    支持WIFI 方案可提供:SCH + PCB + BOOM + WINCE5 ...…

查看全部问答∨

高亮度LED在汽车照明应用中的若干关键问题

replyreload += \',\' + 679337;Timson,如果您要查看本帖隐藏内容请回复…

查看全部问答∨

新做的STM32开发板/USB数据采集板,3.0寸触摸屏,支持LabVIEW多通道示波器

新做的STM32F103ZET6开发板/USB数据采集板,支持LabVIEW多通道数据采集示波器,适合51向STM32转换。硬件资源: ■ 处理器:STM32F103ZET6,主频:72MHz ■ 3种供电方式:USB连接线、外接9V-12V电源、JTAG 调试接口(J-LINK仿真器) ■ ...…

查看全部问答∨

郭天祥的十天学会单片机视频教程

给大家分享一个我自己收藏的51单片机学习资料:郭天祥的十天学会单片机视频教程视频资料总共有好几个G,在我的QQ文件中转站里,想要的请留QQ顶贴我给你们发过去       不顶贴也没关系 这是我QQ:936445972,加QQ时请注明是求 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved