久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 單片機(jī)超聲波測距(帶PCB工程和Proteus仿真程序) [打印本頁]

作者: josehegood    時間: 2019-5-19 15:48
標(biāo)題: 單片機(jī)超聲波測距(帶PCB工程和Proteus仿真程序)
使用HC-SR04超聲波模塊做了個超聲波測距器帶程序、原理圖、PCB和仿真
全部文件見附件
Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)


單片機(jī)超聲波測距仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


主程序如下(程序來自互聯(lián)網(wǎng),本人僅做了部分修改,如有侵權(quán),請聯(lián)系刪除)

//宏定義
#define uchar unsigned char
#define uint unsigned int
#define ULint unsigned long int
//溫度零上與零下的標(biāo)志位
char flag=0;
//超聲波
char flags=0;
//超聲波距離
char flag1s=0;
//計(jì)算定時間
uint time=0;
//計(jì)算距離
ULint L_=0;
//溫度
uint t_=0;
//顯示模式  0正常  1最小值調(diào)整  
uchar mode=0;

//uint Max=490;
uint Min=30;
//按鍵標(biāo)志
uchar k=0;
//數(shù)值有誤
uchar FW=0;
//頭函數(shù)
#include <reg52.h>
#include <intrins.h>
#include "BJ_Key.h"                    //報(bào)警按鍵
#include "display.h"                         //顯示頭函數(shù)
#include "ultrasonic_wave.h"//超聲波頭函數(shù)
#include "DS18B20.h"                    //溫度傳感器頭函數(shù)


//函數(shù)聲明
void delayms(uint ms);
//主函數(shù)
void main()
{
        Init_ultrasonic_wave();
        //屏幕初始化
        Init1602();
        //溫度初始化
        tmpchange();
        t_=tmp();
        tmpchange();
        t_=tmp();
        tmpchange();
        t_=tmp();

        //循環(huán)顯示
        while(1)
        {
                Key();
                //正常顯示
                if(mode==0)
                {
                        StartModule();//啟動超聲波
                        while(!RX);          //當(dāng)RX為零時等待
                        TR0=1;                  //開啟計(jì)數(shù)
                        while(RX);          //當(dāng)RX為1計(jì)數(shù)并等待
                        TR0=0;                  //關(guān)閉計(jì)數(shù)
        
                        delayms(20);  //20MS
                        tmpchange();  //溫度轉(zhuǎn)換
                        t_=tmp();     //度溫度
                        Conut(t_/10); //計(jì)算距離
                        if(L_<Min)
                        {
                                Feng_Start();
                        }
                        
                        
                        
                        /*        if(FW=0)
                                Feng_Stop();
                        */
                        Display_1602(t_/10,L_);
                }
                //調(diào)整顯示
                else if(mode!=0)
                {
                        //最大最小值
                        Init_MaxMin();
                        while(mode!=0)
                        {
                                
                                Key();
                                /*if(k==1&&mode==1)
                                {
                                        Init_MaxMin();        
                                   write_com(0x8d);//設(shè)置位置                                       
                                }
                                */
                                 if(k==1&&mode==1)
                                {
                                        Init_MaxMin();        
                                   write_com(0x89);//設(shè)置光標(biāo)位置        
                                }
                                k=0;
                        }
                        //界面初始化
                        Init1602();
                }
        }
}

void delayms(uint ms)
{
        uchar i=100,j;
        for(;ms;ms--)
        {
                while(--i)
                {
                        j=10;
                        while(--j);
                }
        }
}


//T0中斷用來計(jì)數(shù)器溢出,超過測距范圍
/*void CJ_T0() interrupt 1
{
    flags=1;                                                         //中斷溢出標(biāo)志
}*/



全部資料51hei下載地址:
超聲波測距.zip (2.85 MB, 下載次數(shù): 431)

作者: 2girder    時間: 2020-2-26 16:15
請問一下這一段是什么意思呢?
void delayms(uint ms)
{
        uchar i=100,j;
        for(;ms;ms--)
        {
                while(--i)
                {
                        j=10;
                        while(--j);
                }
        }
}

