找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 18723|回復(fù): 15
上一主題 下一主題
收起左側(cè)

AT89C52+ADC0809構(gòu)成的量程0-5V電壓表

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:73477 發(fā)表于 2015-2-10 20:32 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
       這是一款用ADC0809作為A/D轉(zhuǎn)換、顯示用四位共陰數(shù)碼管、單片機(jī)為AT89C52構(gòu)成的量程的0-5V電壓測量表電子小制作。這個ADC0809(在proteus里是用ADC0808來仿真,和ADC0809是一樣的)基本上能夠做出一個比較正確的電壓表,量程是0-5V。這里只是做了一個仿真,來驗證程序的正確性,這個電子小制作沒有做出實物,對這個單片機(jī)制作感興趣的愛好都,可以進(jìn)行實物的制作。做這個仿真最要注意的問題是ADC0808(ADC0809)的輸出腳千萬不能接反,實際制作中有很多愛好者都是接反的,造成得不到正確的仿真。下面是:AT89C52+ADC0809構(gòu)成的量程0-5V電壓表電子小制作源程序。




#include<reg52.h>

unsigned char code dispbitcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char dispbuf[4];
unsigned int i;
unsigned int j;
unsigned char getdata;
unsigned int temp;
unsigned int temp1;
unsigned char count;
unsigned char d;
sbit ST=P3^0;
sbit OE=P3^1;
sbit EOC=P3^2;
sbit CLK=P3^3;
sbit P34=P3^4;
sbit P35=P3^5;
sbit P36=P3^6;
sbit P20=P2^0;
sbit P21=P2^1;
sbit P22=P2^2;
sbit P23=P2^3;
sbit P17=P1^7;
void TimeInitial();
void Delay(unsigned int i);

void t1(void) interrupt 3 using 0
{
  TH1=(65536-200)/256;
  TL1=(65536-200)%256;
  CLK=~CLK;
}
void TimeInitial()
{
  TMOD=0x10;
  TH1=(65536-200)/256;
  TL1=(65536-200)%256;
  EA=1;
  ET1=1;
  TR1=1;
}
void Delay(unsigned int i)
{
  unsigned int j;
  for(;i>0;i--)
  {
   for(j=0;j<125;j++)
  {;}
  }
}

void Display()
{
  P1=dispbitcode[dispbuf[3]];
  P20=0;
  P21=1;
  P22=1;
  P23=1;
  Delay(10);
  P1=0x00;
  P1=dispbitcode[dispbuf[2]];
  P17=1;
  P20=1;
  P21=0;
  P22=1;
  P23=1;
  Delay(10);
  P1=0x00;
  P1=dispbitcode[dispbuf[1]];
  P20=1;
  P21=1;
  P22=0;
  P23=1;
  Delay(10);
  P1=0x00;
  P1=dispbitcode[dispbuf[0]];
  P20=1;
  P21=1;
  P22=1;
  P23=0;
  Delay(10);
  P1=0x00;
}
void main()
{
  TimeInitial();
  while(1)
  {
    ST=0;
    OE=0;
    ST=1;
    ST=0;
    P34=0;
    P35=0;
    P36=0;
    while(EOC==0);
    OE=1;
    getdata=P0;
    OE=0;
    temp=getdata*1.0/255*500;
    dispbuf[0]=temp%10;
    dispbuf[1]=temp/10%10;
    dispbuf[2]=temp/100%10;
    dispbuf[3]=temp/1000;
    Display();
  }
}




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報

沙發(fā)
ID:97282 發(fā)表于 2015-11-26 20:44 | 只看該作者
請問一下我照你的圖一樣畫了一個protues,為什么顯示的是00.00,看到請盡快回復(fù),謝謝
回復(fù)

使用道具 舉報

板凳
ID:102567 發(fā)表于 2016-3-17 18:27 | 只看該作者
正在做這個,這就是我想要的。
回復(fù)

使用道具 舉報

地板
ID:109858 發(fā)表于 2016-3-21 16:52 | 只看該作者
電路圖和源程序,
回復(fù)

使用道具 舉報

5#
ID:114948 發(fā)表于 2016-4-18 16:12 | 只看該作者
親,我想問問你右下那兩個元件是什么?
回復(fù)

使用道具 舉報

6#
ID:119633 發(fā)表于 2016-6-27 16:50 | 只看該作者
仿真圖能分析一份嗎/
回復(fù)

使用道具 舉報

7#
ID:118796 發(fā)表于 2016-6-30 11:20 | 只看該作者
非常感謝,試過了~
回復(fù)

使用道具 舉報

8#
ID:209880 發(fā)表于 2017-6-10 17:27 | 只看該作者
請問這個和單片機(jī)晶振的值有關(guān)嗎
回復(fù)

使用道具 舉報

9#
ID:209964 發(fā)表于 2017-6-10 22:36 | 只看該作者
有那個proteus打開的文件嗎
回復(fù)

使用道具 舉報

10#
ID:211258 發(fā)表于 2017-6-15 16:49 | 只看該作者
謝謝分享!收藏了!
回復(fù)

使用道具 舉報

11#
ID:258881 發(fā)表于 2017-12-31 16:22 | 只看該作者
我就是接反了輸出接口,調(diào)整了一下午沒有調(diào)出來。大家一定注意。OUT8是最低位,OUT1是最高位。

評分

參與人數(shù) 1黑幣 +80 收起 理由
admin + 80 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

12#
ID:378732 發(fā)表于 2018-11-24 04:59 | 只看該作者
學(xué)習(xí)一下
回復(fù)

使用道具 舉報

13#
ID:434886 發(fā)表于 2018-11-29 13:04 | 只看該作者
右上角的那個器件是什么啊就是那個三角帶一條線,顯示V=3。04998的那個,是必須器件嗎?
回復(fù)

使用道具 舉報

14#
ID:435737 發(fā)表于 2018-11-29 18:19 | 只看該作者
謝謝樓主分享
回復(fù)

使用道具 舉報

15#
ID:643804 發(fā)表于 2019-11-17 18:31
有文件嗎?可以發(fā)下嗎,有償

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表