ADS1299心电图采集模块的使用指南

常用引脚

全部引脚

1.INxN/INxP 正极/负极信号输入端
2.DRDY:ADS1299采样完成时发生电平变化,用于提示本次采样完成
3.DAISY_IN:菊花链。使用多个ADS1299连接一起时,使用该引脚

4.START:启动电平转换

多路复用器


原理图如上所示
ADS1299可以通过MUX寄存器为各通道选择所采集的信号,INx采集的信号可以是外部引脚实际采集的信号,也可以通过设置MUX使其采集内部生成的测试信号(ADS1299可以生成方波测试信号,可以检查上位机功能是否正常),或者是温度传感器信号。
多路复用寄存器(MUX)有四位数据,分别为CHxSET[3:0]。每个通道各有一个该寄存器,用于控制该通道采集的数据。
其中MUX[2:0]单独控制各通道采集数据源。CHxSET[3]控制INxP(正极输入部分)是否连接偏置信号(SRB2)

1.MAIN

正常工作方式。MAIN指MUX[2:0]=000,110或者111.该工作方式下引脚各自读取INxP和INxN采集到的信号,之后传给信号增益模块,用于计算差分。
此外,在MAIN模式下,通过SRB1寄存器可以决定是否使偏执信号SRB1连接到INxP,即负极输入是否有差分信号。
设置MUX[3]可以决定正极输入是否有差分信号(不论是否在MAIN模式)。

2.噪声测试

设置MUX为001用于测试设备固有噪声,即将[(VVREFP + VVREFN)/ 2]作为两个通道输入

3.测试信号

设置MUX(CHnSET[2:0])为101,使INx采集内部测试信号。测试信号可通过内部寄存器控制。内部测试信号为一个方波。用于检测上位机工作是否正常

4.温度传感器

ADS1299内部有温度传感器,设置100使通道采集温度数据

5.电压测量

用于测试供电电压,设置为011采集不同电源电压。各通道采集电压与计算方法不同。
对于通道1、2、5、6、7和8,(MVDDP-MVDDN)为[0.5×(AVDD + AVSS)]。对于通道3和通道4,(MVDDP-MVDDN)是DVDD / 4。为了避免在测量电源时使PGA饱和,请将增益设置为1

6.前置激励信号(lead-off)

用于检测差分通道与测试者之间的连接是否正常

7.辅助单端输入

通过将MUX设置为010,CONFIG3寄存器中的BIAS_MEAS设置为1,可以单独将某个引脚采集的信号设置为BIASIN引脚的信号。—-BIASIN主要用于偏置信号中起作用,也可以作为多个单端输入通道。

差分电压输入

1.电压范围
差分输入范围取决于模拟电源和参考电压

2.PGA增益
增益可设置为1,2,4,6,8,12,24
通过CHnSET寄存器设置增益
要求增益后电压不能在电源电压200mv以内

时钟配置

CLKSEL引脚和CLK_EN寄存器控制时钟选择,内部或外部时钟

CLK引脚可以输出自身的内部时钟,用于将多个ADS1299使用菊花链串联时统一时钟。也可以输入外部时钟

GPIO配置

ADS1299有四个通用GPIO引脚
GPIO寄存及中的GPIOC用于配置引脚用于输入还是输出,通过GPIOD进行读写操作。

1.启动START

拉高电平,设备开始进行转换,完成时发出DRDY信号。通过SINGLE_SHOT寄存器位控制连续/单次模式,多设备时通过START用于同步

2.数据读取

连续读取RDATAC、单次读取RDATA
数据输出位数取决于通道数
8通道数据量位24状态位+24*8数据位
每个通道的数据首位时两个填充和一个MSB

SPI命令


其中RREG和WREG是两字节命令,在发送时两个字节间需要延迟大概2us

  1. wakeup 退出待机模式

  2. standby 进入待机模式

  3. RESET 重置

  4. START 开始数据转换

  5. STOP 停止数据转换 离上一个START至少4个tclk(需要延迟)

  6. RDATAC 连续数据读取
    每次转换数据放在输出寄存器中,可以直接移除,读取数据时不需要发送数据读取命令。默认为连续读取模式
    通过SDATAC命令停止RDATAC模式,之后可以发送其他命令。后续指令需要延迟(4个TCLK周期)

  7. SDATAC 停止连续读取

  8. RDATA 读数据指令
    DRDY变低后发出RDATA指令读取转换结果

  9. RREG 读寄存器
    双字节指令,第一个字节指定命令和寄存及地址,第二个字节指定寄存器个数(个数-1)

  10. WREG写寄存器
    同上,单后续跟着寄存器数据输入

寄存器表

1.CONFIG1 配置寄存器1

地址01h

功能
第七位 始终为1
第6位 确定是否时菊花链模式,0表示菊花链(多ADS1299)
第5位 CLK_EN位。确定内部时钟是否输出到CLK引脚
4:3位 永远是2
2:0位 低三位确定设备数据输出速率
设备输出速率:
000 : fMOD / 64 (16 kSPS)
001 : fMOD / 128 (8 kSPS)
010 : fMOD / 256 (4 kSPS)
011 : fMOD / 512 (2 kSPS)
100 : fMOD / 1024 (1 kSPS)
101 : fMOD / 2048 (500 SPS)
110 : fMOD / 4096 (250 SPS)
111 : Reserved (do not use)
fMOD =fCLK / 2.
2.CONFIG2 配置寄存器2

