欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
89C51, ADC0808為A/D轉換芯片 微型電壓表
[打印本頁]
作者:
happy112
時間:
2016-6-7 17:57
標題:
89C51, ADC0808為A/D轉換芯片 微型電壓表
0.png
(11.77 KB, 下載次數: 112)
下載附件
2016-6-7 17:53 上傳
仿真圖:
以89C51單片機為基礎,ADC0808為A/D轉換芯片, 量程為0.00-5.00V,適合測試蓄電池和干電池。
原代碼:
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code led[10]={0xc0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
uint volt;
sbit CLK=P3^3;
sbit START=P3^0;
sbit EOC=P3^1;
sbit OE=P3^2;
void delay(uint z)
{ uchar x,y;
for(x=z;x>0;x--)
for(y=250;y>0;y--);
}
void ADC()
{
START=0;
START=1;
START=0;
while(EOC==0);
OE=1;
volt=P1;
OE=0;
volt=volt*196;
}
void display()
{
P0=0XFF;
P2=0x01;
P0=led[volt/10000]&0x7F;
delay(2);
P0=0XFF;
P2=0x02;
P0=led[(volt/1000)%10];
delay(2);
P0=0XFF;
P2=0x04;
P0=led[(volt/100)%10];
delay(2);
P0=0XFF;
P2=0x08;
P0=led[(volt/10)%10];
delay(2);
}
void main()
{
EA=1;
TMOD=0x02;
TH0=0XF6;
TL0=0XF6;
ET0=1;
TR0=1;
while(1)
{
ADC();
display();
}
}
void timer() interrupt 1
{
CLK=~CLK;
}
復制代碼
全部資料(壓縮包)下載:
微型電壓表.rar
(16.5 KB, 下載次數: 41)
2016-6-7 17:55 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
yzwzfyz
時間:
2016-6-7 18:18
這樣做電壓表很浪費,練習做單片機還可以。
作者:
shunde117
時間:
2016-6-7 19:46
多謝無私奉獻的人!!!!!!!!!!!!!
作者:
fengzhongmima
時間:
2016-6-12 10:57
yzwzfyz 發表于 2016-6-7 18:18
這樣做電壓表很浪費,練習做單片機還可以。
如果要擴大量程到100 V 怎么修改
作者:
yzwzfyz
時間:
2016-6-12 19:10
由于IC的輸入對電壓有限制,所以:
1、可以加電阻分壓.
2、要有辦法通知到CPU,以區分是否輸入被分壓了,CPU在顯示時,就可以決定:是否按比例擴大顯示值。
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1