![]() |
發布時間: 2021-11-26 11:19
正文摘要:大佬們 最近在做直流有刷電機的驅動,使用到STM32高級定時器TIM1的通道1和互補通道,電機的驅動模式采用單極模式,即驅動信號為1路的PWM,一路高電平,且這兩種信號通過按鈕可以交替實現電機的轉向。 我看的視頻是H ... |
TIM_OCInitTypeStr.TIM_OCNPolarity =TIM_OCNPolarity_Low; 修改這句試一試,把這個極性換一下試試,但是注意互補的波形就變反了 |
頂一下 |
AUG 發表于 2021-11-26 17:12 好吧 大佬都這么做的嗎 那我試試 只不過我看參考手冊上有說只要把OSSR開啟,然后關閉互補通道就可以輸出高電平,我不知道我程序哪里錯了 ![]() |
不同的初始化就可以了,在每次要用不同功能的時候進行不同的初始化 |
啤酒瓶子老大 發表于 2021-11-26 16:56 不只是加個判斷那邊簡單,GPIO輸出PWM是在復用模式下,而要推挽輸出高電平需要再初始化一下GPIO。 我是想到用通道1和通道2,要高電平的時候吧占空比設置成100%。 但是我想知道通過互補通道能不能實現同樣的效果以及如何實現,拓寬一下知識面 |
曾經看到過一個介紹,手推車單片機PWM輸出高電平也不是很理想,在PWM的時候IO口是推挽的。索性直接加了個判斷,需要高的時候直接來個IO=1;反正單片機速度又很快,完美解決了。具體我也不會,你可以研究一下。 |