?? adc.c
字號:
//adc.c
#include "adc.h"
/*
temp: ADC0
RSSI_1: ADC4
RSSI_2: ADC5
DET_IN: ADC6
DET_OUT: ADC7
*/
AT91PS_ADC a_pADC = AT91C_BASE_ADC;
AT91PS_PMC a_pPMC = AT91C_BASE_PMC;
AT91PS_PDC u_pPDC2= AT91C_BASE_PDC_ADC;
#define ADC_DMA_ADDR 0x0400
void InitADC(void) {
a_pADC->ADC_CR = 0x2; // 設置啟動位
a_pADC->ADC_MR = 0x3f00; // 設置方式寄存器, 10位, MCK/128
a_pADC->ADC_CHER = 0xf1; // 允許AD0,AD4,AD5,AD6,AD7
u_pPDC2->PDC_PTCR = AT91C_PDC_RXTEN; // 允許RX進行PDC傳送請求
u_pPDC2->PDC_RPR = (unsigned int)adc_dma;
u_pPDC2->PDC_RCR = MAX_ADC_BUF;
u_pPDC2->PDC_RNCR = MAX_ADC_BUF;
u_pPDC2->PDC_RNPR = (unsigned int)adc_dma;
}
/*
unsigned int GetValue_chanel4() { // AD4 for debug
a_pADC->ADC_CR = 0x2; // 設置啟動位
while(!(a_pADC->ADC_SR&0x10)); // 等待轉換完成
return a_pADC->ADC_CDR4;
}
unsigned int GetValue_chanel5() { // AD5 for debug
a_pADC->ADC_CR = 0x2; // 設置啟動位
while(!(a_pADC->ADC_SR&0x20)); // 等待轉換完成
return a_pADC->ADC_CDR5;
}*/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -