欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
基于51單片機的adc0809自動切換量程
[打印本頁]
作者:
weminv1
時間:
2018-7-19 20:32
標題:
基于51單片機的adc0809自動切換量程
adc0809測量范圍為5V,如果大于5V,就要分壓;
自動切換量程,就是先采集分壓之后的電壓,如果過小,就通過繼電器換路,進行直接測量
電路原理圖如下:
NHQ$$XGKU9UV7LH[~{DY.png
(194.49 KB, 下載次數: 35)
下載附件
電路仿真圖
2018-7-19 20:31 上傳
單片機源碼:
#include<regx51.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define Duan P2
#define Wei P1
sbit START=P0^0;
sbit EOC=P0^1;
sbit max=P0^2;
unsigned char code smg_duan[] ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char code smg_duan1[] ={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
unsigned char code smg_wei[] ={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
void delay_ms(int t){
int i;
for(t;t>0;t--)
for(i=110;i>0;i--);
}
void display(long num)
{
long num1[8],i;
num1[7] = num/10000000;
num1[6] = (num/1000000)%10;
num1[5] = (num/100000)%10;
num1[4] = (num/10000)%10;
num1[3] = (num/1000)%10;
num1[2] = (num/100)%10;
num1[1] = (num/10)%10;
num1[0] = num%10;
for(i=0;i<8;i++){
Wei = smg_wei[i];
if(i==4)
Duan = smg_duan1[num1[i]];
else
Duan = smg_duan[num1[i]];
delay_ms(1);
}
}
void main(){
uint ad_value;
long dis;
while(1){
max=0;
display(dis);
START = 0;
START = 1;
_nop_();
_nop_();
START = 0; //產生下降沿,啟動AD
while(!EOC);
P3=0xff;
ad_value=P3;
dis=(ad_value)*196.0784*20;
if(dis<=5) //直接測量
{
max=1;
display(dis);
START = 0;
START = 1;
_nop_();
_nop_();
START = 0; //產生下降沿,啟動AD
while(!EOC);
P3=0xff;
ad_value=P3;
dis=(ad_value)*196.0784;
}
//display(dis);
//delay_ms(10);
}
}
復制代碼
作者:
yilinghai
時間:
2020-6-26 21:00
沒有下載的資料?
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1