|
超聲波使用的是HC-SR04,顯示用的是7腳oled屏幕,利用spi協(xié)議書寫
單片機(jī)頻率使用11.0592MHZ,可直接添加c文件到任意工程
實(shí)物圖如下:
IMG_20210713_154324.jpg (4 MB, 下載次數(shù): 35)
下載附件
2021-7-13 15:58 上傳
IMG_20210713_154331.jpg (3.82 MB, 下載次數(shù): 48)
下載附件
2021-7-13 15:58 上傳
單片機(jī)源程序如下:
- //Trig=P3.4
- //ECHO=P3.3
- #include "mian.h"
- u16 xdata Acoustic_Distance; //定時(shí)器值保存,超聲波測(cè)量結(jié)果
- u16 xdata Timer1_time; //距離保存
- //***************************************************************************
- // 定時(shí)器一的服務(wù)函數(shù)
- //***************************************************************************
- void Timer1_Routine() interrupt 3
- {
- Timer1_time++; //測(cè)量距離多少毫米
- if(Timer1_time>=500)
- {
- TR1=0; //關(guān)閉定時(shí)器
- }
- }
- //***************************************************************************
- // 定時(shí)器1的配置初始化
- //***************************************************************************
- void Timer1_Init()
- {
- AUXR|=0x40;
- TMOD&=0x0f; //八位自動(dòng)重裝初值
- TMOD|=0xa0; //GATE置1
- TH1=0x53; //定時(shí)器初始值
- TL1=0x53;
- TF1=0;
- TR1=0;
- ET1=1;
- EA=1;
- }
- //***************************************************************************
- // 超聲波初始化
- //***************************************************************************
- void Acoustic_Init()
- {
- Timer1_Init();
- Pulse=0;
- }
- //***************************************************************************
- // 超聲波觸發(fā)與測(cè)量服務(wù)
- //***************************************************************************
- void Acoustic_Amount_Drive()
- {
- static xdata u16 count=0;
- switch(count)
- {
- case 1: Pulse=1;TR1=1;Timer1_time=0; break;
- case 2: Pulse=0; break;
- case 100:count=0;Acoustic_Distance=Timer1_time; break;
- }
- count++;
- }
復(fù)制代碼
51hei.png (7.78 KB, 下載次數(shù): 46)
下載附件
2021-7-13 19:36 上傳
Keil代碼工程文件51hei附件下載:
超聲波.zip
(87.08 KB, 下載次數(shù): 86)
2021-7-13 15:50 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|