久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > LPC2103之Analog-to-Digital Converter

LPC2103之Analog-to-Digital Converter

作者: 時間:2016-11-29 來源:網絡 收藏
Analog-to-Digital Converter (ADC)


Features
LPC2103的ADC特性:
1.10bit逐次逼近型模數(shù)轉換器
2.低功耗模式
3.測量范圍0V—VDD(3.3V)(通常為3V,不超過VDDA)
4.10bit轉換時間> 2.44us
5.單輸入或多輸入突發(fā)轉換模式
6.每路模數(shù)通道有專用的結果寄存器


Description
APB時鐘為A/D轉換基本時鐘。轉換器中包括可編程分頻時鐘,逐次逼近處理所需的時鐘最大能達到4.5MHz,徹底準確的轉換需要11個這樣的時鐘周期。


Pin description
PinTypeDescription
AD0.7:0Input模擬輸入端口。
VDD(3V3)Reference參考電壓
VDDA,VSSAPower模擬電壓和地


Register description
//模數(shù)控制寄存器
#define AD0CR(*((volatile unsigned long *) 0xE0034000))
A/D轉換發(fā)生前,必須設置ADCR寄存器選擇操作模式。復位值為0x00000001。可讀可寫寄存器。
信號功能
7:0SEL選擇AD0.7:0管腳哪一路進行采樣和轉換。8bit數(shù)據(jù)分別對應8路A/D輸入管腳,有且只有一位可以寫1。寫0x00默認為0x01。
15:8CLKDIVAPB時鐘(PCLK)的分頻系數(shù)。必須使得A/D轉換時鐘小等于4.5MHz。
16BURST1——突發(fā)模式,轉換時間和轉換精度由CLKS決定
0——正常模式,11clock/10bits
19:17CLKS突發(fā)(BURST)模式下轉換時鐘周期選擇(轉換時間和轉換精度的取舍)。
000——11clock/10bits
001——10clock/9bits
010——9clock/8bits
011——8clock/7bits
100——7clock/6bits
101——6clock/5bits
110——5clock/4bits
111——4clock/3bits
20保留
21PDN1——A/D轉換可操作
0——A/D轉換工作于低功耗模式
23:22保留
26:24START當BURST位為0時,以下設置控制是否以及何時A/D轉換開始。
000——不啟動(該值應該使用于PDN=0時)
001——立刻啟動
010——Start conversion when the edge selected by bit 27 occurs on P0.16/EINT0/MAT0.2 pin.
011——Start conversion when the edge selected by bit 27 occurs on P0.22.
100——Start conversion when the edge selected by bit 27 occurs on MAT0.1.
101——Start conversion when the edge selected by bit 27 occurs on MAT0.3.
110——Start conversion when the edge selected by bit 27 occurs on MAT1.0.
111——Start conversion when the edge selected by bit 27 occurs on MAT1.1.
27EDGE此位的設置僅在START選擇了010-111時
1——Start conversion on a falling edge on the selected CAP/MAT signal.
0——Start conversion on a rising edge on the selected CAP/MAT signal.
31:28保留

//模數(shù)全局數(shù)據(jù)寄存器
#define AD0GDR(*((volatile unsigned long *) 0xE0034004))
可讀可寫寄存器。該寄存器包括了ADC的DONE位和最近的A/D轉換結果。
信號功能
5:0保留
15:6RESULT轉換結果
23:16保留
26:24CHN該位包含了RESULT位所轉換的通道。
29:27保留
30OVERUN溢出標志位
31DONEA/D轉換完成該位置1,讀該位和寫ADCR時該位清除。當寫ADCR時轉換正在進行中,該位置1并且開始新的轉換。

