找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3785|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

stc15w單片機(jī)超聲波代碼 7腳oled屏幕顯示

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
超聲波使用的是HC-SR04,顯示用的是7腳oled屏幕,利用spi協(xié)議書寫
單片機(jī)頻率使用11.0592MHZ,可直接添加c文件到任意工程
實(shí)物圖如下:


單片機(jī)源程序如下:
  1. //Trig=P3.4
  2. //ECHO=P3.3
  3. #include "mian.h"
  4. u16 xdata Acoustic_Distance;          //定時(shí)器值保存,超聲波測量結(jié)果
  5. u16 xdata Timer1_time;                                                                 //距離保存
  6. //***************************************************************************
  7. // 定時(shí)器一的服務(wù)函數(shù)
  8. //***************************************************************************
  9. void Timer1_Routine() interrupt 3
  10. {
  11.         Timer1_time++;                                                    //測量距離多少毫米
  12.         if(Timer1_time>=500)
  13.         {
  14.                 TR1=0;                                                                                                                //關(guān)閉定時(shí)器
  15.         }
  16. }        
  17. //***************************************************************************
  18. // 定時(shí)器1的配置初始化
  19. //***************************************************************************
  20. void Timer1_Init()
  21. {
  22.         AUXR|=0x40;
  23.         TMOD&=0x0f;                                                                                                        //八位自動(dòng)重裝初值
  24.         TMOD|=0xa0;                                                                                                        //GATE置1
  25.         TH1=0x53;                                                                                                                //定時(shí)器初始值
  26.         TL1=0x53;                          
  27.         TF1=0;
  28.         TR1=0;
  29.         ET1=1;
  30.         EA=1;
  31. }
  32. //***************************************************************************
  33. // 超聲波初始化
  34. //***************************************************************************
  35. void Acoustic_Init()
  36. {
  37.         Timer1_Init();
  38.         Pulse=0;
  39. }        
  40. //***************************************************************************
  41. // 超聲波觸發(fā)與測量服務(wù)
  42. //***************************************************************************
  43. void Acoustic_Amount_Drive()
  44. {
  45.         static xdata u16 count=0;
  46.         switch(count)
  47.         {
  48.                 case 1: Pulse=1;TR1=1;Timer1_time=0; break;
  49.                 case 2: Pulse=0; break;
  50.                 case 100:count=0;Acoustic_Distance=Timer1_time; break;
  51.         }
  52.         count++;
  53. }
復(fù)制代碼

Keil代碼工程文件51hei附件下載:
超聲波.zip (87.08 KB, 下載次數(shù): 86)


評(píng)分

參與人數(shù) 2黑幣 +80 收起 理由
咸魚頭 + 30 贊一個(gè)!
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂3 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:889505 發(fā)表于 2021-7-22 20:31 | 只看該作者
寫得真不錯(cuò)
回復(fù)

使用道具 舉報(bào)

板凳
ID:513213 發(fā)表于 2021-7-23 09:54 | 只看該作者
帶仿真原理圖嗎?
回復(fù)

使用道具 舉報(bào)

地板
ID:973981 發(fā)表于 2021-10-21 20:58 | 只看該作者
為什么不弄個(gè)帶返回值的函數(shù)
回復(fù)

使用道具 舉報(bào)

5#
ID:634830 發(fā)表于 2022-5-23 18:43 | 只看該作者
怎么只有程序,沒有原理圖呢
回復(fù)

使用道具 舉報(bào)

6#
ID:361216 發(fā)表于 2022-10-24 19:05 | 只看該作者
唉,整了半天都沒有整出來,看下高手 的呢
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表