在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 超聲波水位測量控制系統(tǒng)C語言源程序

            超聲波水位測量控制系統(tǒng)C語言源程序

            作者: 時間:2016-11-25 來源:網(wǎng)絡(luò) 收藏
            本文介紹一個超聲波水位測量控制系統(tǒng)C語言源程序,本設(shè)計(jì)的超聲波水位測量控制系統(tǒng)是一種利用超聲波技術(shù)、電子技術(shù)、電磁開關(guān)技術(shù)相結(jié)合來實(shí)現(xiàn)非接觸式液位測量和控制系統(tǒng),能夠在某些特定場合或環(huán)境比較惡劣的情況下使用,在工業(yè)監(jiān)測和控制等方面得到了廣泛應(yīng)用。近些年來,工業(yè)水平的不斷發(fā)展對液位測量的精度、廣度和抗干擾性提出了越來越高的要求,超聲波測距技術(shù)本身也在不斷的完善和發(fā)展,測距儀更趨向小型化和智能化,逐步實(shí)現(xiàn)了高精確度、高可靠性、安全性和多功能化。
            言源程序,電子小制作可測量并顯示液位,還可以通過單片機(jī)控制把液位限定在某一范圍內(nèi),在單片機(jī)控制失效的情況下發(fā)出報(bào)警信號,提醒工作人員進(jìn)行手動控制。研究內(nèi)容包括超聲波測距的基本原理與方法、精度影響因素的分析與解決辦法、單片機(jī)對閥門的控制方法、監(jiān)控系統(tǒng)的整體方案設(shè)計(jì)、硬件設(shè)計(jì)、軟件流程設(shè)計(jì)等。設(shè)計(jì)完成之后提供一套可以使用的超聲波測距儀,測量范圍和測量精度滿足一般工業(yè)應(yīng)用需要。設(shè)計(jì)完成之后應(yīng)提供一套可以用于一般工業(yè)生產(chǎn)的液位監(jiān)控系統(tǒng)。通過畢業(yè)設(shè)計(jì)的整個過程,可以綜合運(yùn)用傳感器、單片機(jī)、電子電路和程序設(shè)計(jì)方面的知識,鍛煉和提高動手能力、參與科研工作的能力。
            言源程序涉及了所學(xué)的單片機(jī)、自動控制原理、數(shù)字電路、模擬電路、電路分析、軟件技術(shù)、智能檢測與轉(zhuǎn)換技術(shù)等幾乎所有的專業(yè)課程,很好的體現(xiàn)了綜合訓(xùn)練的要求。本電子小制作設(shè)計(jì)屬于一個完整的系統(tǒng),設(shè)計(jì)過程中需要考慮的因素較多,但設(shè)計(jì)功能相對較為簡單不會存在太大困難,題目難易適中。既可以鞏固所學(xué)的知識和技能,又可以有所提高。本課題相對其它課題來說,資料相對較多,搜索資料相對容易。但對本科生來說,從眾多質(zhì)量參差不齊的資料中選擇最合適的資料也是比較困難的。言源程序這對設(shè)計(jì)學(xué)生來說是一次很好的鍛煉。
            //超聲波水位測量控制系統(tǒng)C語言源程序
            #include
            #define uchar unsigned char
            #define uint unsigned int
            sbit Trig=P1^0;sbit Echo=P3^2;
            sbit lcden=P0^4;
            sbit lcdrs=P0^1;
            sbit alertl=P1^1;//低水位報(bào)警,紅燈亮電子小制作
            sbit alertm=P1^7;//中水位綠燈亮
            sbit alerth=P1^4;//高水位報(bào)警,黃燈亮
            sbit pumb=P0^2;//low vol is avalibal http://www.duankudp.com/
            sbit power=P3^5;
            uint time,distance,waterlevel;
            uchar timeH,timeL;
            bit succeed_flag;
            void delay(uint z);

            //超聲波水位測量控制系統(tǒng)C語言源程序電子小制作
            void init()
            {
            power=0; //power is ok
            lcden=0; //low enble http://www.duankudp.com/
            write_com(0x38);
            write_com(0x0c); //display open ,cursor off,blink off
            write_com(0x06); //pointer auto add 1
            write_com(0x01); //clear screen and pointer
            write_com(0x80);
            TMOD=0x10; //time1,16 bit timmer
            EA=0; //open entire interrupt
            Trig=0;
            Echo=0;
            delay(1);
            }
            //***************************************************************
            void delay(uint z)
            {
            uint x,y;
            for(x=z;x>0;x--)
            for(y=110;y>0;y--);
            }
            //***************************************************************電子小制作
            void display(uint temp)
            {
            write_com(0x83);
            write_dat((temp/100)+0x30);
            delay(20);
            write_dat(temp/10+0x30);
            delay(20);
            write_dat(temp+0x30);

            }
            //***************************************************************
            void delay_20us()
            {
            uchar a ;
            for(a=0;a<100;a++);
            }
            //***************************************************************
            void display1()
            {
            uchar code table[]="SIAS UNIVERSITY ";
            uchar code table1[]="ZZS 20071521258 ";
            uchar num;
            write_com(0x80);
            for(num=0;num<16;num++)
            {
            write_dat(table[num]);
            delay(300);
            }
            write_com(0x80+0x40);
            for(num=0;num<16;num++)
            {
            write_dat(table1[num]);
            delay(300);
            }
            write_com(0x01);
            delay(1000);
            }
            //***************************************************************
            //***************************************************************
            //外部中斷0,用做判斷回波電平//超聲波水位測量控制系統(tǒng)C語言源程序
            void exter() interrupt 0 // 外部中斷0是0號http://www.5imcu.net/
            {
            timeH =TH1; //取出定時器的值
            timeL =TL1; //取出定時器的值
            succeed_flag=1;//至成功測量的標(biāo)志
            EX0=0; //關(guān)閉外部中斷
            }
            //****************************************************************
            //定時器1中斷,用做超聲波測距計(jì)時//超聲波水位測量控制系統(tǒng)C語言源程序

            void timer1() interrupt 3 //
            {
            TH1=0;
            TL1=0;
            }
            //***************************************************************
            //***************************************************************
            void main()
            {
            init(); //timer1,16 bit
            display1();
            init1();
            while(1)
            {
            alertl=1; //low alert
            alertm=1; //middle alert
            alerth=1; //high alert
            EA=0; //off entire interrupt
            Trig=1; //ultrasonic Trigger
            delay_20us(); //delay 20us
            Trig=0; //20uss Pulse
            while(Echo==0); //wait Echo change High Vol
            succeed_flag=0; //clear succeed flag
            EA=1; //open entire interruot
            EX0=1; //open exinterrupt0
            TH1=0; //clear timer1s high 8 bit
            TL1=0; //clear timer1s low 8 bit
            TF1=0; //clear timer1s overflow bit
            TR1=1; //start timer1
            delay(20); //waitting
            TR1=0; //stop timer1
            EX0=0; //off exinterrupt0
            if(succeed_flag==1)
            {
            time=timeH*256+timeL; //entire time
            distance=time*0.172; //s=t*340/2*1000mm
            waterlevel=163-distance; //
            if(waterlevel>=0&&waterlevel<=163)
            display(waterlevel);

            }
            if(succeed_flag==0)
            {
            distance=0;//沒有回波則清零//超聲波水位測量控制系統(tǒng)C語言源程序

            }
            if(waterlevel>=0&&waterlevel<=50)
            {
            write_com(0x8C);
            write_dat(L);
            alertl=0;//RED Light,low water level
            pumb=0;//open pumb,add water http://www.5imcu.net/
            }
            else if(waterlevel>50&&waterlevel<=100)
            {
            write_com(0x8C);
            write_dat(M);
            alertm=0;
            }
            else if(waterlevel>100&&waterlevel<=163)
            {
            write_com(0x8C);
            write_dat(H);
            alerth=0;
            pumb=1;//off pumb http://www.5imcu.net/
            }


            delay(200);

            }
            }
            //***************************************************************


            評論


            技術(shù)專區(qū)

            關(guān)閉