初级会员

- 积分
- 119
- 金钱
- 119
- 注册时间
- 2015-8-18
- 在线时间
- 17 小时
|
1金钱
本帖最后由 kingpage 于 2016-8-3 18:54 编辑
1、把原子哥写的PWM实验源码,编译后,直接写到板子上,发现如果把板子的电源关闭后,再打开电源以重新启动板子,则出现LED0连续前4次都会由暗慢慢变亮,然后又突然变暗的情况,此4次过后,才会正式变为呼吸灯的效果(由暗慢慢变亮,再由亮慢慢变暗),但如果启动后按reset键重置板子(以达到重启的目的),却没出现LED0连续前4次都会由暗慢慢变亮,然后又突然变暗的情况,为什么会有这种前4次异常的情况?该如何解决?难道用reset键重启的方式在不是真正意义上的重启?
2、顺便还想问一下,实现中的以下两句代码有何作用:
TIM1->CCMR1|=1<<3;//CH1的OC1PE输出比较预装载使能
TIM1->CR1=0x0080;//ARPE自动重装载预装载使能
按我的理解"OC1PE输出比较预装载使能"就是设置pwm占空比修改后,是否在发生更新事件后才正式生效,还是马上生效。而"ARPE自动重装载预装载使能",则是设置自动重装的值,是否在发生更新事件后才正式生效,还是马上生效,从而影响定时器的溢出时间是否在发生更新事件后才正式生效,还是马上生效。但对于pwm实验来说,定时器的周期是不变的(也就是说定时器的溢出时间是不变的),只是通过调整占空比来控制脉冲宽度,那么是不是说这个"ARPE自动重装载预装载"使能与不使能都可以?而且对占空比的调整,我觉得调整后在更新事件产生后才生效与马上生效应该也没什么影响吧?(事实上,我试过不对"OC1PE输出比较预装载使能"、"ARPE自动重装载预装载使能"进行配置也不影响),那是不是说,这两个语句可以去除?但原子哥写的这两句代码又是有着什么样的特别用处?
|
最佳答案
查看完整内容[请看2#楼]
1,这是一键下载电路的影响,你不接USB_232,就没这个问题。 2,PWM实验,这两个设置影响不大,可以去掉。这两个设置,主要用在精确控制波形上面。
|