OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5994|回复: 1

PWM输出初始化程序写错了,灯也能亮

[复制链接]

13

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2021-12-17
在线时间
23 小时
发表于 2022-12-4 19:05:38 | 显示全部楼层 |阅读模式
我是Mini板,在PWM输出的例子中,我在timer.c文件,定时器初始化的函数中,写错了定时器的编号,把TIM1写成TIM3了,但是LED灯照样能呼吸,频率也对,只是比正确程序的亮度暗一些。
我把下面蓝色部分注释掉了,灯也可以呼吸,也是比正确程序的亮度暗一些。不知道是谁在背后提供波形信号,很神奇,分享一下,不知道有没有大神知道。


void TIM1_PWM_Init(u16 arr,u16 psc){
·······
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2;                //赋值结构体 模式2,向上计数时,计数超过了比较值,输出有效电平,否则为无效电平
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;     //赋值结构体 比较输出使能
//TIM_OCInitStructure.TIM_Pulse = 0;                                              //赋值结构体 这个没用 (原注释:设置待装入捕获比较寄存器的脉冲值)
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;            //赋值结构体 输出极性,有效电平为高电平
TIM_OC1Init(TIM1, &TIM_OCInitStructure);                                     //引用结构体
·······}

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

70

主题

6697

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12691
金钱
12691
注册时间
2012-11-26
在线时间
3710 小时
发表于 2023-12-5 09:04:26 | 显示全部楼层
是不是凑巧这路PWM是一个引脚。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 17:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表