您好!
读取 K 型热电偶时遇到问题。 我已经根据 ADS1248 www.ti.com/.../ads1248.pdf 数据表中的热电偶示例10.2.2实现了一个电路 (没有冷端补偿)。 下面随附了我的原理图。 我使用微控制器的电源作为3V3偏置源。
当我在(暖)环境空气中测量热电偶时、我得到4.6欧姆。 如果我用回流焊站中的200C (392F)空气将其爆炸、则测量值为36.3欧姆。 如果我在测试点1和2之间进行测量、则在环境空气中获得2.1mV 的输出、并在回流温度指向它的情况下获得7.6mV 的输出。 电气上、这似乎是声音。
在代码方面、我将使用我之前与此 ADC 一起使用的库在颗粒光子(基于 STM32F205)微控制器上测试此情况。 这就是我要设置的内容:
// AIN1为正,AIN0为负 ADC.regWrite (INPMUX_ADDR_MASK、ADS_P_AIN1 + ADS_N_AIN0); //增益为32 ADC.regWrite (PGA_ADDR_MASK、ADS_PGA_ENABLED + ADS_GAIN_32); // datarate 为20 ADC.regWrite (PGA_MASK );//始终选中 ADDR_REF_REF_REF_REF_ADDR_MASK;ADS_REF_REF_REF_ENABLE_ADDR_ON (ADDR_REF_REF_REF_REF_ON)
因此、我将使用内部基准来测量 AIN0与 AIN1。 我可以看到寄存器正在更新和设置。 当我输出 ADC 的原始数据读数时、我得到的数字在"8405608"(+/-200)左右的范围内、但它们不受对热电偶施加热量的影响。
我觉得我错过了这里的一些基本东西、似乎看不到我的问题在哪里?
寄存器转储:
寄存器0x00 = 0x08 // ID 寄存器0x01 = 0x00 //状态 寄存器0x02 = 0x10 // INPMUX 寄存器0x03 = 0x0d // PGA 寄存器0x04 = 0x04 //数据速率 寄存器0x05 = 0x0a // REF 寄存器0x06 = 0x00 // IDACMAG 寄存器0x07 = 0xff // IDACMUX 寄存器0x08 = 0x00 // VBIAS 寄存器0x09 = 0x01 // SYS 寄存器0x0a = 0x00 寄存器0x0B = 0x00 寄存器0x0c = 0x00 寄存器0x0d = 0x00 寄存器0x0E = 0x00 寄存器0x0F = 0x40 寄存器0x10 = 0x00 寄存器0x11 = 0x00

