请大虾帮忙看一下这个AD7682的程序,一直输出的是0xFFFF
本帖最后由 cn_x 于 2013-7-18 14:33 编辑WORD AdcReadChannel(BYTE channel)
{
WORD ctrWord=0;
WORD result=0;
BYTE i;
_CS_AD = 0;
Wait2us();
_CS_AD = 1;
Wait2us();
_CS_AD = 0;
if(channel >= 4)
{
channel -= 4;
}
ctrWord= ((channel<<7) | 0b0011110001110001) << 2;
Wait2us()
for(i = 0;i<16;i++)
{
if(ctrWord & 0x8000)
{
SDO = 1;
}
else
{
SDO = 0;
}
Wait2us()
SCK = 0;
Wait2us()
ctrWord <<= 1;
SCK = 1;
Wait2us()
result <<= 1;
if(SDI)
{
result |= 1;
}
}
Wait2us()
SCK = 0;
Wait2us()
_CS_AD = 1;
return result;
}
使用的是外部4.096V电压基准 搞定了···············原来忘记初始化端口了·······虚惊一场················
这段代码没有问题 一开始写错了 ,是AD762,主题竟然改不回来了··················· 不错,正好要用到!
页:
[1]