<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > S3C2410中脈寬調制定時(shí)器

S3C2410中脈寬調制定時(shí)器

作者: 時(shí)間:2016-11-09 來(lái)源:網(wǎng)絡(luò ) 收藏
S3C2410有5個(gè)16bit定時(shí)器。定時(shí)器0-3有脈寬調制功能(Pulse Width Modulation,PWM),定時(shí)器4是內部定時(shí)器,沒(méi)有輸出引腳。定時(shí)器0有Dead-zone發(fā)生器,可以保證一對反向信號不會(huì )同時(shí)改變狀態(tài),常用于大電流設備中。

定時(shí)器0-1共用一個(gè)8bit prescaler,定時(shí)器2-4共用另外一個(gè)。每個(gè)定時(shí)器有一個(gè)時(shí)鐘分頻器,可以選擇5種分頻方法。每個(gè)定時(shí)器從各自的時(shí)鐘分頻器獲取時(shí)鐘信號。prescaler是可編程的,并依據TCFG0-1寄存器數值對PCLK進(jìn)行分頻。

本文引用地址:http://dyxdggzs.com/article/201611/318021.htm

當定時(shí)器被使能之后,定時(shí)器計數緩沖寄存器(TCNTBn)中初始的數值就被加載到遞減計數器中。定時(shí)器比較緩沖寄存器(TCMPBn)中的初始數值被加載到比較寄存器中,以備與遞減計數器數值進(jìn)行比較。這種雙緩沖特點(diǎn)可以讓定時(shí)器在頻率和占空比變化時(shí)輸出的信號更加穩定。

每個(gè)定時(shí)器都有一個(gè)各自時(shí)鐘驅動(dòng)的16bit遞減計數器,當計數器數值為0時(shí),產(chǎn)生一個(gè)定時(shí)中斷,同時(shí)TCNTBn中的數值被再次載入遞減計數器中再次開(kāi)始計數。只有關(guān)閉定時(shí)器才不會(huì )重載。TCMPBn的數值用于PWM,當遞減計數器的數值和比較寄存器數值一樣時(shí),定時(shí)器改變輸出電平,因此,比較寄存器決定了PWM輸出的開(kāi)啟和關(guān)閉。

S3C2410的PWM定時(shí)器采用雙buffer機制,可以不停止當前定時(shí)器的情況下設置下一輪定時(shí)操作。定時(shí)器值可以寫(xiě)到TCNTBn,而當前定時(shí)的計數值可以從TCNTOn獲得,即,從TCNTBn獲得的不是當前數值而是下一次計數的初始值。

自動(dòng)加載功能被打開(kāi)后,當TCNTn數值遞減到0時(shí),芯片自動(dòng)將TCNTBn的數值拷貝到TCNTn,從而開(kāi)始下一次循環(huán),若TCNTBn數值為0,則不會(huì )有遞減操作,定時(shí)器停止。

第一次啟動(dòng)定時(shí)器的過(guò)程如下:(1)初始化TCNTBn和TCMPBn的數值;(2)設置定時(shí)器的人工加載位,不管是否使用極性轉換功能,都將極性轉換位打開(kāi);(3)設置定時(shí)器的啟動(dòng)位來(lái)啟動(dòng)定時(shí)器,同時(shí)清除人工加載位。

若定時(shí)器在計數過(guò)程中被停止,則TCNTn保持計數值,若需要設置新的數值需要人工加載。定時(shí)器的工作過(guò)程可以用附圖表示。



1,使能自動(dòng)加載功能,設置TCNTBn=160,TCMPBn=110,設置人工加載位并配置極性轉換位,人工加載位將時(shí)TCNTBn、TCMPBn的數值加載到TCNTn、TCMPn。然后,設置TCNTBn、TCMPBn為80和40,作為下一次定時(shí)的參數。

2,設置啟動(dòng)位,若人工加載位為0,極性轉換關(guān)閉,自動(dòng)加載開(kāi)啟,則定時(shí)器開(kāi)始遞減計數(計數前有一個(gè)設定時(shí)間,可以理解為與setup time類(lèi)似)。

3,當TCNTn的數值和TCMPn一致時(shí),TOUTn從低變?yōu)楦摺?/p>

4,當TCNTn計數至0,定時(shí)器產(chǎn)生中斷請求,同時(shí)TCNTBn、TCMPBn的數值被自動(dòng)加載到TCNTn、TCMPn,前者為80,后者為40。

5,中斷服務(wù)向量(ISR)將TCNTBn、TCMPBn設置為80和60。

6,與3相似。

7,與4相似,TCNTn、TCMPn,前者為80,后者為60。

8,ISR服務(wù)程序中,將自動(dòng)加載和中斷請求關(guān)閉。

9,與6、3相似。

10,TCNTn為0,TCNTn不會(huì )自動(dòng)加載新的數值,定時(shí)器被關(guān)閉。

11,沒(méi)有新的中斷發(fā)生。

同時(shí),由上面的工作過(guò)錯可以看出,通過(guò)ISR或別的方法寫(xiě)入不同的TCMPBn的數值,就可以調節輸出信號的占空比,實(shí)現脈寬調制(PWM)。

Dead Zone主要用在控制外設的使能,其功能主要是在關(guān)閉一個(gè)設備和開(kāi)啟另一個(gè)設備之間,插入一個(gè)時(shí)間間隙,以防止兩個(gè)設備同時(shí)改變狀態(tài)。(有利于減小系統干擾?)

定時(shí)器可以通過(guò)TCFG1寄存器的DMA模式位配置為DMA請求源信號(nDMA_REQ)發(fā)生器,當定時(shí)器被這樣配置后,它將nDMA_REQ信號一直置低,直到接收到ACK信號。當定時(shí)器收到ACK信號,它將nDMA_REQ信號置高(無(wú)效)。當定時(shí)器被設置為DMA請求模式時(shí),不會(huì )產(chǎn)生中斷請求。只能有一個(gè)定時(shí)器被配置為DMA請求源。


關(guān)鍵詞: S3C2410脈寬調制定時(shí)

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>