10-bit a/d converter
Embed Size (px)
DESCRIPTION
10-Bit A/D Converter. ADC 轉換 / 取樣動作. ADC_FORMAT_INTG. ADCON1bits.FORM 11 = 有號小數 10 = 無號小數 01 = 有號整數 00 = 整數. ADC_CLK_AUTO. ADCON1bits.SSRC 111 = 自動轉換 . . . 000 = 手動轉換 ( 清除 SAMP 後開始轉換 ). 兩種取樣方式. ADC_SAMPLE_SIMULTANEOUS. ADCON1bits.SIMSAM 1 = 所有通道同時取樣 0 = 各個通道個別取樣. - PowerPoint PPT PresentationTRANSCRIPT

10-Bit A/D Converter

ADC 轉換 / 取樣動作

ADC_FORMAT_INTG
ADCON1bits.FORM• 11 = 有號小數• 10 = 無號小數• 01 = 有號整數• 00 = 整數

ADC_CLK_AUTO
ADCON1bits.SSRC• 111 = 自動轉換
.
.
.
• 000 = 手動轉換 ( 清除 SAMP 後開始轉換 )

兩種取樣方式

ADC_SAMPLE_SIMULTANEOUS
ADCON1bits.SIMSAM• 1 = 所有通道同時取樣• 0 = 各個通道個別取樣

ADC_AUTO_SAMPLING_OFF
ADCON1bits.ASAM• 1 = 轉換完後立即自動取樣• 0 = 手動取樣, SAMP 設為 1 開始取樣

10-Bit ADC BLOCK DIAGRAM

輸入多工器AD 轉換器有兩組多工器 (A 與 B) 可選擇

ADC_ALT_INPUT_OFF
ADCON2bits.ALTS• 1 = 交互使用 A, B 多工器• 0 = 只用 A 多工器

ADC_CONVERT_CH_0A
ADCON2bits.CHPS• 1x = 轉換 CH0, CHA, CHB and CHC• 01 = 轉換 CH0 and CHA• 00 = 轉換 CH0

ADC_SAMPLES_PER_INT_1
ADCON2bits.SMPI• 16 = 每完成 16 次取樣的轉換,產生 1 中斷• 15 = 每完成 15 次取樣的轉換,產生 1 中斷
.
.
.
• 1 = 每完成 1 次取樣的轉換,產生 1 中斷範例雖然是雙通道,但為同時取樣,所以設定為 1

Channel
ADC_CH0_POS_SAMPLEA_AN6• CH0 正端經 A 多工器接到 AN6
ADC_CH0_NEG_SAMPLEA_NVREF• CH0 負端經 A 多工器接到 VREF- (=Vss)
ADC_CHX_POS_SAMPLEA_AN0AN1AN2• 正端經多工器 A , CHA 接 AN0 , CHB 接 AN1…
ADC_CHX_NEG_SAMPLEA_NVREF• CHA, CHB 與 CHC 負端通通接到 VREF-

10-Bit ADC BLOCK DIAGRAM

輸入多工器 AD 轉換器有兩組多工器 (A 與 B) 可選擇
Output = [(VA+ - VA-)- VREF-] / (VREF+ - VREF-) * 1024 - 1

BusyADC10()
ADCON1bits.DONE• 1 = 轉換完成• 0 = 開始轉換時清除為 0 ,也可手動清除

手動取樣自動轉換流程
手動設定 SAMP=1開始取樣
同時取樣
SAMP
CH0 轉換 CHA 轉換 同時取樣
自動轉換自動清除 SAMP&DONE
DONE
轉換完成自動設定 DONE