新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機超聲波測距原理圖

        單片機超聲波測距原理圖

        作者: 時間:2016-11-26 來源:網絡 收藏
        這是一款圖,這款單片機超聲波測距板電路簡單,制作容易,無需進行調試,電路焊焊接好后,下裝程序后即可工作。

        本文引用地址:http://www.104case.com/article/201611/321765.htm



        #include
        #define csboutP3_5//超聲波發送
        #define csbintP3_7 //超聲波接收
        #define csbc=0.034
        #define bgP3_4
        unsigned char csbds,opto,digit,buffer[3],xm1,xm2,xm0,key,jpjs,ki;//顯示標識
        unsigned char convert[10]={0x3F,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//0~9段碼
        unsigned int s,t,i,sj1,sj2,sj3,mqs,sx1,sjtz,sja,sjb;
        bit cl;

        void csbcj();
        void delay(i);//延時函數
        void scanLED();//顯示函數
        void showOnce();//顯示循環函數
        void timeToBuffer();//顯示轉換函數
        void offmsd();


        void main()//主函數
        {
        EA=1;//開中斷
        TMOD=0x11; //設定時器0為計數,設定時器1定時
        ET0=1; //定時器0中斷允許
        ET1=1; //定時器1中斷允許
        TH0=0x00;
        TL0=0x00;
        TH1=0x9E;
        TL1=0x57;
        csbds=0;
        csbint=1;
        csbout=1;
        cl=0;
        opto=0xff;
        sj1=40;
        sj2=100;
        sj3=150;
        ki=0;
        TR1=1; //設定時值1為20ms
        while(1)
        {
        csbcj();//調用超聲波測距程序
        if(s>sj3)//大于時顯示"CCC"
        {
        buffer[2]=0x39;
        buffer[1]=0x39;
        buffer[0]=0x39;
        }
        else if(s//小于時顯示"- - -"
        {
        buffer[2]=0x40;
        buffer[1]=0x40;
        buffer[0]=0x40;
        }
        else timeToBuffer();//調用轉換段碼功能模塊
        offmsd();//調用判斷百位數為零模塊,百位為零時不顯示
        scanLED();//調用顯示函數
        }
        }


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 离岛区| 麦盖提县| 临湘市| 灌阳县| 易门县| 民乐县| 稻城县| 酉阳| 含山县| 凤庆县| 渭南市| 黎川县| 潞西市| 富民县| 河池市| 湟源县| 渭南市| 屯昌县| 余江县| 屏边| 洛隆县| 隆回县| 灌云县| 拜城县| 定结县| 昌图县| 安国市| 美姑县| 澳门| 岢岚县| 交口县| 海南省| 读书| 东阿县| 五寨县| 饶河县| 汉寿县| 枣阳市| 陇川县| 吴旗县| 永昌县|