關於stm32輸出比較不同模式的分析

關於stm32輸出比較不同模式的分析


輸出比較模式總共有6種。分別是:

  • TIM_OCMode_Timing 輸出比較時間模式 (輸出引腳凍結無效)
  • TIM_OCMode_Active 輸出比較主動模式 (匹配時設置輸出引腳爲有效電平,當計數值爲比較/捕獲寄存器值相同時,強制輸出爲高電平
  • TIM_OCMode_Inactive 輸出比較非主動模式 (匹配時設置輸出引腳爲無效電平,當計數值爲比較/捕獲寄存器值相同時,強制輸出爲低電平)
  • TIM_OCMode_Toggle 輸出比較翻轉觸發模式(當計數值與比較/捕獲寄存器值相同時,翻轉輸出引腳的電平)
  • TIM_OCMode_PWM1 向上計數時,當TIMx_CNT < TIMx_CCR時,輸出電平有效,否則爲無效向下計數時,當TIMx_CNT > TIMx_CCR時,輸出電平無效,否則爲有效。
  • TIM_OCMode_PWM2 向上計數時,當TIMx_CNT > TIMx_CCR時,輸出電平有效,否則爲無效向下計數時,當TIMx_CNT < TIMx_CCR時,輸出電平無效,否則爲有效。

其中,PWM是最重要也是最常用的模式,很多資料分析的很透徹,這裏不再贅述。
輸出比較時間模式的輸出引腳會被凍結,此模式通常用於產生普通的定時器中斷。
其餘幾個模式中,當“當計數值爲比較/捕獲寄存器值相同時” 即CCRX=CNT時,會引發後面所說的事件。而TIM_OCMode_Active與TIM_OCMode_Inactive僅觸發一次,之後就會出現一直爲高電平或者低電平。TIM_OCMode_Toggle會每次在CCRX=CNT時都翻轉,所以也形成一個PWM。由於一個週期只翻轉一次,佔空比只會是百分之五十,週期爲參數period的兩倍,頻率爲1/2。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章