Other Parts Discussed in Thread: ADS1298
您好,我在用8051驱动ADS1298时遇到了个问题,上电配置后,测量VREFP引脚为2.4V 且VCAP1也大于1.1V,但是在发送START命令或拉高START引脚后,DRDY始终为低电平,下面是我的代码及寄存器配置,请问是什么原因导致的,我的SCLK速率为2.5M,这个芯片是可以正常工作的,我可以用FPGA正常驱动它
char WAKEUP =0x02; char SDATAC =0x11; char STANDBY =0x04; char RESET =0x06; char START =0x08; char STOP =0x0a; char RDATAC =0x10; char RDATA =0x12; char RREG =0x20; char RREG_NUM =0x04; char WREG =0x41; //从01h开始写 char WREG_NUM =0x0b; //写12个寄存器 char CONFIG1 =0x05; //低功耗 500SPS char CONFIG2 =0x12; //12 不测试 10 测试 char CONFIG3 =0xC8; char LOFF =0x00; char CH1SET =0x00; char CH2SET =0x91; char CH3SET =0x91; char CH4SET =0x00; char CH5SET =0x91; char CH6SET =0x91; char CH7SET =0x91; char CH8SET =0x00; //ADS1298上电 ADS1298_Init();// PWDN = 1;START = 0; //延时,上电稳定 Delay1000ms(); //PWDN = 1 后,延时Tpor待上电稳定 //配置ADS1298 UART2_SendString("开始配置ADS1298"); SS = 0; //拉低CS,开启传输 SPI_Write(RESET); Delay8us(); //需要等待至少18个Sclk,2.5MHz,T(18clk)=7.2us SPI_Write(SDATAC); SPI_Write(WREG); SPI_Write(WREG_NUM); //写12个寄存器 SPI_Write(CONFIG1); SPI_Write(CONFIG2); SPI_Write(CONFIG3); SPI_Write(LOFF); SPI_Write(CH1SET); SPI_Write(CH2SET); SPI_Write(CH3SET); SPI_Write(CH4SET); SPI_Write(CH5SET); SPI_Write(CH6SET); SPI_Write(CH7SET); SPI_Write(CH8SET); SPI_Write(START); //START_pin = 1; Delay8us(); SPI_Write(RDATAC); //连续读指令 Delay8us(); SS = 1;