在學習STM32中的過程中,經常會遇到“高電平有效”,“低電平有效”等字眼,初看時很多時候就會從字面上理解,認為高電平有效的意思就是有效電平是高電平,低電平有效的意思就是有效電平是低電平的意思。而實際上,這樣的理解是有誤的。下面咱們以STM32的定時器中輸出比較通道為例:
這幅圖實際上就是一個pwm波產生的過程,對定時器不了解的可以去查閱相關手冊,現在我們先看圖中標號1的輸出模式控制器,這里模式是指pwm模式,他的意思就是可以通過配置寄存器TIMx_CCMR1的OC1M兩位,來選擇pwm的模式,但是關于模式選擇,手冊中有這樣一句話:在向下計數時,一旦TIMx_CNT>TIMx_CCR1時通道1為無效電平(OC1REF=0),否則為有效電平(OC1REF=1)。
紅色字體告訴我們:OCREF為無效電平時為低電平,OCREF為有效電平時就是高電平。
再看標號2: 它的作用是選擇輸出極性。如果TIMx_CCER的CC1P位為0則高電平有效,否則低電平有效。這個高電平有效是什么意思呢?就是對于選擇器來說,高電平有效,如果OCREF為高電平,那么這個選擇器的門就會打開,讓該信號進入 ,并“激活”該選擇器, 之后選擇器才會產生信號來激活后面的輸出使能電路驅動OC1,讓其在OC1上產生有效電平(也就是OC1上產生高電平)。
通過上面的分析機會發(fā)現,高電平有效意思是說,若信號為高電平,那么對相應的控制器來說才有效,才能激活該控制器的相關功能。
總結幾個關鍵詞:有效電平:高電平
無效電平:低電平
高電平有效:高電平可以使能相應功能
低電平有效:低電平可以使能相應功能