从 ADS1298读取和处理 ECG 信号时仍然有问题。
我的原理图中有一个双极电源、其中 AVDD 为+3.3V、DVDD 为+2.5V、AVSS 为-2.5V、GND。
e2e.ti.com/.../3187.ADS1298_5F00_v1.02.pdf
SPI 工作正常、我可以在设置芯片 ID 时读取和读回寄存器。 (逻辑分析仪也会对其进行确认)
我的每个通道都有一个 RC 低通滤波器(4.7kOhm 和1000pF)、然后截止频率为33.8kHz。
我尝试使用单引线模式、因此我将第一个电极连接到1P、第二个电极连接到1N、我没有使用 RLD 电极。 所有其他7对电极和 RLD 未连接。
WRITE_BYTE (CONFIG1、0x80 | 0x04 | 0x02);//启用8kHz 采样率 WRITE_BYTE (CONFIG2、0x10); WRITE_BYTE (CONFIG3、0x08 | 0x04 | 0x80 | 0x20 | 0x40); WRITE_BYTE (CONFIG4、0x02); WRITE_BYTE (RLD_SENSP、0x00); WRITE_BYTE (RLD_SENSN、0x00); WRITE_BYTE (LOFF_SENSP、0xFF); WRITE_BYTE (LOFF_SENSN、 0x02); WRITE_BYTE (LOFF_FLIP、0x00); WRITE_BYTE (LOFF_STATP、0x00); WRITE_BYTE (LOFF_STATN、0x03); WRITE_BYTE (GPIO、0x00); WRITE_BYTE (PACE、 0x00); WRITE_BYTE (WCT1、0x08); WRITE_BYTE (WCT2、0x00);
并在我的 DRDY 被切换时读取数据
int ch = 1;
for (int i=3*ch;i<3*ch+3;i++)//错过头
文件的前3个字节{
nrf_log_internal_raW_info ("%d\r\n"、out[i]);// out 是我的数据
}
我在 Processing 中编写了一个简单的代码、它获取串行数据并绘制图表
当我将我的2个电极放在我的左右手腕上时、我得到了这个图像
当我取下这2个电极时、我可以看到这个
采样率为250SPS、而且我还将输出数据保存到文件中、以便使用三阶巴特沃斯低通滤波器在 MATLAB 中进行处理。
sig = load ('ECG.txt');
fs = 250;我的 ADS1298
FC 的采样率频率%= 50;50Hz 的截止频率%
[b、a]=黄油(3、fC/(fs/2)、'low');第三阶滤波
器 freqz (b、a);
LPF = filter (b、a、
lpf);图;
但我看到我不是期望的、没有清晰的峰值和 PQ 段