作者: wlars    時間: 2020-3-22 18:00
感謝大佬

作者: huiyaozhao    時間: 2020-3-29 15:46
大佬們下載下來之后仿真文件protues打不開怎么解決啊
作者: xiaokai0215    時間: 2020-4-25 16:09
感謝大佬,好資料,51黑有你更精彩!!!
作者: 淺詼sè    時間: 2020-6-14 11:45
下載后仿真有溫度顯示,調(diào)整距離沒反應(yīng)是什么情況
作者: sxt611278    時間: 2020-6-25 17:38
非常棒,很有參考價值
作者: Jeff_BlindCat    時間: 2020-6-26 15:17
非常好的參考資料,謝謝分享。
作者: 134125    時間: 2021-1-11 00:51
請問各位大佬 這種錯誤是怎么回事?應(yīng)該怎么解決?

Y70}8318JC66P6$2YRBUAZ6.png (47.91 KB, 下載次數(shù): 51)

Y70}8318JC66P6$2YRBUAZ6.png

作者: 51hei團(tuán)團(tuán)    時間: 2021-1-11 02:13
134125 發(fā)表于 2021-1-11 00:51
請問各位大佬 這種錯誤是怎么回事?應(yīng)該怎么解決?

第一個錯誤解決方法:http://www.zg4o1577.cn/bbs/dpj-201373-1.html
第2個錯誤,需要升級Proteus到8.8版本才能解決,因?yàn)槟愕陌姹靖揪蜎]有超聲波這個元件

下圖是我修改后的效果圖:

51hei.png (31.5 KB, 下載次數(shù): 59)

51hei.png

51hei.png (24.86 KB, 下載次數(shù): 72)

51hei.png

作者: metatron1    時間: 2021-2-4 20:50
感謝大佬分享,收獲頗深
作者: 電子電子小宅神    時間: 2021-2-6 09:11
2girder 發(fā)表于 2020-2-26 16:15
請問一下這一段是什么意思呢?
void delayms(uint ms)
{

延時函數(shù)
作者: w1281491623    時間: 2021-2-24 13:17
程序不正確運(yùn)行不了怎么解決大佬
作者: 古娜拉黑暗之神    時間: 2021-3-20 09:06
大佬,修改了端口燒進(jìn)了普中89系列的板子和超聲波模塊進(jìn)行實(shí)物仿真,但是不能實(shí)現(xiàn)效果,想請問一下,有沒有可能是因?yàn)槌暡K上的TX,RX沒有分別接在單片機(jī)的RX ,TX端?
作者: gemxie    時間: 2021-5-26 11:38
謝謝大佬分享了,下載學(xué)習(xí)了




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲精品一区中文字幕乱码 | 久久久久久久国产 | 亚洲天天干 | 欧美8一10sex性hd | 色综合色综合色综合 | 97人人超碰| 在线精品一区二区三区 | 国产日韩视频 | 国产三区av| 成人免费网站www网站高清 | 一区二区三区久久久 | 国产精品免费av | 日韩欧美天堂 | 国产精品美女久久久久aⅴ国产馆 | 亚洲一二三区免费 | 精品欧美乱码久久久久久1区2区 | 欧美日韩久久精品 | 久久精品免费看 | 国产精品久久久久久久模特 | 亚洲精品av在线 | 天天操天天插天天干 | 久久久国产一区 | 亚洲一区二区在线视频 | 国产精品毛片一区二区在线看 | 色婷婷综合成人av | 天天av天天好逼 | 天天综合久久 | 午夜视频在线观看网站 | 精品国产18久久久久久二百 | 欧美日韩精品 | 成人黄色电影在线观看 | 羞羞网站免费 | 久久亚| 精品一区二区三区电影 | 亚洲一区二区免费 | 日韩视频区 | 亚洲一区久久 | 久久成人国产 | 欧美成人精品在线 | 亚洲精品视频一区 | 97久久超碰 |