分享

AD7714.rar ad7714.c

 weikong66 2012-08-05
  • #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++)   
  • {   
  • //ADCLK=0;    
  • 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;   
  •     //float volt;    
  •     init();   
  •     delay(10);   
  •     while(1)   
  •     {     
  •    //   WriteTo_adc(0x5c);    
  •         addata = Read_adc();   
  •    
  •     }   
    • 本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
      转藏 分享 献花(0

      0条评论

      发表

      请遵守用户 评论公约

      类似文章 更多