(悬赏5000元)ADS1220采集不到数据
本帖最后由 Cjy_JDxy 于 2019-6-13 08:44 编辑芯片用的STM32F767,环境用的是MDK5
ADS1220采集数据全是65535.
电路图:
程序:
请高手看看,哪里有问题?谢谢!
用示波器抓下波形,和AD芯片要求的时序对比下看看,差别在哪里; 谢谢!writeReg(ADS1220_REG_0,0x55);
hal_ads1220._Reg = readReg(ADS1220_REG_0);
这两条语句,读写寄存器都没问题,说明读写时序是对的。
示波器不好抓,只有两个通道。 数据类型错了.原来是unsigned int类型,现在改成long型,数据有变化,可是最高字节是0xff,是负值。
把两根信号线倒了一下,还是负值。很奇怪。 1. 设置了选择REFP0吗?
2. 考虑一下输入确实转换结果为0xFFFFFF。 BOY200501 发表于 2019-6-10 21:19
1. 设置了选择REFP0吗?
2. 考虑一下输入确实转换结果为0xFFFFFF。
谢谢!
选择AIN1是正,AIN2是负。
转换结果有变化,不是FFFFFF。我感觉不应该是负值。
以上是我的初始化代码。大神看看有什么问题吗?谢谢!
传感器正常输出0-20mV,测芯片的7脚和10脚却760多mV.
不知道是不是电路有问题? 随便举一个采样值:4294954577.
太大啦
这是CS和DOUT的波形,搞不明白,为什么DOUT的波形是一个锯齿波的形状。
netjob 发表于 2019-6-13 15:00
用一个I2S的 ADC 不是更好吗?24BIT/96KHZ采样率。 你这个ADC多少?
24BIT/2KSPS 用示波器抓波形比价靠谱 直接接一个固定电平的 试试看呢 请问这个芯片是干嘛用的 观海 发表于 2019-7-4 15:32
请问这个芯片是干嘛用的
24位AD采样 Cjy_JDxy 发表于 2019-7-4 16:03
24位AD采样
好的 非常感谢 void Setup_ADS1220 (unsigned char inputMux,unsigned char dataRate,unsigned char conversionMode)
{
unsigned char config;
config = inputMux + ADS1220_GAIN_1 + ADS1220_PGA_BYPASS;//inputMux 选择通道 ADS1220_GAIN_1增益已设为1 ADS1220_PGA_BYPASS禁用旁路PGA
config = dataRate + ADS1220_OP_MODE_NORMAL + conversionMode + ADS1220_TEMP_SENSOR_OFF + ADS1220_BURN_OUT_CURRENT_OFF;//dataRate速率设置 ADS1220_OP_MODE_NORMAL正常采集模式 conversionMode单/连续模式 ADS1220_TEMP_SENSOR_OFF禁用温度传感器 ADS1220_BURN_OUT_CURRENT_OFF电流源关闭
config = ADS1220_VREF_EXT_REF0_PINS + ADS1220_FIR_NONE + ADS1220_LOW_SIDE_POWER_OPEN + ADS1220_IDAC_CURRENT_OFF; //ADS1220_VREF_EXT_REF0_PINS 基准电压ADS1220_FIR_NONE 滤波设置关 ADS1220_LOW_SIDE_POWER_OPEN 旁侧电源断开 ADS1220_IDAC_CURRENT_OFF激励电源关闭
config = ADS1220_IDAC1_DISABLED + ADS1220_IDAC2_DISABLED + ADS1220_DRDY_ON_DRDY_ONLY;//ADS1220_IDAC1_DISABLED禁用路由设置ADS1220_IDAC2_DISABLED禁用路由设置 ADS1220_DRDY_ON_DRDY_ONLY 数据就绪标志位仅专用接口
ADS1220_Write_Regs (config, ADS1220_CONFIG_0_REG, 4);
}
Setup_ADS1220(ADS1220_MUX_AIN0_AVSS,ADS1220_DATA_RATE_330SPS,ADS1220_CONVERSION_SINGLE_SHOT);
ReadConversionData=0;
ADS1220_Start();
while(!ReadConversionData);
ADS1220_Get_RTD_Conversion_Data_Calibrated (&ADS1220RTDdata_flag); 一定要先保证电路是没问题的,再去调试程序 345344300 发表于 2019-7-8 14:53
void Setup_ADS1220 (unsigned char inputMux,unsigned char dataRate,unsigned char conversionMode)
{
...
谢谢!你的回复对我还是有帮助的 345344300 发表于 2019-7-8 14:55
一定要先保证电路是没问题的,再去调试程序
那如何保证硬件没问题呢?
页:
[1]
2