S5PV210的PWM定時器3

2021-08-22 10:31:52 字數 968 閱讀 8040

1、什麼是pwm波形?

(1)pwm(pulse wide modulation脈寬調變)

(2)pwm波形是乙個週期性波形,週期為t,每個週期有乙個高電平和低電平組成。

(3)pwm波形有兩個重要的引數:乙個是週期t,另乙個是占空比duty(占空比就是乙個週期內高電平的時間的商)。

(4)對於乙個pwm波形,知道了週期t和占空比duty,就可以算出這個波形的所有細節。譬如高電平時間為t*duty,低電平為t*(1-duty)。

(5)pwm波形有很多用途,譬如通訊上用pwm來進行脈寬調變對基波進行載波調製;在led燈亮度無極調節。

2、pwm波形的生成原理

(1)pwm就是通過時間來控制高低電平時間,理所應當用定時器來實現pwm波形

(2)早期微控制器(譬如51)沒有專門的pwm定時器,我們自用gpio和定時器來產生pwm波形。

(3)後來因為定時器經常和pwm產生糾結一起,所以設計的時候就把定時器和gpio內部引腳繫結起來,在定時器內部就可以產生pwm波形。  優點是方便定時器產生波形,同時不需要進入中斷函式isr中;缺點是引腳固定,死板,不能隨意更改。

(4)s5pv210中,pwm波形產生有兩個暫存器很關鍵,乙個是tcntb、乙個是tcmtb。其中,tcntb決定了pwm波形的週期,tcmpb決定了pwm波形的占空比。

(5)最終生成的pwm波形的週期是:tcntb*時鐘週期(pclk_psys經過兩級分頻後得到的時鐘週期)

(6)最終產生的pwm占空比=tcmtb/tcntb

3、輸出電平翻轉器

(1)pwm定時器規定:當tcnt>tcmpb時為高電平,當tcnt(2)當duty從30%變為70%時,我們tcmpb暫存器中的值就要改(較麻煩),210pwm定時器提供了乙個電平翻轉器。

(3)電平翻轉器在電路上就是乙個電平取反部件,在程式設計上反映是乙個暫存器,寫0翻轉,寫1保持。30%就能變為70%

(4)s5pv210給大家提供了自帶死區生成器,應用於簡單的功能。

S5PV210的定時器程式模組程式

s5pv210的定時器程式模組程式 參考朱有鵬arm裸機程式 1 pwm定時器的初始化 步奏分析 1 因為我們是輸出pwm波,所以需要將需要的gpio口設定成pwm模式 所以我們需要配置我們的兩個分頻器 3 接著,是pwm波的關鍵暫存器 rtcntb2 250 頻率 這個數可以得出我們需要知道的週期...

S5PV210 裸機中斷

這裡我以外部中斷為例畫出了中斷響應的過程。當外部中斷得到響應,會由硬體自動轉到異常向量表,執行對應的異常處理程式。在這裡指的就是irq的處理程式。在異常處理程式irq handle中將會執行現場的保護與恢復,以及最重要的中斷處理函式 注意,這裡就來到了中斷處理部分,而不是異常處理了,相當於是乙個兩級...

S5PV210控制蜂鳴器

s5pv210帶有乙個蜂鳴器,十分吵鬧,本章將學習如何控制蜂鳴器。相關引腳 蜂鳴器的操作十分簡單,原理跟操作led一樣,通過控制gpdo o這個引腳就可以達到控制蜂鳴器的目的。1.start.s start.s做了下面3件事 第一步 關看門狗 第二步 設定棧,以便呼叫c函式 第三步 呼叫main函式...