仿真版本:Proteus8.6及以上版本
程序編譯:Keil5 C51
編程語言:C語言
設(shè)計編號:【H01】
1.? 簡介
? 本文提出了一種基于51單片機的數(shù)碼管超聲波測距系統(tǒng)。該設(shè)計使用ATC89C51單片機、HC_SR04超聲波測距模塊、數(shù)碼管顯示模塊以及聲光報警模塊。用戶可設(shè)置報警閾值,當(dāng)實際距離小于設(shè)定閾值時啟動聲光報警。
2.? 主要功能
a.通過數(shù)碼管顯示實際距離、報警閾值。
b.通過獨立按鍵設(shè)置報警閾值。
c.當(dāng)實際距離小于設(shè)定閾值時啟動聲光報警。
3.? 源程序(Keil5)
本設(shè)計采用keil5 C51軟件(內(nèi)附安裝包)實現(xiàn)程序設(shè)計。如需用keil4打開程序,可自行通過.c和.h文件新建工程即可。
#include <reg52.H>//器件配置文件
#include <intrins.h>
//傳感器接口
sbit RX = P3^2;
sbit TX = P3^3;
//按鍵聲明
sbit S1 = P1^4;
sbit S2 = P1^5;
sbit S3 = P1^6;
//蜂鳴器
sbit Feng= P2^0;
sbit W1=P1^0;
sbit W2=P1^1;
sbit W3=P1^2;
sbit W4=P1^3;
//變量聲明
unsigned int time=0;
unsigned int timer=0;
unsigned char posit=0;
unsigned long S=0;
unsigned long BJS=20;//報警距離80CM
//模式 0正常模式 1調(diào)整
char Mode=0;
bit flag=0;
bit flag_KEY=0;
unsigned char const discode[] ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0xff/*-*/};
//數(shù)碼管顯示碼0123456789-和不顯示unsigned char const positon[4]={0xfd,0xfb,0xf7,0xfe}; //位選
unsigned char disbuff[4] ={0,0,0,0}; //數(shù)組用于存放距離信息
unsigned char disbuff_BJ[4] ={0,0,0,0};//報警信息
void Display();
//延時20ms(不精確)
void delay(void)
{
unsigned char a,b,c;
for(c=2;c>0;c--)
for(b=38;b>0;b--)
for(a=60;a>0;a--);
}
//按鍵掃描
void Key_()
{
if(flag_KEY==0)
{
if(Mode!=0)
{
//+
if(S1==0)
{
delay(); //延時去抖
if(S1==0)
{
BJS++; //報警值加
flag_KEY=1;
if(BJS>=151) //最大151
{
BJS=0;
}
// while(S1==0)
// Display();
}
}
//-
if(S2==0)
{
delay();
if(S2==0)
{
BJS--; //報警值減
flag_KEY=1;
if(BJS<=1) //最小1
{
BJS=150;
}
// while(S2==0)
// Display();
}
}
}
//功能
if(S3==0) //設(shè)置鍵
{
delay();
if(S3==0)
{
Mode++; //模式加
flag_KEY=1;
if(Mode>=2) //加到2時清零
{
Mode=0;
}
while(S3==0)
Display();
}
}
}
4.? 仿真proteus8.6
? 本設(shè)計采用proteus8.6軟件(內(nèi)附安裝包)實現(xiàn)仿真設(shè)計,如下圖所示。proteus軟件一般存在高低版本兼容問題,該仿真是通過proteus8.6導(dǎo)出的,所以請盡量使用proteus8.6打開文件,低于proteus8.6的版本不能夠正常使用,高于proteus8.6的版本除了proteus8.8/8.9理論上可以正常使用。
設(shè)置報警閾值:
當(dāng)實際距離小于設(shè)定閾值時啟動聲光報警:
5.? 設(shè)計報告
設(shè)計報告主要包括硬件電路、軟件設(shè)計、仿真調(diào)試等等,僅供參考。
6.? 資料清單
設(shè)計資料主要包括C程序+仿真+設(shè)計報告+使用說明+元件清單+操作視頻等。
百度網(wǎng)盤下載鏈接:【H01】百度網(wǎng)盤下載鏈接
更多單片機仿真設(shè)計合集:單片機仿真設(shè)計合集