adc.c

来自「该程序详细介绍了ADC0832的使用编程代码」· C语言 代码 · 共 64 行

C
64
字号
/**************************************************************************
YB-51-B A/D转换函数(需要参看ADC0832的原理和时序图,配套光盘上有)
来源: 郑州远博科技   王兴民
0371-66949037  0371-67256036 13949105551
***************************************************************************/
#include<config.h>
//ADC0832 接口定义
#define DATA0832  P1_5
#define CS0832    P1_3
#define CLK0832   P1_4

void Adstart(void) {    //开始条件
CLK0832=0;
CS0832=0;
DATA0832=1;
CLK0832=1; 
CLK0832=0;             }



void Adsendsign(Uchar signifi) {  //发送信号
Uchar temp;
temp=signifi&0x03;
DATA0832=(signifi>>1)&0x01;
CLK0832=1;
CLK0832=0;
DATA0832=temp&0x01;
CLK0832=1;
CLK0832=0; 
DATA0832=1;                     //使DATA0832保持高电平                             }


Uchar Adoutdata(void)        {    //数据输出
Uchar mfdata,i,j;
bit D;
while(DATA0832);
CLK0832=1;
for(i=0;i<8;i++)
                { CLK0832=0;
				D=DATA0832;
				mfdata=mfdata|D;
				CLK0832=1;
				mfdata=mfdata<<1;
				}
for(j=0;j<7;j++)
                {
                CLK0832=0;CLK0832=1;
				}
CS0832=1;
DATA0832=1;
return(mfdata);
                            }



Uchar Adconvert(sign)         {      //开始转换
 Uchar addata;
               Adstart();
			   Adsendsign(sign);
			   addata=Adoutdata();
			   return(addata);
			                       
			                   }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?