新聞中心

LPC2103之timer0 ang timer1

作者: 時(shí)間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
Timer/Counter Timer0 and Timer1
Page187


定時(shí)器/計(jì)數(shù)器有計(jì)劃的在外設(shè)時(shí)鐘(PCLK)或者外部提供的時(shí)鐘下進(jìn)行循環(huán)計(jì)數(shù),它可以基于四個(gè)匹配寄存器有選擇的在指定的定時(shí)值到達(dá)后產(chǎn)生中斷或者執(zhí)行其它操作。它也括了四路捕獲輸入,用于捕獲變化信號(hào)的定時(shí)值,可選擇的產(chǎn)生中斷。


Pin description

管腳類型描述
CAP0.2.0
CAP1.3.0
Input捕獲信號(hào)——捕獲管腳的變化可以配置,捕獲寄存器中定時(shí)計(jì)數(shù)值加一,同時(shí)可以用選擇的產(chǎn)生中斷。以下是捕獲信號(hào)的列表:
?CAP0.0: P0.2
?CAP0.1: P0.4
?CAP0.2: P0.6
?CAP1.0: P0.10
?CAP1.1: P0.11
?CAP1.2: P0.17
?CAP1.3: P0.18
MAT0.2.0
MAT1.3.0
Output外部匹配輸出0/1——當(dāng)一個(gè)匹配寄存器0/1等于定時(shí)計(jì)數(shù)值,這個(gè)輸出可能觸發(fā),變高,變低,或者不變。外部匹配寄存器(EMR)和PWM控制寄存器(PWMCON)控制這個(gè)輸出的功能。以下是捕獲信號(hào)的列表:
?MAT0.0: P0.3
?MAT0.1: P0.5
?MAT0.2: P0.16
?MAT1.0: P0.12
?MAT1.1: P0.13
?MAT1.2: P0.19
?MAT1.3: P0.20



Register description

下面只列舉Timer 1的各個(gè)寄存器做說明,其它的Timer0/2/3都類似。

/************************************** Timer 1 *************************************/
/*************************定時(shí)器1的特殊寄存器*********************************/

//中斷寄存器
#define T1IR(*((volatile unsigned char *) 0xE0008000))
讀該寄存器值可以判斷是8個(gè)中斷源中的哪一個(gè)發(fā)生了中斷,寫1清除中斷,寫0無效。該寄存器包括了四個(gè)匹配中斷和四個(gè)捕獲中斷。一旦中斷產(chǎn)生則相應(yīng)位置高,否則為低。
信號(hào)描述復(fù)位值
0MR0 interrupt匹配通道0中斷標(biāo)志0
1MR1 interrupt匹配通道1中斷標(biāo)志0
2MR2 interrupt匹配通道2中斷標(biāo)志0
3MR3 interrupt匹配通道3中斷標(biāo)志0
4CR0 interrupt捕獲通道0事件中斷標(biāo)志0
5CR1 interrupt捕獲通道1事件中斷標(biāo)志0
6CR2 interrupt捕獲通道2事件中斷標(biāo)志0
7CR3 interrupt捕獲通道3事件中斷標(biāo)志0

//定時(shí)器控制寄存器
#define T1TCR(*((volatile unsigned char *) 0xE0008004))
該寄存器用于控制定時(shí)器/計(jì)數(shù)器的操作。
信號(hào)描述復(fù)位值
0Counter Enable為1時(shí),定時(shí)計(jì)數(shù)器和分頻計(jì)數(shù)器使能工作。為0時(shí)計(jì)數(shù)器關(guān)閉。0
1Counter Reset為1時(shí),定時(shí)計(jì)數(shù)器和分頻計(jì)數(shù)器在下一個(gè)PCLK的上升沿同步復(fù)位。計(jì)數(shù)器復(fù)位保持到該位返回0值。0
7:2保留NA


//定時(shí)計(jì)數(shù)器
#define T1TC(*((volatile unsigned long *) 0xE0008008))
當(dāng)分頻計(jì)數(shù)器(PC)到達(dá)了預(yù)定值后32bit定時(shí)計(jì)數(shù)器加1。達(dá)到限定值后復(fù)位,TC計(jì)數(shù)到達(dá)最大值0xffffffff后增1就復(fù)位為0x00000000。該事件不會(huì)引發(fā)中斷,但是如果需要的話匹配寄存器可以用于檢測(cè)是否溢出。

//分頻寄存器
#define T1PR(*((volatile unsigned long *) 0xE000800C))
32bit分頻寄存器指定了分頻計(jì)數(shù)器(PC)的計(jì)數(shù)最大值。

//分頻計(jì)數(shù)器寄存器
#define T1PC(*((volatile unsigned long *) 0xE0008010))
32bit分頻計(jì)數(shù)器對(duì)PCLK進(jìn)行一些常量值的分頻,然后才用于定時(shí)計(jì)時(shí)器。分頻計(jì)數(shù)器每個(gè)PCLK時(shí)鐘加1,當(dāng)其達(dá)到了存儲(chǔ)分頻寄存器(PR)的值后,定時(shí)計(jì)數(shù)器加1,并且分頻計(jì)數(shù)器在下一個(gè)PCLK復(fù)位。也就是說,PC=1,那么PC在每2個(gè)PCLK復(fù)位一次。

上一頁 1 2 下一頁

關(guān)鍵詞: LPC2103timer0timer

評(píng)論


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

關(guān)閉