//--------ADC0832数据采集程序------------------------------------------------------------------
uchar adc0832_data()
{
uchar i,Dat1=0,Dat2=0;
CLK = 0;DI = 1;CS = 0;_nop_();CLK = 1;//第一个上升沿
CLK = 0;DI = 1;_nop_();CLK = 1;//第二个上升沿 DI=1表示 双通道 单极性 输入
CLK = 0;DI = 0;_nop_();CLK = 1;//第三个上升沿 DI=0表示选择通道1(CH0)
_nop_();CLK = 0;//第四个下降沿 开始输出转换数据
for(i=0;i<8;i++)//读取8位数据
{
CLK = 1;
CLK = 0;
_nop_();
if(DO) Dat1|=0x80>>i;
}
for(i=0;i<8;i++)//读取8位相反数据
{
if(DO) Dat2|=0x01<<i;
CLK = 1;
CLK = 0;
_nop_();
}
CS = 1;DI = 1; CLK = 1;//读取完成释放总线
if(Dat1==Dat2)//数据效验如果正确则返回读取数据
return Dat1;
} 这个是我写的 你可以去我的网站查找更多内容 MCU资讯网
http://www.mcuzx.com