新聞中心

s3c2440定時(shí)器簡介

作者: 時(shí)間:2016-11-11 來源:網(wǎng)絡(luò) 收藏
S3c2440 有5 個(gè)16 位的定時(shí)器。定時(shí)器0、1、2、3 有脈寬調(diào)制功能(PWM)。定時(shí)器4有一個(gè)沒有輸出引腳的內(nèi)部定時(shí)器。定時(shí)器0 有一個(gè)用于大電流設(shè)備的死區(qū)生成器。
定時(shí)器0 和1 共享一個(gè)8 位的預(yù)分頻器(預(yù)定標(biāo)器),定時(shí)器2,3,4 共享另一個(gè)8 位預(yù)分
頻器.
定時(shí)器的時(shí)鐘源為PCLK,首先經(jīng)過預(yù)分頻器降低頻率后,進(jìn)入第二個(gè)分頻.可以生成5 種不同的分頻信號(1/2,1/4,1/8,1/16 和TCLK)
定時(shí)器啟動(dòng)后,TCNTn開始減一計(jì)數(shù),當(dāng)TCNTn 等于TCMPn時(shí), TOUTn 反轉(zhuǎn), TCNTn繼續(xù)減數(shù).
當(dāng)TCNTn= 0 時(shí), TOUTn 再次反轉(zhuǎn),并觸發(fā)中斷(中斷已經(jīng)使能).
若TCON 設(shè)為自動(dòng)加載, TNCTn/TCMPNn 的值被重裝.
寄存器:
TCFG0: 配置兩個(gè)8 位預(yù)分頻器, [15:8] 此8 位決定定時(shí)器2,3,4 的預(yù)標(biāo)定器值,[7:0] 此8 位決定定時(shí)器0,1 的預(yù)標(biāo)定器值
輸出頻率: = PCLK / (prescaler value + 1)
TCFG1:
用于設(shè)置第二個(gè)分頻.可以設(shè)置5 種不同的分頻信號(1/2,1/4,1/8,1/16 和TCLK)
至此可得到
定時(shí)器工作頻率=PCLK / (prescaler value + 1) / (divider value)
divider value = 2,4,8, 16
TCON: 定時(shí)器控制寄存器
TCNTBn :設(shè)置一個(gè)被裝載到遞減計(jì)數(shù)器中的初始值。
TCMPBn: 設(shè)置一個(gè)被裝載到比較寄存器中用來和遞減計(jì)數(shù)
器的值作比較的初始值。
TCNTOn : 通過讀取其可以得到TCNTBn 的值
定時(shí)器初始化示例:
void timer0_init(void)
{
TCFG0 = 99; // 預(yù)分頻器0 = 99
TCFG1 = 0x03; // 選擇16分頻
TCNTB0 = 31250; // 0.5秒鐘觸發(fā)一次中斷
TCON |= (1<<1); // 手動(dòng)更新
TCON = 0x09; // 自動(dòng)加載,清“手動(dòng)更新”位,啟動(dòng)定時(shí)器0
}


關(guān)鍵詞: S3C2440定時(shí)

評論


技術(shù)專區(qū)

關(guān)閉