主题中讨论的其他器件:MSPM0G3507、LP-MSPM0G3507 、 SysConfig、
您好、TI!
我将3线 RTD PT1000传感器与 ADS124S08和 MSPM0G3507连接。
参考电路/原理图为 ADS124S08数据表示例页面编号 91.
下面是寄存器设置。

int main (void)
{
delay_cycles(80000); //2.2ms delay as per data sheet of ads124s08
SYSCFG_DL_init();
DL_GPIO_clearPins(GPIO_SPI_0_CS0_PORT,GPIO_SPI_0_CS0_PIN); //cs low
delay_cycles(16000);
DL_SPI_transmitData8(SPI_0_INST,RESET_OPCODE_MASK); //reset device
delay_cycles(128000);
regWrite(REF_ADDR_MASK,0x06);
regWrite(PGA_ADDR_MASK,0x0A); //0A// PGA enabled, Gain = 4
regWrite(INPMUX_ADDR_MASK,0x12); //12// Select AINP = AIN1 and AINN = AIN2
regWrite(IDACMAG_ADDR_MASK,0x07); //07// IDAC magnitude set to 1mA
regWrite(DATARATE_ADDR_MASK,0x14);
regWrite(SYS_ADDR_MASK,0x10);
regWrite(IDACMUX_ADDR_MASK,0x35); //35;// IDAC1 set to AIN5, IDAC2 set to AIN3
readRegs(INPMUX_ADDR_MASK,5,Data); //trying to read 5 register starting from register address 0x02
DL_SPI_transmitData8(SPI_0_INST,START_OPCODE_MASK); //start command
delay_cycles(16000);
DL_GPIO_setPins(GPIO_SPI_0_CS0_PORT,GPIO_SPI_0_CS0_PIN); //cs high
while (1)
{
if (!DL_GPIO_readPins(GPIO_LEDS_DRDY_ADC_PORT, GPIO_LEDS_DRDY_ADC_PIN)) //waiting for DRDY pin to goes low
{
DL_GPIO_clearPins(GPIO_SPI_0_CS0_PORT,GPIO_SPI_0_CS0_PIN); //cs low
delay_cycles(16000);
DL_GPIO_setPins(GPIO_LEDS_START_PORT,GPIO_LEDS_START_PIN); //testing
delay_cycles(16000);
DL_SPI_transmitData8(SPI_0_INST,RDATA_OPCODE_MASK);
#if 1
for(int i=0;i<3;i++)
{
Input_Data[i] = DL_SPI_receiveData8(SPI_0_INST);
}
#endif
delay_cycles(16000);
DL_GPIO_setPins(GPIO_SPI_0_CS0_PORT,GPIO_SPI_0_CS0_PIN);
}
}
}}
SPI 设置
- SPI 模式1
- 时钟位速率1MHz
- 位顺序- MSB 优先
我们遵循了数据表伪代码、但未从 ADC 获取数据。 当读取 SPI RX 缓冲区时、会有一些随机值。
我们不确定 ADC 是否已配置。
未根据设置500uA 设置 IDAC 幅值。



















。