模數轉換器即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...