• 方案介紹
  • 附件下載
  • 推薦器件
  • 相關推薦
申請入駐 產業(yè)圖譜

51單片機導盲手杖_超聲波測距+DS18B20測溫設計

2024/08/13
1625
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

設計資料獲取聯(lián)系方式.doc

共1個文件

原理圖PAB:Altium Designer

仿真原版本:proteus 7.8

程序編譯器:keil 4/keil 5

編程語言:C語言

設計編號:S0019

設計要求

導盲手杖主要用于幫助視覺有障礙的人解決行動不便問題,具有成本低,使用方便等特點。主要要求有:

1.顯示前方障礙物距離;

2.實時測量距離,并通過蜂鳴器提醒距離過短,蜂鳴器蜂鳴發(fā)出預警;

3.可以通過按鍵調整蜂鳴器預警的距離;

4.附加要求,可以顯示實際溫度,根據(jù)溫度調整傳感器測試計算,減少誤差。

img

img

仿真電路

可以通過按鍵調整蜂鳴器預警的距離,從而調整安全距離。

img

原理圖

img

PCB圖

imgimg

源程序

img

主程序

/主函數(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);	  //當RX為零時等待
			TR0=1;		  //開啟計數(shù)
			while(RX);	  //當RX為1計數(shù)并等待
			TR0=0;		  //關閉計數(shù)
	
			delayms(20);  //20MS
			tmpchange();  //溫度轉換
			t_=tmp();     //度溫度
			Conut(t_/10); //計算距離
			if(L_<Min)
			{
				Feng_Start();
			}
			
			
			
			/*	if(FW=0)
				Feng_Stop();
			*/
			Display_1602(t_/10,L_);
		}
		//調整顯示
		else if(mode!=0)
		{
			//最大最小值
			Init_MaxMin();
			while(mode!=0)
			{
				
				Key();
				/*if(k==1&&mode==1)
				{
					Init_MaxMin();	
   				write_com(0x8d);//設置位置					
				}
				*/
				 if(k==1&&mode==1)
				{
					Init_MaxMin();	
   				write_com(0x89);//設置光標位置	
				}
				k=0;
			}
			//界面初始化
			Init1602();
		}
	}
}

按鍵檢測

//按鍵檢測
void Key()
{
	//功能鍵按下
	if(K1==0)
	{
		Feng_Start();//蜂鳴器開
		delay_key(); //消抖
		while(K1==0);//等待松手
		Feng_Stop(); //蜂鳴器關閉
		mode++;      //模式++
		if(mode==2)	 //達到最大限度歸為
			mode=0;	
		k=1;			 //按鍵標志位
	}
	//+鍵
	else if(K2==0)
	{
		Feng_Start();//蜂鳴器開
		delay_key(); //消抖
		while(K2==0);//等待松手
		Feng_Stop(); //蜂鳴器關閉
		//最大值調整
		/*if(mode==1)  //在最大值調整下
		{
			Max++;	 //調整最大值
			if(Max==201)//到達201歸為200
			{
				Max=200;
			}	
		}*/
		//最小值
	if(mode==1)//最小模式下調整
		{
			Min++;		//調整最小值
			/*if(Min>Max) //最小值不能大于最大值
			{
				Min=Max;
			}	
				*/
		}
		k=1;
	}
	//-鍵
	else if(K3==0)
	{
		Feng_Start();
		delay_key();
		while(K3==0);
		Feng_Stop();
		//最大值調整
		/*if(mode==1)
		{
			Max--;
			if(Max<Min)
			{
				Max=Min;
			}	
		}*/
		//最小值
		 if(mode==1)
		{
			Min--;
			if(Min==0xff)
			{
				Min=0;
			}				
		}
		k=1;
	}
}

資料清單

下載

img

  • 設計資料獲取聯(lián)系方式.doc
    下載

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風險等級 參考價格 更多信息
LAN8720AI-CP-TR 1 SMSC Ethernet Transceiver, 1-Trnsvr, CMOS, 4 X 4 MM, 0.85 MM HEIGHT, ROHS COMPLIANT, QFN-24
$1.74 查看
JST01TMAC1CY5GE2 1 Viavi Solutions Inc Transceiver,
暫無數(shù)據(jù) 查看
74HC14DTR2G 1 Rochester Electronics LLC HC/UH SERIES, HEX 1-INPUT INVERT GATE, PDSO14, LEAD FREE, TSSOP-14
$0.47 查看

相關推薦