SPR0,SPR1是SPI時(shí)鐘頻率選擇位,控制SPI時(shí)鐘為單片機(jī)時(shí)鐘的幾分頻,如表1所示:
SPI接口初始化程序如下所示:
|
2.2 A/D數(shù)據(jù)采集程序 ADS1212內(nèi)部有5種功能寄存器。其中,指令寄存器(INSR)和命令寄存器(CMR)用于控制轉(zhuǎn)換器的操作。數(shù)據(jù)輸出寄存器(DOR)用于存放最新的轉(zhuǎn)換結(jié)果。零點(diǎn)校準(zhǔn)寄存器(OCR)和滿量程寄存器(FCR)用于對(duì)轉(zhuǎn)換結(jié)果進(jìn)行校準(zhǔn)。 指令寄存器INSR是一個(gè)8位寄存器,對(duì)ADS1212的每一步操作都是從它開始的。具體格式如下:
R/W是讀寫控制位;“1”為讀操作,“0”為寫操作。 MB1MB0是欲讀寫的字節(jié)數(shù)?!?0”~“11”對(duì)應(yīng)“1”~“4”; A3~A0是欲讀寫寄存器的地址。 命令寄存器CMR是一個(gè)32位寄存器,通過對(duì)它的操作可以設(shè)置ADS1212的各種工作模式,格式如下: | | 采樣精度同增益和加速因子的設(shè)置都有關(guān)系,具體如表3所示。這里需要指出的是。不能同時(shí)追求采樣速度和采樣精度,只有選取合適的速度和精度才能體現(xiàn)出該芯片的優(yōu)勢(shì)。 注:G=1,fXIN=1 MHz(fXIN是外部晶體振蕩囂頻率) 零點(diǎn)校準(zhǔn)寄存器(OCR)和滿量程寄存器(FCR)用于對(duì)轉(zhuǎn)換結(jié)果進(jìn)行校準(zhǔn)。它們都是24位寄存器,可以在初始化中對(duì)其寫入,以便用于校準(zhǔn)輸出數(shù)據(jù)。 數(shù)據(jù)采集程序的流程圖如圖2所示。 如下是程序的部分片段: 數(shù)據(jù)輸出寄存器DOR為24位寄存器,用于存放最新的轉(zhuǎn)換結(jié)果。只有在DRDY信號(hào)為低時(shí),DOR中的數(shù)據(jù)才有效。如果在(1/fDATA)-12 (1/fXIN)時(shí)間內(nèi)沒有讀出DOR中的數(shù)據(jù),則它將會(huì)被新的數(shù)據(jù)所覆蓋。DOR中輸出的數(shù)據(jù)格式可以用補(bǔ)碼形式表示,如 “FFFFFFH~000000H~7FFFFFH”,表示“負(fù)最大量程~0~正最大量程”;也可以用原碼形式表示,如 “000000H~800000H~FFFFFFH”,表示“負(fù)最大量程~0~正最大量程”,這可用設(shè)置CMR3的DF位來實(shí)現(xiàn)。
3 結(jié) 語 采用ADS1212與SST89E564RD完成的數(shù)據(jù)采集處理系統(tǒng)采集速度快,精度高,還能將數(shù)據(jù)及時(shí)通過串口發(fā)送給上位機(jī)程序,且外圍電路簡單。因此,能用于較為復(fù)雜的系統(tǒng)開發(fā),非常適用于工業(yè)控制、自動(dòng)測(cè)試、儀器儀表、遠(yuǎn)程通信等領(lǐng)域的數(shù)據(jù)采集與傳輸。
|
|
評(píng)論