我正在使用 ADS1241将热电偶毫伏转换为数字数据。我通过向 ODAC 写入零来禁用它、然后发出 SELFCAL 命令。 之后、我使用值0x83启用了 ODAC、该值大约为16毫伏。 我有1.235伏作为基准。 PGA 为1、缓冲器禁用、范围位为零。
SELFCAL 命令可消除 ODAC 的影响。
源代码为:
偏移= 0x00;
ADS1241WriteRegister (ADS1241_ODAC_register、1、offset);
for (j = 0;j < 200;j++);
for (j = 0;j < 200;j++);
for (j = 0;j < 200;j++);
////自校准
ADS1241AssertCS (1);
for (j = 20;j > 0;j-);
buf_ads[0]=(ADS1241_SELFCAL);
HAL_SPI_transmit (&hspi1、buf_ads、1、100);
for (j = 0;j < 20;j++);
//HAL_DELAY (100);
ADS1241AssertCS (0);
对于(i=0;i<1000;i++);
对于(i=0;i<1000;i++);
对于(i=0;i<1000;i++);
偏移= 0x83;
ADS1241WriteRegister (ADS1241_ODAC_register、1、offset);
for (j = 0;j < 200;j++);
for (j = 0;j < 200;j++);