基於ads1247的pt100測溫設計總結
本人做嵌入式開發,之前很多資源都是從部落格上看到,本次因為工作專案涉及到ads1247設計的溫度採集,需要設計硬體開發,網上找了很多資料走了不少彎了,現在專案完成,關於ads1247的設計使用做乙個簡單的總結,並公布原理圖和原**,供有需要的人參考。第一次寫文,寫的不好勿噴
採用ads1247組成的ad轉換器,通過spi與微控制器通訊,採集adc轉換的pt100兩端的電壓值,然後通過公式計算出溫度。
ads1247測溫原理圖
原理分析:
ads1247是一款高整合、高精度、24位模數轉換器。本設計就是利用的它內建的可程式設計的電流源輸出經過pt100,然後在pt100的兩端分別將ads247的差分輸入引腳接入,從而採集到pt100兩端的電壓值;同時讓電流經過乙個高精度的電阻,用ads1247的參考refp和refn採集電阻的電壓作為內部adc轉換參考電壓值,pt100兩端的電壓經過pga放大轉成24位數字量存在ads1247的暫存器裡。然後外部再通過spi通訊讀取出來。
ads1247採集pt100需要配置的暫存器:
ads1247_reg_mux0 0x00 多路復用控制暫存器0 ads1247_reg_vbias 0x01 偏置電壓暫存器
ads1247_reg_mux1 0x02 多路復用控制暫存器1
ads1247_reg_sys0 0x03 系統控制暫存器
ads1247_reg_cfc0 0x04 漂移係數校準暫存器0
ads1247_reg_cfc1 0x05 漂移係數校準暫存器1
ads1247_reg_cfc2 0x06 漂移係數校準暫存器2
ads1247_reg_fsc0 0x07 滿量程標準係數暫存器0
ads1247_reg_fsc1 0x08 滿量程標準係數暫存器1
ads1247_reg_fsc2 0x09 滿量程標準係數暫存器2
ads1247_reg_idac0 0x0a idac控制暫存器0
ads1247_reg_idac1 0x0b idac控制暫存器1
ads1247_reg_gpiocfg 0x0c gpio配置暫存器
ads1247_reg_gpiodir 0x0d gpio方向暫存器
ads1247_reg_gpiodat 0x0e gpio數字暫存器
ads1247初始化**:
void ads1247_init()
;uint8_t buf[4];
uint32_t data=0;
ads1247_waitbusy();
// if(ads_rdy6<=0)
// data=buf[1];
data=(data<<8)|buf[2];
data=(data<<8)|buf[3];
return data;}
基於ADS1 2下的ARM應用開發
1.巨集定義中volatile uint8 uint8等效於unsigned char,而volatile關鍵字主要作用是針對變數可能在編譯器控制之外被修改的情況,強制讓編譯器放棄對這個變數的優化。volatile 因為c編譯器的優化作用以及作業系統的cache等的影響,某些變數的值在記憶體中和暫存...
基於STM32的ADS1115使用例程
ads1232之stm32程式 stm32測試高精度adc篇 一 cherrymcu的部落格 csdn部落格 ads1232 基於ad7190的精密電子稱 4.8khz超低聲24位 adc,內建pga deming 0的部落格 csdn部落格 ad7190 cs5532 基於stm32的ads111...
基於ADS7870的多路資料採集系統序列介面設計
日期 2008 2 21 字型 大 中 小 1 引言 1個完整的資料採集器件可包含多路模擬開關 可程式設計增益放大器 a d轉換器和1個或多個數字i 0通道。所有這些功能都是通過1個序列資料口進行控制 的。德州儀器公司的ads7870就是這樣的器件。這款低成本的ads7870整合了12位 48 ks...