请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:ADS124S08 主题中讨论的其他器件:MSPM0G3507、
您好
我正在使用 mspm0g3507从 ads124s08 ADC 读取数据。 但我得到的价值不符合预期。 我已经根据 DSO 进行了检查、所有波形都正确无误、如数据表所示。 我将附加波形文件、同时还有代码让我知道我哪里做错了。
int main(void) { SYSCFG_DL_init(); // init all gpio and spi with spi mode 1 delay_cycles(70400); //wait for POST operation delay_cycles(32000); //required min 20ns we provide 1ms delay delay_cycles(160000); // delay of min of 4096*tclk readRegs( ID_ADDR_MASK,19,Data); //reading default setting ADS124S08_Init(); // configuring adc readRegs_after( ID_ADDR_MASK,19,Data); //readbck new configuration DL_GPIO_setPins(GPIO_LEDS_START_PORT,GPIO_LEDS_START_PIN); // pull start pin high to start convertion delay_cycles(224000); while(1) { if (!DL_GPIO_readPins(GPIO_LEDS_DRDY_ADC_PORT, GPIO_LEDS_DRDY_ADC_PIN)) // check of low transition of DRDY pin { DL_SPI_transmitData8(SPI_0_INST,RDATA_OPCODE_MASK); delay_cycles(32000); iData.adcValue1 = dataRead(&dStatus, &dData, &dCRC); } RTDRes = CodeToRes(&iData); RTDTemp = calculateTemperature(RTDRes); } }
数据读取
uint32_t dataRead(uint32_t *dStatus, uint32_t *dData, uint32_t *dCRC) { uint32_t xcrc; uint32_t xstatus; uint32_t iData; uint32_t Data_t; DL_GPIO_clearPins(GPIO_LEDS_CS0_PORT,GPIO_LEDS_CS0_PIN); if((registers_after[SYS_ADDR_MASK] & 0x01) == DATA_MODE_STATUS) { xstatus = xferWord(0x00); dStatus[0] = (uint8_t)xstatus; } // get the conversion data iData = xferWord(0x00); iData = (iData<<8) + xferWord(0x00); iData = (iData<<8) + xferWord(0x00); if((registers_after[SYS_ADDR_MASK] & 0x02) == DATA_MODE_CRC) { xcrc = xferWord(0x00); dCRC[0] = (uint8_t)xcrc; } DL_GPIO_setPins(GPIO_LEDS_CS0_PORT,GPIO_LEDS_CS0_PIN); Data_t = iData; return iData ; }
传递函数:
uint32_t xferWord(uint32_t tx) { uint32_t rx; /* Set up data for the next xmit */ DL_SPI_transmitData32(SPI_0_INST,tx); /* Wait for data to appear */ while(DL_SPI_isBusy(SPI_0_INST)); rx= DL_SPI_receiveDataBlocking32(SPI_0_INST); // rx= DL_SPI_receiveDataBlocking32(SPI_0_INST); // rx= DL_SPI_receiveData32(SPI_0_INST); return rx; }
波形: