s3c2440裸機 ADC程式設計

2022-06-16 06:24:06 字數 1400 閱讀 5910

模數轉換器即a/d轉換器,或簡稱adc,通常是指乙個將模擬訊號轉變為數碼訊號的電子元件。

如圖,是把可變電阻上的電壓值變換的模擬訊號通過adc轉換,輸出數碼訊號。

對於數碼訊號我們需要得到它的2個屬性:

1.轉換精度:

用多少位來儲存這個資料(假如是10 bit)。那麼最大值0b111111111對應3.3v, 0b0對應0v。

2.取樣/轉換速度:

可以看出s3c2440的轉換精度可達10 bit, 轉換速率可達 500ksps.

下圖是s3c2440晶元的adc轉換框圖,

從上圖可以看出ad converter前有乙個mux選擇器,用來選擇模擬輸入源,這裡選擇a[3:0]作為輸入源。

下面是編寫程式要做的步驟:

1.確定是哪一路訊號:設定8:1mux

2.設定工作時鐘

3.啟動adc

4.讀狀態,判斷adc轉換是否成功。

5.讀資料

1.adc 控制暫存器(adccon)

bit[15]:唯讀,用來表示轉換是否完成

bit[14:6]:用來設定adc頻率(如果是auto tsc則不用設定該位)

bit[5:3]:用來選擇模擬輸入源

bit[2]:用來設定是否待機

bit[0]:用來啟動adc

2.adc 啟動延時暫存器(adcdly)

3.adc 轉換資料暫存器(adcdat0)

bit[9:0]表示轉換後的資料

void adc_init(void)

int adc_read_ain0(void)

測試結果如下:

s3c2440裸機串列埠UART

串列埠收發資料 115200,8n1。每一位的時間是t 1 115200。傳輸乙個位元組需要10位 包括起始位1位,資料位8位,停止位1位,需要的時間是t 10 115200。每秒傳輸的的位元組數 1 t 115200 10 11520byte。回環模式 一發出資料就立刻收到,用於測試。main.c...

S3C2440裸機 時鐘

目錄 1.s3c2440的時鐘體系 1.1.s3c2440結構框圖 1.2 s3c2440時鐘樹 1.3 s3c2440上電順序 2.暫存器配置 2.1clkdivn暫存器 2.2mpllcon暫存器 2.3設定cpu為非同步模式 3.程式設計 4.實驗 從上面的結構圖可以看出,s3c2440主要分...

s3c2440裸機 清bss原理及實現

我們先舉個例子 include s3c2440 soc.h include uart.h char g char a data char g char3 a const char g char2 b rodata int g a 0 bss int g b bss int main void ret...