我们 始终 设置SPI_CS Low, SPI_CLK和SPI_DIN有来自CPU的信号。 但是 ADS131E08 SPI_DOUT有 数据输出,我们不知道 是什么原因造成的?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我们 始终 设置SPI_CS Low, SPI_CLK和SPI_DIN有来自CPU的信号。 但是 ADS131E08 SPI_DOUT有 数据输出,我们不知道 是什么原因造成的?
1、CPU组成4 线SPI, CPU可以 读取ads131e08 id寄存器;
2、CPU包含三 线SPI, ,131e08的CS连接GND,ADs131e08的DOUT目前没有数据输出,CAN ADs131e08的CLK和RX 从 CPU。接收信号
静态int ads131e08_init(struct ads131e08 *ads131e08)
{
Int ret = 0,I = 0;
u8 buf = 0;
RET = ads131e08_cmd_control (ads131e08,ADS131E08_CMD_SDATAC,0,0);
RET = ads131e08_sendreset (ads131e08);
如果(ret){
dev_err(ads131e08->dev," write reset error\n");
返回台;
}
RET = ads131e08_cmd_control (ads131e08,ADS131E08_CMD_WAKEUP,0,0);
RET = ads131e08_cmd_control (ads131e08,ADS131E08_CMD_SDATAC,0,0);
如果(ret){
dev_err(ads131e08->dev," write sdatac error\n");
返回台;
}
usleep_range (2,3);
RET = ads131e08_cmd_control(ads131e08, ADS131E08_CMD_STOP, 0, 0);
RET = ads131e08_cmd_control(ads131e08, ADS131E08_CMD_WREG,
ADS131E08_CFG1,(void *)®_init.cfg1);
usleep_range (2,3);
RET = ads131e08_cmd_control(ads131e08, ADS131E08_CMD_WREG,
ADS131E08_CFG2,(void *)®_init.cfg2);
usleep_range (2,3);
RET = ads131e08_cmd_control(ads131e08, ADS131E08_CMD_WREG,
ADS131E08_CFG3,(void *)®_init.cfg3);
usleep_range (2,3);
对于(i = 0;i < 8;I++){
RET = ads131e08_cmd_control(ads131e08, ADS131E08_CMD_WREG,
ADS131E08_CH1SET+I,(void *)®_init.chnset);
如果(ret){
dev_err(ads131e08->dev," init CH%DSET error\n",i+1);
返回台;
}
}
usleep_range (2,3);
RET = ads131e08_cmd_control(ads131e08, ADS131E08_CMD_REG,
ADS131E08_ID,(void *)&buf);
如果(ret < 0){
dev_err(ads131e08->dev,"读取ID寄存器错误\n");
返回台;
其他{
dev_info (ads131e08->dev," devd is = 0x%2.2x\n",buf);
如果(buf == 0){
返回-1;
}
}
ads131e08_reg_dump (ads131e08);
RET = gPIO_Direction_OUTPUT (ads131e08->pdata->adc_start_gPIO,1);
如果(ret < 0){
dev_err(ads131e08->dev,"无法断言ADC_START_GPIO %d\n", ret);
返回台;
}
返回台;
}