TI的工程师您好,问题附在图片里面,这边的软件包是根据官网的ADS7945/7946来写的,因为官网这2个型号是通用的,但是7945是差分的,7946是单端的,这边一直怀疑是软件编程有问题,请各位工程指教,我也把软件代码附上,如描述不够清楚,请在下方提出我再补充
下面是软件的代码
unsigned int getdataADS7945(unsigned char GetCHSEL)
{
unsigned char t;
unsigned long hd;
unsigned long DataReadTemp;
hd = 0;
DataReadTemp = 0;
// GPIO_PinOutSet(gpioPortF, 3); //不掉电...
GPIO_PinOutClear(gpioPortF, 3);
if(GetCHSEL == 1)
{
GPIO_PinOutClear(gpioPortF, 2); //选择CH1...
}
else
{
GPIO_PinOutSet(gpioPortF, 2);
}
GPIO_PinOutClear(gpioPortF, 4); //CS脚拉低...
// GPIO_PinOutClear(gpioPortF, 5);
for(t=0;t<32;t++)
{
GPIO_PinOutSet(gpioPortF, 5);
// Delay(10);
hd<<=1;
GPIO_PinOutClear(gpioPortF, 5);
// Delay(10);
DataReadTemp = GPIO_PinInGet(gpioPortE, 8);
hd|=DataReadTemp;
// Delay(10);
}
hd>>=2;
hd = hd & 0x03fff;
GPIO_PinOutSet(gpioPortF, 4); //CS脚拉高...
// GPIO_PinOutSet(gpioPortF, 5);
return hd;
}