?
?
ADS1247與ADS1248的寄存器列表
?
ADDRESS
REGISTER
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
00h
MUX0
BCS1
BCS0
MUX_SP2
MUX_SP1
MUX_SP0
MUX_SN2
MUX_SN1
MUX_SN0
01h
VBIAS
VBIAS7
VBIAS6
VBIAS5
VBIAS4
VBIAS3
VBIAS2
VBIAS1
VBIAS0
02h
MUX1
CLKSTAT
VREFCON1
VREFCON0
REFSELT1
REFSELT0
MUXCAL2
MUXCAL1
MUXCAL0
03h
SYS0
0
PGA2
PGA1
PGA0
DR3
DR2
DR1
DR0
04h
OFC0
OFC7
OFC6
OFC5
OFC4
OFC3
OFC2
OFC1
OFC0
05h
OFC1
OFC15
OFC14
OFC13
OFC12
OFC11
OFC10
OFC9
OFC8
06h
OFC2
OFC23
OFC22
OFC21
OFC20
OFC19
OFC18
OFC17
OFC16
07h
FSC0
FSC7
FSC6
FSC5
FSC4
FSC3
FSC2
FSC1
FSC0
08h
FSC1
FSC15
FSC14
FSC13
FSC12
FSC11
FSC10
FSC9
FSC8
09h
FSC2
FSC23
FSC22
FSC21
FSC20
FSC19
FSC18
FSC17
FSC16
?
0Ah
?
IDAC0
?
ID3
?
ID2
?
ID1
?
ID0
DRDY MODE
?
IMAG2
?
IMAG1
?
IMAG0
0Bh
IDAC1
I1DIR3
I1DIR2
I1DIR1
I1DIR0
I2DIR3
I2DIR2
I2DIR1
I2DIR0
0Ch
GPIOCFG
IOCFG7
IOCFG6
IOCFG5
IOCFG4
IOCFG3
IOCFG2
IOCFG1
IOCFG0
0Dh
GPIODIR
IODIR7
IODIR6
IODIR5
IODIR4
IODIR3
IODIR2
IODIR1
IODIR0
0Eh
GPIODAT
IODAT7
IODAT6
IODAT5
IODAT4
IODAT3
IODAT2
IODAT1
IODAT0
?
?
?
?
ADS1247 and ADS1248 寄存器定義
MUX0多路控制開關0。此寄存器可以任意組合的差分輸入選擇的任何輸入通道。請注意,此設置可以通過muxcal和VBIAS位取代。
MUX0? 地址00H ????????????????????????????????????????????????????????????????????????????????????????RESET VALUE = 01h
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
BCS1
BCS0
MUX_SP2
MUX_SP1
MUX_SP0
MUX_SN2
MUX_SN1
MUX_SN0
Bits 7:6?? BCS1:0????????? 電流源電流大小設置
00 =關閉電流源(默認)
01 = 0.5uA
10 = 2uA
11 = 10uA
Bits 5:3????????? MUX_SP2:0? 正輸入通道選擇
000 = AIN0 (default)
001 = AIN1
010 = AIN2
011 = AIN3
100 = AIN4 (ADS1248only)
101 = AIN5 (ADS1248only)
110 = AIN6 (ADS1248only)
111 = AIN7 (ADS1248only)
Bits 2:0?????? MUX_SN2:0 負輸入通道選擇
000 = AIN0
001 = AIN1 (default)
010 = AIN2
011 = AIN3
100 = AIN4 (ADS1248only)
101 = AIN5 (ADS1248only)
110 = AIN6 (ADS1248only)
111 = AIN7 (ADS1248only)
?
VBIAS—偏執(zhí)電壓設置寄存器
?
VBIAS – 地址 01h???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 00h
DEVICE
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
ADS1248
VBIAS7
VBIAS6
VBIAS5
VBIAS4
VBIAS3
VBIAS2
VBIAS1
VBIAS0
ADS1247
0
0
0
0
VBIAS3
VBIAS2
VBIAS1
VBIAS0
Bits 7:0?????? VBIAS7:0 設置偏壓(AVDD + AVSS)/2到選擇的模擬輸入
0 = 關閉偏執(zhí)電壓 (default)
1 = 開啟偏執(zhí)電壓到對應的輸入 (bit 0 對應到AIN0,依次類推.).
?
MUX1—多路開關控制器1
?
MUX1 - ADDRESS 02h?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 00h
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
CLKSTAT
VREFCON1
VREFCON0
REFSELT1
REFSELT0
MUXCAL2
MUXCAL1
MUXCAL0
Bit 7?????????? CLKSTAT? 此位為只讀,并表示內(nèi)部或外部振蕩器是否正在使用。
0 = 內(nèi)部時鐘正在使用
1 = 外部時鐘正在使用
Bits 6:5?????? VREFCON1:0? 控制內(nèi)部電壓基準。這些位允許引用完全打開或關閉,或允許引用狀態(tài)跟隨設備的狀態(tài)。注意內(nèi)部參考為IDAC功能操作要求。
00 =關閉基準fault)
01 = 一直開啟基準
10 or 11 =轉(zhuǎn)換完成后或關機操作后關閉基準(跟隨相關狀態(tài)自動開啟或關閉)
Bits 4:3?????? REFSELT1:0 ADC參考選擇
00 =使用REF0作為基準輸入(default)
01 =使用REF1作為基準輸入(只支持ADS1248)
10 =選擇內(nèi)部基準
11 =在內(nèi)部連接到參考選擇REF0輸入對(不知道干嘛的)
Bits 2:0?????? MUXCAL2:0這些位用于選擇一個測量方式(選擇的測量方式將取代MUX_SP, MUX_SN, ?and VBIAS)
000 =正常運行 (default)
001 =偏移測量
010 =增益測量
011 =內(nèi)部溫度測量
100 = 外部 REF1 測量(ADS1248 only)
101 = 外部REF0測量
110 = AVDD 測量
111 = DVDD 測量
MUXCAL 設置
?
MUXCAL[2:0]
PGA GAIN 設置
ADC INPUT
000
通過SYS0設置
正常模式
001
通過SYS0設置
輸入接到 (AVDD + AVSS)/2
010
強制設置為1 1
VREFP – VREFN (full-scale)
011
強制設置為1
內(nèi)部溫度測量
100
強制設置為1
(VREFP1 – VREFN1)/4
101
強制設置為1
(VREFP0 – VREFN0)/4
110
強制設置為1
(AVDD – AVSS)/4
111
強制設置為1
(DVDD – DVSS)/4
?
設置會修改PGA,恢復正常模式后PGA由SYS0控制
?
?
SYS0—系統(tǒng)控制寄存器?0
?
SYS0 - ADDRESS 03h??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 00h
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
0
PGA2
PGA1
PGA0
DOR3
DOR2
DOR1
DOR0
Bit 7?????????? 必須一直為 '0'
Bits 6:4?????? PGA2:0 ?PGA增益設置
000 = 1 (default)
001 = 2
010 = 4
011 = 8
100 = 16
101 = 32
110 = 64
111 = 128
Bits 3:0?????? DOR3:0? ADC采集速率設置 最大設置為1001,選擇2000sps
0000 = 5SPS (default)
0001 = 10SPS
0010 = 20SPS
0011 = 40SPS
0100 = 80SPS
0101 = 160SPS
0110 = 320SPS
0111 = 640SPS
1000 = 1000SPS
1001 to 1111 = 2000SPS
?
OFC23:0??? ADS1248偏移校準系數(shù)寄存器.
?
OFC0—偏移校正系數(shù)寄存器0
?
OFC0 - ADDRESS 04h?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 000000h
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
OFC7
OFC6
OFC5
OFC4
OFC3
OFC2
OFC1
OFC0
?
OFC1—偏移校正系數(shù)寄存器1
?
OFC1 - ADDRESS 05h?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 000000h
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
OFC15
OFC14
OFC13
OFC12
OFC11
OFC10
OFC9
OFC8
?
OFC2—偏移校正系數(shù)寄存器2
?
OFC2 - ADDRESS 06h?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 000000h
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
OFC23
OFC22
OFC21
OFC20
OFC19
OFC18
OFC17
OFC16
?
?
FSC23:0 滿量程校準系數(shù)寄存器(復位后恢復出廠校準值).
?
FSC0—滿量程校準寄存器0
?
FSC0 - ADDRESS 07h????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE IS PGA DEPENDENT (1)
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
FSC7
FSC6
FSC5
FSC4
FSC3
FSC2
FSC1
FSC0
?
?
FSC1—滿量程校準寄存器1
?
FSC1 - ADDRESS 08h????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE IS PGA DEPENDENT (1)
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
FSC15
FSC14
FSC13
FSC12
FSC11
FSC10
FSC9
FSC8
?
FSC2—滿量程校準寄存器2
?
FSC2 - ADDRESS 09h????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE IS PGA DEPENDENT (1)
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
FSC23
FSC22
FSC21
FSC20
FSC19
FSC18
FSC17
FSC16
?
?
?
IDAC0?可編程電流源控制寄存器?0
?
IDAC0 - ADDRESS 0Ah????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = x0h
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
ID3
ID2
ID1
ID0
DRDY MODE
IMAG2
IMAG1
IMAG0
Bits 7:4?????? ID3:0
只讀只讀,工廠編程位,用于識別修改版本。
Bit 3?????????? DRDY MODE??用于設置DOUT/DRDY輸出數(shù)據(jù)準備就緒狀態(tài),低電平有效
0 = DOUT/DRDY僅作為數(shù)據(jù)輸出(default)
1 = DOUT/DRDY引腳功能既作為數(shù)據(jù)輸出和數(shù)據(jù)準備,低電平有效
Bits 2:0? IMAG2:0? ?ADS1247/8有兩個可編程電流源DAC可用于傳感器激勵。這幾位控制激勵電流的大小。IDAC要求內(nèi)部基準源必須開啟.
000 = off (default)
001 = 50mA
010 = 100mA
011 = 250mA
100 = 500mA
101 = 750mA
110 = 1000mA
111 = 1500mA
?
?
IDAC1 可編程電流源控制寄存器1
?
IDAC1 - ADDRESS 0Bh???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = FFh
DEVICE
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
ADS1248
I1DIR3
I1DIR2
I1DIR1
I1DIR0
I2DIR3
I2DIR2
I2DIR1
I2DIR0
ADS1247
0
0
I1DIR1
I1DIR0
0
0
I2DIR1
I2DIR0
?
ADS1247/8有2路IDAC,可以連接到IEXC1,IEXC2或任意模擬輸入。
?
Bits 7:4?????? I1DIR3:0 這些位選擇第一電流源DAC輸出引腳。
0000 = AIN0
0001 = AIN1
0010 = AIN2
0011 = AIN3
0100 = AIN4 (ADS1248only)
0101 = AIN5 (ADS1248only)
0110 = AIN6 (ADS1248only)
0111 = AIN7 (ADS1248only)
10x0 = IEXT1 (ADS1248only)
10x1 = IEXT2 (ADS1248only)
11xx = 關閉(default)
Bits 3:0?????? I2DIR3:0 這些位選擇了第二電流源DAC的輸出引腳
0000 = AIN0
0001 = AIN1
0010 = AIN2
0011 = AIN3
0100 = AIN4 (ADS1248only)
0101 = AIN5 (ADS1248only)
0110 = AIN6 (ADS1248only)
0111 = AIN7 (ADS1248only)
10x0 = IEXT1 (ADS1248only)
10x1 = IEXT2 (ADS1248only)
11xx = 關閉(default)
?
?
GPIOCFG—GPIO 配置寄存器,用于配置GPIO與模擬輸入引腳復用功能
GPIO0 復用 REFP0
GPIO1 復用 REFN0
GPIO2 復用 AIN2
GPIO3 復用 AIN3
GPIO4復用 AIN4 (ADS1248)
GPIO5復用 AIN5 (ADS1248)
GPIO6復用 AIN6 (ADS1248)
GPIO7復用 AIN7 (ADS1248)
?
GPIOCFG - ADDRESS 0Ch?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 00h
DEVICE
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
ADS1248
IOCFG7
IOCFG6
IOCFG5
IOCFG4
IOCFG3
IOCFG2
IOCFG1
IOCFG0
ADS1247
0
0
0
0
IOCFG3
IOCFG2
IOCFG1
IOCFG0
Bits 7:0?????? IOCFG7:0 GPIO與模擬輸入復用設置,注意ADS1248支持所有GPIO,但是ADS1247只支持GPIO1-GPIO3,也就是BIT0-BIT3
0 = 該引腳用作模擬輸入(default)
1 = 該引腳用作 GPIO pin
?
?
GPIODIR—GPIO方向寄存器
GPIODIR - ADDRESS 0Dh???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 00h
DEVICE
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
ADS1248
IODIR7
IODIR6
IODIR5
IODIR4
IODIR3
IODIR2
IODIR1
IODIR0
ADS1247
0
0
0
0
IODIR3
IODIR2
IODIR1
IODIR0
Bits 7:0?????? IODIR7:0 用于控制GPIO方向,注意ADS1248支持所有GPIO,但是ADS1247只支持GPIO1-GPIO3,也就是BIT0-BIT3
0 = GPIO輸出模式 (default)
1 = GPIO ?輸入模式
?
?
GPIODAT—GPIO數(shù)據(jù)寄存器
?
GPIODAT - ADDRESS 0Eh??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? RESET VALUE = 00h
DEVICE
BIT 7
BIT 6
BIT 5
BIT 4
BIT 3
BIT 2
BIT 1
BIT 0
ADS1248
IODAT7
IODAT6
IODAT5
IODAT4
IODAT3
IODAT2
IODAT1
IODAT0
ADS1247
0
0
0
0
IODAT3
IODAT2
IODAT1
IODAT0
Bits 7:0?????? IODAT7:0 如果對應GPIO設置為輸出,則寫入對應bit會輸出到相應引腳,如果對應GPIO設置為輸入,則讀取對應bit對應輸入值,注意ADS1248支持所有GPIO,但是ADS1247只支持GPIO1-GPIO3,也就是BIT0-BIT3
SPI 命令
?
一些指令是獨立的命令(例如,復位),而另一些則需要額外的字節(jié)(例如,寫命令需要計數(shù)和數(shù)據(jù)字節(jié))
?
?
操作數(shù)說明:
n =讀寫寄存器的數(shù)量(要讀取的字節(jié) – 1)
r = 寄存器 (0 to 15)
x = 不關心
?
SPI 命令列表
?
COMMAND TYPE
COMMAND
DESCRIPTION
1st COMMAND BYTE
2nd COMMAND BYTE
?
?
?
System Control
WAKEUP
退出睡眠模式
0000 000x (00h, 01h)
?
SLEEP
進入睡眠模式
0000 001x (02h, 03h)
?
SYNC
同步AD轉(zhuǎn)換
0000 010x (04h, 05h)
0000-010x (04,05h)
RESET
復位
0000 011x (06h, 07h)
?
NOP
???????????? 空指令
1111 1111 (FFh)
?
?
?
Data Read
RDATA
讀取數(shù)據(jù)
0001 001x (12h, 13h)
?
RDATAC
連續(xù)讀取數(shù)據(jù)
0001 010x (14h, 15h)
?
SDATAC
停止讀取數(shù)據(jù)
0001 011x (16h, 17h)
?
Read Register
RREG
讀寄存器 rrrr
0010 rrrr (2xh)
0000_nnnn
Write Register
WREG
寫寄存器rrrr
0100 rrrr (4xh)
0000_nnnn
?
?
Calibration
SYSOCAL
系統(tǒng)失調(diào)校準
0110 0000 (60h)
?
SYSGCAL
系統(tǒng)增益校準
0110 0001 (61h)
?
SELFOCAL
自校正
0110 0010 (62h)
?
?
?
?