一个这么简单的程序阿飞发了两个小时才搞定。。。。已经测试通过,端口只需直接修改即可使用在你的应用中去.
驱动波形(一个起始位0 +8个数据位(低先)
#include<reg51.h>
#define uchar unsigned char
sbit cs=P3^4;
sbit clk=P3^5;
sbit out=P3^7;
char adc0831() //12m 运行270us size 78byte
{
char n,dat=0x00;
cs=1;clk=1;out=1;
cs=0;
for(n=0;n<5;n++) ;//延时
clk=0;
for(n=0;n<5;n++) ;//延时
clk=1;
for(n=0;n<8;n++)
{
clk=0;;
if(out==1) dat=dat|(0x1<<(7-n));
else dat=dat|(0x00<<(7-n)); //这行可省但读高低电平的时间不一样如上图
clk=1;;
}
cs=1;
return dat;
}
main()
{
while(1)
{
P1=adc0831();
}
}
