点灯~可以说是每一个入行的朋友第一个要学的东西,流水灯,呼吸灯,律动灯各种各样的点灯折磨着新手。

控制灯的亮灭通常用两种方式,一种是利用DAC输出可调的电压,另一种则是利用PWM波调节方波的占空比来实现灯的亮暗,本期我们就使用STM32来实现输出PWM波使LED灯的亮度发生变换。

打开CubeMX,创建新的工程,选择我们的板子芯片型号。

将连接LED的IO设置为PWM模式,如果没有PWM模式,我们也可以通过定时器来模拟PWM模式。

配置好高速时钟和低速时钟(根据自己的板子来配置)

配置好时钟树。

定时器打开PWM模式

配置相关参数,时钟频率/(分频系数+1)就是定时器的一秒计数,到达重装载值的时候就会触发定时器中断,当我们选择模式一的时候,当计数值高于比较值是有效电平,有效电平由CH决定。

因此当我们希望输出1KHZ的方波的时候,就可以设置分频系数为167,计数值为1000,设置为500,即为占空比50%。

接着设置工程的基本信息,使用MDK编程。


接着在主程序中写上启动PWM的函数。

嘉立创PCB
全部评论 默认 最新
已折叠部分评论 展开
没有更多啦~