地址:02h,用于配置测试信号生成。

功能
第4位 INT_CAL 确定测试信号源(TEST_SIGNAL)
0表示来自外部驱动
1表示内部生成测试信号
第2位 CAL_AMP 确定测试信号幅值
第1:0位 配置测试信号频率
3.CONFIG3

地址:03h 配置reference和BIAS操作

功能
第七位 PD_REFBUF power_down reference buffer(reference缓冲区使能)
第4位 BIAS测量使能。置1时将BIAS_IN信号连接到MUX=010的通道上
第三位 确定BIASREF信号源。0表示外部信号,1表示内部产生的信号。内部生成信号位(AVDD+AVSS)/2
第2位 BIAS缓冲区使能。为0时关闭,1时打开
第1位 BIAS感知使能。0禁用,1开启
第0位 决定BIAS状态。0位connected,1位not connect
4 LOFF lead-off控制寄存器

控制lead-off检测操作(先导检测)

CHnSET 通道配置

地址:05h到0Ch,共8个通道
配置电源模式,PGA增益,多路复用通道

功能
7 开关通道。0正常工作,1表示通道断电
6:4 PGA增益设置。可以表示1,2,3,4,6,8,12,24
3 SRB2是否连接。0开启,1关闭
2:0 通道输入源
000正常输入
001输入短路(用于测量偏移或噪声
010与BIAS_MEAS一起用于BIAS测量
011MVDD电源测量
100温度传感器
101测试信号
110BIAS_DRP(正极驱动)
111BIAS_DRN(负极驱动)
BIAS_SENSP

地址:0Dh
用于从各通道选择postive signals 进行bias voltage derivation
决定各通道是否将信号参与BIAS反馈中

BIAS_SENSN

地址:0Eh

LOFF_SENSP/LOFF_SENSN

正/负信号 Lead-Off Detection寄存器
从各通道选择正/负信号进行lead-off。寄存器相应位置置1时,LOFF_STATP寄存器有效
决定各通道是否启用lead-off detection
地址:0Fh、10h

LOFF_STATP

前置信号状态寄存器
地址 12h
存储相应通道的正极通道是否开打
需要在LOFF_SENSP置位后才有效

LOFF_STATN

地址:13h
作用同上

GPIO 通用I/O寄存器

地址:14h
控制GPIO引脚的活动

作用
7:4 GPIOD[4:1] 用于GPIO读写数据
3:0 GPIOC[4:1] 控制相应GPIO引脚用于读还是用于写
0:输出 1:输入
MISC1 杂项寄存器1

地址:14h
提供将SRB1引脚路由到各通道

第5位 决定是否将SRB1连接到所有通道(反相输入端)
0:打开 1:关闭
MISC2 杂项寄存器2

地址 16h
保留,未使用

CONFIG4 配置寄存器4

地址:17h
配置转换模式,决定是否启用LOFF

第3位 决定转换模式
0:连续转换 1:单次转换
第1位 PD_LOFF_COMP 决定是否使用lead-off比较器

ADS1299一些功能介绍

基础使用

Created with Raphaël 2.3.0

上电

是否有外部时钟

设置外部时钟和寄存器

设置PDWN=1、RESET=1,等待上电复位

VCAP>=1.1V

发出重置脉冲并等待

发送SDATAC命令(系统默认启动时在RDATAC模式)

是否有外部reference

写寄存器,CONFIG1写入96h,CONFIG2写入C0h,并所有通道设置输入短路(CHnSET写入01h)

启动,发送START命令

发送RDATAC命令开始转换

设置CLKSET,等待唤醒

yes

no

yes

no

yes

no

BIAS 偏置驱动电极

一种反馈信号,从ADS1299发送到使用者体表
在采集信号时连接到使用者身上,用于抑制共模干扰。
通过模拟电源中的电压,或者双极引脚中采集到的电压作为参考输入,反馈到使用者身上,从而抑制共模干扰。
(向使用者体表发送电压信号,降低干扰)
通过寄存器可以设置选择哪些通道用于参与BIAS
(BIAS_SENSP和BIAS_SENSN)

SRB

当多个差分通道公用一个差分负极输入端时,可以使用SRB1作为公共的负极输入端。
比如测量脑电信号时,各通道正极端置于头皮用于采集信号,负极端位公共负极,一般置于耳部,用于做公共差分

多设备配置

使用多个ADS1299有级联模式和菊花链模式
暂略

测量脑电的典型电路连接



SRB1用于负极电路的参考信号,采集脑电信号时可以做所有引脚的差分负极。
使用的差分通道通过BIAS将信号再反馈给人体

物联沃分享整理
物联沃-IOTWORD物联网 » ADS1299心电图采集模块的使用指南

发表评论