欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 用單片機(jī)+ADC0808做電壓表,能測(cè)試0~5v的電壓,一點(diǎn)點(diǎn)的誤差 仿真代碼 [打印本頁(yè)]

作者: 超客通訊    時(shí)間: 2021-4-24 12:34
標(biāo)題: 用單片機(jī)+ADC0808做電壓表,能測(cè)試0~5v的電壓,一點(diǎn)點(diǎn)的誤差 仿真代碼
附件里有做好源碼和仿真

單片機(jī)程序:
//功能:晶振11.0592M,通過采集模擬信號(hào),讓數(shù)碼管顯示當(dāng)前電壓//作者: 康曉龍
//單位: 單片機(jī)協(xié)會(huì)
//版本號(hào):1.0
#include<reg51.h>
sbit duancun= P2^1 ;         //控制鎖存器段選
sbit weicun= P2^2;                 //控制鎖存器位選
sbit OE  = P1^0;  //輸出使能,OE=0高阻,OE=1 ADC轉(zhuǎn)換結(jié)果輸出到單片機(jī)
sbit ST  = P1^2;  //啟動(dòng)信號(hào),上升沿復(fù)位清零ADC,下降沿啟動(dòng)轉(zhuǎn)換,低電平保持轉(zhuǎn)換
sbit ALE  = P1^1;         
sbit OEC  = P1^3;
sbit p07  = P0^7;
#define uint unsigned int
#define uchar unsigned char

void delay(uint x)
{
        while(x--);        
}
/**********************************
函數(shù)名:xianshi()
變量:i
功能:處理 i的數(shù)據(jù) ,讓i能夠顯示到數(shù)碼管上
***********************************/
void xianshi(uint i)        
  {                  unsigned char code duan[]={0xc0,0xf9,0xa4,0xb0,
                              0x99,0x92,0x82,0xf8,0x80,0x90};
           unsigned char code led[]={0x00,0x01,0x02,0x04,
                           0x08,0x10,0x20,0x40,0x80};
           delay(50);
                   duancun=1;
                   P0=duan[i%10];         
                   duancun=0;
                   weicun=1;
                   P0=led[8];
                   weicun=0;
                    P0=0xff;

                   delay(50);
                   duancun=1;
                   P0=duan[i/10%10];
                   duancun=0;
                   weicun=1;
                   P0=led[7];
                   weicun=0;
                    P0=0xff;

                   delay(50);
                   duancun=1;
                   P0=duan[i/100%10]&0x7f;
                  
                   duancun=0;
                   weicun=1;
                   P0=led[6];
                   weicun=0;
                    P0=0xff;

  }
void main()                           
{        float qq=1.962;
        while(1)        
        {                    
                ALE =1;
            ST =1;
            delay(5);
                ALE = 0;
                ST = 0;
                delay(5);
                ALE = 1;
                ST = 1;/*啟動(dòng)A/D轉(zhuǎn)換,上升沿復(fù)位清零ADC,下降沿啟動(dòng)轉(zhuǎn)換,低電平保持轉(zhuǎn)換*/
        delay(50);  
        OE = 0;         //輸出使能,OE=1高阻,OE=0 ADC轉(zhuǎn)換結(jié)果允許輸出到單片機(jī)
        xianshi((P3*qq)); //因?yàn)镻3的數(shù)據(jù)最大只有255,電壓最大是5V,所以乘0.962就約等于500
        OE = 1;               //輸出使能,OE=0高阻
                                         
     }
}

全部資料51hei下載地址(Proteus8.8版本打開):
AD轉(zhuǎn)換2.0.zip (85.06 KB, 下載次數(shù): 32)






歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1