//模數(shù)狀態(tài)寄存器
#define AD0STAT(*((volatile unsigned long *) 0xE0034030))
只讀寄存器。該寄存器包括了所有A/D通道的DONE和OVERRUN標志位,也包括了A/D中斷標志。
信號功能
0DONE0該位反映了結果寄存器中A/D通道0的DONE狀態(tài)。
1DONE1該位反映了結果寄存器中A/D通道1的DONE狀態(tài)。
2DONE2該位反映了結果寄存器中A/D通道2的DONE狀態(tài)。
3DONE3該位反映了結果寄存器中A/D通道3的DONE狀態(tài)。
4DONE4該位反映了結果寄存器中A/D通道4的DONE狀態(tài)。
5DONE5該位反映了結果寄存器中A/D通道5的DONE狀態(tài)。
6DONE6該位反映了結果寄存器中A/D通道6的DONE狀態(tài)。
7DONE7該位反映了結果寄存器中A/D通道7的DONE狀態(tài)。
8OVERRUN0該位反映了結果寄存器中A/D通道0的OVERRUN狀態(tài)。
9OVERRUN1該位反映了結果寄存器中A/D通道1的OVERRUN狀態(tài)。
10OVERRUN2該位反映了結果寄存器中A/D通道2的OVERRUN狀態(tài)。
11OVERRUN3該位反映了結果寄存器中A/D通道3的OVERRUN狀態(tài)。
12OVERRUN4該位反映了結果寄存器中A/D通道4的OVERRUN狀態(tài)。
13OVERRUN5該位反映了結果寄存器中A/D通道5的OVERRUN狀態(tài)。
14OVERRUN6該位反映了結果寄存器中A/D通道6的OVERRUN狀態(tài)。
15OVERRUN7該位反映了結果寄存器中A/D通道7的OVERRUN狀態(tài)。
16ADINTA/D中斷標志位。當任何A/D DONE標志位置位時該位置位,并且影響ADINTEN寄存器的A/D中斷。
31:17保留

//模數(shù)中斷使能寄存器
#define AD0INTEN(*((volatile unsigned long *) 0xE003400C))
該寄存器控制A/D轉換完成是否產生一個中斷。
信號功能
0ADINTEN01——A/D通道0轉換完成產生中斷
0——A/D通道0轉換完成不產生中斷
1ADINTEN 11——A/D通道1轉換完成產生中斷
0——A/D通道1轉換完成不產生中斷
2ADINTEN 21——A/D通道2轉換完成產生中斷
0——A/D通道2轉換完成不產生中斷
3ADINTEN 31——A/D通道3轉換完成產生中斷
0——A/D通道3轉換完成不產生中斷
4ADINTEN 41——A/D通道4轉換完成產生中斷
0——A/D通道4轉換完成不產生中斷
5ADINTEN 51——A/D通道5轉換完成產生中斷
0——A/D通道5轉換完成不產生中斷
6ADINTEN 61——A/D通道6轉換完成產生中斷
0——A/D通道6轉換完成不產生中斷
7ADINTEN 71——A/D通道7轉換完成產生中斷
0——A/D通道7轉換完成不產生中斷
8ADINTEN1——只要ADINTEN7:0使能就可以產生中斷
0——只有ADDR中的全局DONE標志位使能才產生中斷
31:9保留

//模數(shù)通道0/1/2/3/4/5/6/7數(shù)據(jù)寄存器
//模數(shù)通道0數(shù)據(jù)寄存器
#define AD0DR0(*((volatile unsigned long *) 0xE0034010))
//模數(shù)通道1數(shù)據(jù)寄存器
#define AD0DR1(*((volatile unsigned long *) 0xE0034014))
//模數(shù)通道2數(shù)據(jù)寄存器
#define AD0DR2(*((volatile unsigned long *) 0xE0034018))
//模數(shù)通道3數(shù)據(jù)寄存器
#define AD0DR3(*((volatile unsigned long *) 0xE003401C))
//模數(shù)通道4數(shù)據(jù)寄存器
#define AD0DR4(*((volatile unsigned long *) 0xE0034020))
//模數(shù)通道5數(shù)據(jù)寄存器
#define AD0DR5(*((volatile unsigned long *) 0xE0034024))
//模數(shù)通道6數(shù)據(jù)寄存器
#define AD 0DR6(*((volatile unsigned long *) 0xE0034028))
//模數(shù)通道7數(shù)據(jù)寄存器
#define AD0DR7(*((volatile unsigned long *) 0xE003402C))
只讀存儲器。
信號功能
5:0保留
15:6RESULT轉換結果。
29:16保留
30OVERRUN溢出標志位。
31DONE完成標志位,讀該寄存器清除該位



評論


技術專區(qū)

關閉