|
STM32CubeIDE开发M4—使用PWM实现呼吸灯功能一、新建工程% o2 l/ v, ]" E) D 二、配置时钟 9 m0 {/ L% m9 c% J6 x 我们需要配置MCU的时钟,点击【RCC】,在【High Speed Clock(HSE)】中选择 【Crystal/Ceramic Resonator】, 也 就 是 晶 体 / 陶 瓷 晶 振 类 型 ,5 w: `! V% `3 w6 c1 q1 [4 c
! w& l, w4 {3 |) w1 B6 w! o& x6 N 然后时钟树配置如图,即MCU的主时钟配置为209MHz,同时定时器时钟也是209MHz;! D- ]+ L0 w8 E2 y- z+ ?
& z& l% P9 q# H) ?/ r4 n2 o9 B 接下来设置定时器,首先将PI0设置为【TIM_CH4】,然后点击TIM5,勾选【Cortex-M4】,将通道4设置为PWM通道4输出,接下来设置预分频系数为208,自动重装载值为999,然后输出比较极性为高
6 Y% A8 M, v5 W 1 J4 T; g. j* g9 q 三、生成代码& y- j6 N3 o+ Y " ^) g! _+ x- u% n7 D8 W4 q 点击【Project Manager】->【Code Generator】,勾选“ Generate peripheral initialization as a pair of ‘.c/.h’files per peripheral”,让外设初始化代码单独生成 : |) M" P; u8 Q. m
这样配置好后就可以点击生成代码了 % X! F+ f7 E% ?9 J7 i6 z3 t
' ^- w9 Z; P- Q' n 四、编写程序,实现呼吸灯功能2 P5 }; Y5 ?& s( e/ J ' z( B+ ^4 o4 _: B' N% y: _ 首先我们需要启动PWM,
/ G3 q' p E, r- T3 ]) j
接下在while循环中编写如下代码,完成呼吸灯功能
五、编译工程,上传到开发板% ?3 _# m( x/ p9 Q$ b9 H 编译工程,将生产的二进制文件上传的开发板,可以使用以下命令 ! f9 t h* `( |6 Q
然后将该文件复制到/lib/firmware文件夹下,注意,需要在root用户下8 S) ?7 o& {: X
! ]$ L F% [2 ?: P ![]() 使用如下命令停止
实现效果如下
5 E/ K7 t5 U5 Z- Q- ^# e * e& [4 d8 f g3 \) q+ J' w% u9 x |
| 不错不错 |
【STM32H5 评测】基础硬件加密与随机数性能 - STM32H5E5实测硬件AES加解密、HASH运算、TRNG真随机数输出速率与稳定性
【STM32H5 评测】NUCLEO-H5E5ZJ 使用 TrustZone 安全分区系统实践测试
【STM32H5 评测】CPU核心性能 - STM32H5E5跑 RTOS,观察任务切换速度、中断响应快慢
【STM32H5 评测】内存读写性能 - STM32H5E5实测Flash,SRAM读写速度,用DMA搬运大块数据
【NUCLEO-C562RE】OLED 显示
保姆级教程:CMake 工程导入 STM32CubeIDE 步骤
STM32CubeCLT 1.22.0新版本发布
【下载问题解决】关于ST官网下载软件问题解决
【STM32H735G-DK测评】lvgl移植
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
微信公众号
手机版