电压采集原理

电压采集原理

ID:27977101

大小:28.50 KB

页数:3页

时间:2018-12-07

电压采集原理_第1页
电压采集原理_第2页
电压采集原理_第3页
资源描述:

《电压采集原理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实用标准文案//ADC采样实验//#include#defineucharunsignedchar#defineuintunsignedintucharLED_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf};//不带小数点的字型码0,1,2,3,4,5,6,7,8,9,ucharLED_CODE1[]={0x40,0x79,0x24,0x30,0x19,0x92,0x82,0xf8,0x80,0x90

2、,0xff,0xbf};//带小数点的字型码0.,1.,2.,3.,4.,5.,6.,7.,8.,9.,voiddelay(ucharx);voidinit();voiddisplay(ucharnum1,ucharnum2,ucharnum3,ucharnum4);voidbeep();uintget_ad()//整型带返回值子函数{uintadval,ad;//定义两个无符号整型变量ADGO=1;//启动AD转换//while(ADGO);//查询AD转换是否完成,此行可以不用,程序一样运行正常//

3、if(ADGO==1);//可以采用while查询也可以用if查询AD转换是否完成,此行一样可以不要//adval=ADRESH;//注释此行可以不要adval=ADRESH<<8

4、ADRESL;//ADRESH高8位数据左移8位,然后再与ADRESL低8位数据相加ad=adval*41;//这里的41是VDD电压,adval的值在0-1023之间,假设adval当前数字量是800,那么800*41=32800adval=ad/10;//因为我的是4位数码显示,将得到的32800除以10以后给数码管显示

5、当前电压值即:3280(3.28V)return(adval);//返回adval值给主程序调用的地方}voidmain(){init();//程序初始化uinttempad;//定义临时整型变量uchars1,s2,s3,s4;//定义4个无符号字符型变量while(1){tempad=get_ad();//调用ad子程序s1=tempad/1000;//将得到的值3280除以1000取商丢去余数,所以s1的值是3(即千位)s2=tempad%1000/100;//3280除1000求余280再除以1

6、00取商,所以s2的值是2(取百位)精彩文档实用标准文案s3=tempad%100/10;//3280除100求余80再除以10取商,所以s3的值是8(取十位)s4=tempad%10;//3280除10求余,余数是0(取个位)display(s1,s2,s3,s4);//给数码管分别显示四位值/////以下是判断ad采样的电压是否大于4v,大于或等于4v时led等亮/////if(s1>=4)//判断千位值{RA5=0;}/////////////~~~~~~~~~~~~~~~~~~~~~~~~~~/

7、//////////////////////////////////}}voidinit(){TRISA=0x01;//RA0设置为输入AN0(AD采集端口)TRISD=0;//D端口全部设置成输出PORTA=0x01;PORTD=0xFF;TRISE=0;PORTE=0;ADCON0=0x41;ADCON1=0x8e;delay(1);//延时5ms稳定AD采用}voiddisplay(ucharnum1,ucharnum2,ucharnum3,ucharnum4){PORTD=LED_CODE[nu

8、m4];//数码管个位显示值PORTA=0xfd;//11111101开数码管个位位选delay(1);PORTD=LED_CODE[num3];//数码管十位显示值PORTA=0xfb;//11111011delay(1);PORTD=LED_CODE[num2];//数码管百位显示值PORTA=0xf7;//11110111delay(1);PORTD=LED_CODE1[num1];//数码管千位显示值(这个值是带小数点的)PORTA=0xef;delay(1);}voiddelay(ucharx

9、)//5ms延时子函数{uinty,k;for(y=0;y

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。