日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

這款電路簡單制作容易的STC12C2052AD單片機(jī)0-9.9V電壓表,電路簡單,元件少,容易制作,PCB板為單面板,下面是制作好的實(shí)物。文后附有原理圖、源程序等資料。

單片機(jī)源程序如下:

#include          //單片機(jī)頭文件

#include                  //51基本運(yùn)算(包括_nop_空函數(shù))

#define uchar unsigned char

#define uint unsigned int


sbit temp=P1^7;

sbit LED3=P3^0;  //C

sbit LED0=P1^4;  //        小數(shù)點(diǎn)后一位

sbit LED1=P1^3;  //個位

sbit LED2=P1^0;  //        十位

sbit A=P1^1;

sbit B_B=P1^5;

sbit C=P3^2;

sbit D=P3^4;

sbit E=P3^5;

sbit F=P1^2;

sbit G=P3^1;

sbit H=P3^3;  //小數(shù)點(diǎn)


char d[5];

uint R,M,N,h;//若定義成uchar型就只能顯示2.5V以下的數(shù)值


void dm(mz);


void delayus(uint x)         //(x+1)*6微

{


        while(x--);

}



/*****************************************************************

函數(shù)名:毫秒級CPU延時函數(shù)

調(diào)  用:delay (?);

參  數(shù):1-65535(參數(shù)不可為0)

返回值:無

結(jié)  果:占用CPU方式延時與參數(shù)數(shù)值相同的毫秒時間

備  注:應(yīng)用于1T單片機(jī)時i<600,應(yīng)用于12T單片機(jī)時i<125

/******************************************************************/

void delay(uint t)

{

uint i;                               //定義變量

for(;t>0;t--)                     //如果t大于0,t減1(外層循環(huán))

  for(i=600;i>0;i--);       //i等于124,如果i大于0,i減1

}

/*******************************************************************

函數(shù)名:ADC初始化及8位A/D轉(zhuǎn)換函數(shù)

返回值:8位的ADC數(shù)據(jù)

結(jié)  果:讀出指定ADC接口的A/D轉(zhuǎn)換值,并返回數(shù)值

備  注:適用于STC12C2052AD系列單片機(jī)(必須使用STC12C2052AD.h頭文件)

*******************************************************************/

uchar Read (uchar CHA)

{

        uchar AD_FIN=0;                 //存儲A/D轉(zhuǎn)換標(biāo)志;若在函數(shù)外定義此變量則不能得到連續(xù)變化的模擬量的顯示

        /******以下為ADC初始化程序****************************/

    CHA &= 0x07;            //選擇ADC的8個接口中的一個(0000 0111 清0高5位)

    ADC_CONTR = 0x60;                  //ADC轉(zhuǎn)換的速度(0XX0 0000 其中XX控制速度,請根據(jù)數(shù)據(jù)手冊設(shè)置)

    _nop_();

    ADC_CONTR |= CHA;       //選擇A/D當(dāng)前通道

    _nop_();

    ADC_CONTR |= 0x80;             //啟動A/D電源

    delay(1);                    //使輸入電壓達(dá)到穩(wěn)定(1ms即可?

        /******以下為ADC執(zhí)行程序****************************/

    ADC_CONTR |= 0x08;      //啟動A/D轉(zhuǎn)換(0000 1000 令A(yù)DCS = 1)

    _nop_();

    _nop_();

    _nop_();

    _nop_();

    while (AD_FIN ==0)           //等待A/D轉(zhuǎn)換結(jié)束

        {     

            AD_FIN = (ADC_CONTR & 0x10);         //0001 0000測試A/D轉(zhuǎn)換結(jié)束否

    }

    ADC_CONTR &= 0xE7;                              //1111 0111 清ADC_FLAG位, 關(guān)閉A/D轉(zhuǎn)換,

        return (ADC_DATA);                          //返回A/D轉(zhuǎn)換結(jié)果(8位)

}

/******************************************************************

顯示函數(shù)轉(zhuǎn)換函數(shù):

M=模擬量采樣值,N=基準(zhǔn)電壓源采樣值(本例為2.5V),R=模擬量輸入值(待顯示值)

N=256*2.5/Vcc;變形后得Vcc=256*2.5/N; 代入M=256*R/Vcc;得到M=R*N/2.5;變形后得R=M*2.5/N

1.105為輸入端分壓比。

******************************************************************/

void transfer(void)

{

        M=Read(6);                                //P1.6口模擬量轉(zhuǎn)換

        N=Read(7);                                //P1.7口2.5V基準(zhǔn)電壓源采樣(轉(zhuǎn)換)

        R=((M*2.5)/N)*198;                //輸入模擬量換算并放大500倍;

        /***以下為3位顯示轉(zhuǎn)換***/

        h=R;

        d[3]=R/1000;

        R=R%1000;

        d[2]=R/100;

        R=R%100;

        d[1]=R/10;

        d[0]=R%10;


}

/**********顯示函數(shù)(未優(yōu)化)************************************************/

void xian_shi (void)

{

        if(h>999)

        {

                d[3]=10;

                d[2]=10;

                d[1]=10;

                d[0]=10;

        }

        if(d[3]==0)        

        d[3]=11;

        dm(d[3]);

        LED3=1;

        delayus(5);

        LED3=0;

        delayus(30);

        dm(d[2]);

        LED2=1;

        delayus(5);

        LED2=0;

        delayus(30);

        dm(12);

        LED2=1;

        delayus(1);

        LED2=0;

        delayus(400);

        dm(d[1]);

        LED1=1;

        delayus(5);

        LED1=0;

        delayus(30);

        dm(d[0]);

        LED0=1;

        delayus(5);

        LED0=0;

        delayus(30);

}



