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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2253|回復: 0
收起左側

MicroPython實例之TPYBoardv102自動澆花系統

[復制鏈接]
ID:130183 發表于 2018-6-9 11:03 | 顯示全部樓層 |閱讀模式
    鞋碼匹配儀,利用超聲波測距的原理。通過使用超聲波遇到障礙返回的特性,計算超聲波放出與返回的時間計算來測定障礙與超聲波模塊的距離。

    鞋碼匹配儀的固有大小已知,在腳放入時,大小會發生改變 使用已知距離對改變后的距離做差獲得腳的尺寸,再通過尺寸與距離的轉換得到正確的鞋碼(此處使用標準鞋碼)。

    1. 所需元器件

    超聲波模塊 1個
    TPYBoard v102板子 1塊
    四位數碼管 1個
    micro USB數據線 1條
    杜邦線 若干

    2. 超聲波模塊工作原理

    (1)采用IO口TRIG觸發測距,給最少10us的高電平信號。
    (2)模塊自動發送 8 個 40khz 的方波,自動檢測是否有信號返回。
    (3)有信號返回,通過 IO 口 ECHO 輸出一個高電平,高電平持續的時間就是超聲波從發射到返回的時間。測試距離=(高電平時間*聲速(340M/S))/2。
    如下圖接線,VCC 供 5V電源, GND 為地線,TRIG 觸發控制信號輸入,ECHO 回響信號輸出等四個接口端。

1.png

    3. 控制四位數碼管顯示數字

    2.png
3.png
    (1)1、2、3、4是“位選”針腳,用于控制具體哪一位顯示。
    (2)a、b、c、d、e、f、g、dp(h)是“段選”針腳,用法和1位數碼管一致,用來顯示具體的數值。

4.png

    4. 接線圖

5.png
    5. 源代碼
  1. import pyb
  2. from pyb import Pin
  3. from pyb import Timer
  4. from machine import SPI,Pin
  5.   
  6. Trig = Pin('X2',Pin.OUT_PP)
  7. Echo = Pin('X1',Pin.IN)
  8. num=0
  9. flag=0
  10. run=1
  11. def start(t):
  12.          global flag
  13.          global num
  14.          if(flag==0):
  15.                    num=0
  16.          else:
  17.                    num=num+1
  18. def stop(t):
  19.          global run
  20.          if(run==0):
  21.                    run=1
  22. start1=Timer(1,freq=10000,callback=start)
  23. stop1=Timer(4,freq=2,callback=stop)
  24.   
  25. sizecc = [35,36,37,38,39,40,41,42,43,44,45,46,47]#280-47 -5
  26. while True:
  27.          if(run==1):
  28.                    Trig.value(1)
  29.                    pyb.udelay(100)
  30.                    Trig.value(0)
  31.                    while(Echo.value()==0):
  32.                                      Trig.value(1)
  33.                                      pyb.udelay(100)
  34.                                      Trig.value(0)
  35.                                      flag=0
  36.                    if(Echo.value()==1):
  37.                                      flag=1
  38.                                      while(Echo.value()==1):
  39.                                                flag=1
  40.                    if(num!=0):
  41.                                      #print('num:',num)
  42.                                      distance=num/1000*34000/2
  43.                                      print('Distance')
  44.                                      print(distance,'mm')
  45.                                      cc = (int)((distance-215)/5)
  46.                                      if cc<0:
  47.                                                cc=0
  48.                                      elif cc>12:
  49.                                                cc=12
  50.                                      print(sizecc[cc],'cc')
  51.                    flag=0
  52.                    run=0
復制代碼




回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 四虎成人免费视频 | 国产精品一区在线播放 | 欧美xxxx在线 | 国产一区精品在线 | 国产精品观看 | 欧美一区视频 | 欧美日韩精品在线一区 | 日本三级全黄三级三级三级口周 | 中文字幕 欧美 日韩 | 亚洲精品在 | 久久成 | 国产欧美日韩视频 | 黄色一级大片视频 | 综合五月 | 久久9久| 日韩一二三区视频 | 中文字幕综合 | 日本xx视频免费观看 | 国产高清在线精品一区二区三区 | 国产原创视频 | 先锋资源亚洲 | 欧美日韩国产一区二区三区 | 97伦理电影网 | 日本涩涩视频 | 亚洲第一av | www.日韩高清 | 久久久久久久国产 | 成人免费视频网站在线观看 | 久久色视频 | av一区在线 | 99亚洲精品 | 一区二区免费在线观看 | 欧美日韩国产三级 | 91大神在线资源观看无广告 | 国产精品自产拍在线观看蜜 | 久久久久国产一区二区三区 | 天天躁人人躁人人躁狂躁 | 久久久国产一区二区三区 | 亚洲黄色av | 黄色一级毛片 | 亚洲h色 |