一个这么简单的程序阿飞发了两个小时才搞定。。。。已经测试通过,端口只需直接修改即可使用在你的应用中去.
驱动波形(一个起始位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(); } }