void dm(mz)

{

        switch(mz)

        {

                case 0:A=0;B_B=0;C=0;D=0;E=0;F=0;G=1;H=1;break;

                case 1:A=1;B_B=0;C=0;D=1;E=1;F=1;G=1;H=1;break;

                case 2:A=0;B_B=0;C=1;D=0;E=0;F=1;G=0;H=1;break;

                case 3:A=0;B_B=0;C=0;D=0;E=1;F=1;G=0;H=1;break;

                case 4:A=1;B_B=0;C=0;D=1;E=1;F=0;G=0;H=1;break;

                case 5:A=0;B_B=1;C=0;D=0;E=1;F=0;G=0;H=1;break;

                case 6:A=0;B_B=1;C=0;D=0;E=0;F=0;G=0;H=1;break;

                case 7:A=0;B_B=0;C=0;D=1;E=1;F=1;G=1;H=1;break;

                case 8:A=0;B_B=0;C=0;D=0;E=0;F=0;G=0;H=1;break;

                case 9:A=0;B_B=0;C=0;D=0;E=1;F=0;G=0;H=1;break;

                case 10:A=0;B_B=1;C=1;D=0;E=0;F=0;G=1;H=1;break; //C

                case 11:A=1;B_B=1;C=1;D=1;E=1;F=1;G=1;H=1;break; //不顯示

                case 12:A=1;B_B=1;C=1;D=1;E=1;F=1;G=1;H=0;break; //小數(shù)點(diǎn)

        }

}



/******************************************************************

函數(shù)名:主函數(shù)

調(diào)  用:無

參  數(shù):無

返回值:無

結(jié)  果:程序開始處,無限循環(huán)

備  注:

******************************************************************/

void main (void)

{

    P1M0 = 0xC0;                

    P1M1 = 0x19;   

    P3M0=0x00;

    P3M1=0x01;

        LED0=0; 

        LED1=0; 

        LED2=0;  

        LED3=0;  


        while(1)

        {

                uint i;

                i++;

                if (i==500)

                {

                        transfer();

                        i=0;

                }

                xian_shi();

        }



關(guān)鍵字:單片機(jī)  小型電壓表  STC12C2052AD 引用地址:單片機(jī)DIY小型電壓表

上一篇:nRF24L01+51單片機(jī)無線語音點(diǎn)滴報警系統(tǒng)
下一篇:51單片機(jī)讀寫RC522卡(LCD12864)RFID開發(fā)程序與原理圖

推薦閱讀

  聯(lián)軸器是用來聯(lián)接不同機(jī)構(gòu)中的兩根軸(主動軸和從動軸)使之共同旋轉(zhuǎn)以傳遞扭矩的機(jī)械零件。機(jī)器運(yùn)轉(zhuǎn)時兩軸不能分離,只有機(jī)器泊車并將聯(lián)接拆開后,兩軸才能分離。在高速重載的動力傳動中,有些聯(lián)軸器還有緩沖、減振和提高軸系動態(tài)性能的作用。聯(lián)軸器由兩半部分組成,分別與主動軸和從動軸聯(lián)接。一般動力機(jī)大都借助于聯(lián)軸器與工作機(jī)相聯(lián)接?! ∥⑿碗?..
中、美貿(mào)易沖突尚未解決,2019 年美國甚至可能對中國銷美 2670 億美元貨品,加征高額關(guān)稅,PCB 廠目前對 2019 年第 1 季的景氣多保守看待,在中國大陸產(chǎn)值僅次臻鼎 (4958-TW ) 的健鼎 (3044-TW) ,對于景氣展望更是極端謹(jǐn)慎。健鼎主管坦言,2018 年第 4 季以來,整個 3C 電子產(chǎn)業(yè)上、中、下游的訂單都在急速萎縮,這種狀況到 2019 年第...
據(jù)中時電子報報道,比特大陸(Bitmain)和嘉楠耘智(Canaan)這兩家專門開發(fā)應(yīng)用于挖掘加密貨幣的特殊應(yīng)用集成電路(ASIC)的廠商,將成為臺積電首批應(yīng)用最新的5納米技術(shù)的客戶之一。報道指出,比特大陸本月已經(jīng)收到了臺積電生產(chǎn)的首批用于比特幣采礦的5納米ASIC樣品。晚些時候到明年第一季度,嘉楠耘智也將收到其首款5納米ASIC樣品。與目前的7納米標(biāo)準(zhǔn)相比,...
集微網(wǎng)消息,據(jù)悉,能源市場研究公司SNE Research 日前表示,今年1月-9月,寧德時代的電動汽車電池使用量達(dá)到19.2 GWh ,超過了LG Chem。鋰離子電池由于具備能量密度大、輸出功率高、循環(huán)壽命長和環(huán)境污染小等優(yōu)點(diǎn)而被廣泛應(yīng)用于電動汽車以及消費(fèi)類電子產(chǎn)品中。電動汽車在行駛過程中,對驅(qū)動電源的功率要求很高,因而也要求鋰離子電池具有較佳的功率...

史海拾趣

小廣播
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved