第二次培训(pwm呼吸灯的实现)

pwm呼吸灯的实现

以stm32F407ZGT6为例
首先创建一个cubamx的工程,其配置过程如下
选择stm32f407zgt6芯片
选择rcc,高速外部时钟信号
在这里插入图片描述
配置sys
在这里插入图片描述
接下来选择需要进行呼吸灯的定时器和端口
f4的led对应PF9和PF10引脚
选择PF9,其对应的定时器在TIM14
就可配置PF9和TIM14
在这里插入图片描述

选择后已标亮PF9,只需在左键PF9选择TIM_14 CH1即可
时钟树配置最大频率168MHZ
在这里插入图片描述
接下来选择生成路径和IDE为MDK ARM即可
打开生成的工程
定义一个变量用以计算占空比
例如

uint16_t pwmval;

接着把

HAL_TIM_PWM_Start(&htim14,TIM_CHANNEL_1);

插入main函数中while之前
切记还要放到引脚和定时器初始化函数之后
否则无法看到呼吸灯的现象
最后在while中加入以下代码

for(pwmval=0;pwmval<=20000;pwmval+=20)
{ __HAL_TIM_SetCompare(&htim14,TIM_CHANNEL_1,pwmval);
HAL_Delay(20);}
for(pwmval=20000;pwmval>0;pwmval-=20)
{ __HAL_TIM_SetCompare(&htim14,TIM_CHANNEL_1,pwmval);
HAL_Delay(20);}
HAL_Delay(200);

下载编译没有问题后即可烧录

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值