#include<reg51.h> #include<stdio.h> sbit ADCLK = P1^0; sbit ADCS = P1^1; sbit ADDRDY= P1^2; sbit ADDOUT= P1^3; sbit ADDIN = P1^4; void delay(unsigned int k) { unsigned int i=0; for(i=0;i<k;i++){;} } void WriteTo_adc(unsigned char byte) { unsigned char token,i; token=0x80; ADCLK=0; ADCS=0; for(i=0;i<8;i++) { if(byte&token)ADDIN=1; else ADDIN=0; ADCLK=0; ADCLK=1; token=token>>1; } ADCLK=0;ADDIN=1;ADCS=1; } unsigned long Read_adc(void) { unsigned long temp; unsigned char i; while(ADDRDY==1){delay(10);} WriteTo_adc(0x5c); ADCLK=0;ADCS=0; temp=0; for(i=0;i<24;i++) { temp = temp < 1; ADCLK=1; temp=(temp|ADDOUT); ADCLK=0; } ADCLK=0; ADCS=1; return(temp); } void init() { WriteTo_adc(0x24); WriteTo_adc(0x4f); WriteTo_adc(0x34); WriteTo_adc(0x0a0); WriteTo_adc(0x14); WriteTo_adc(0x20); delay(1000); } void main() { unsigned long addata=0; init(); delay(10); while(1) { addata = Read_adc(); } }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。