US-100超聲波模塊介紹
US-100超聲波測距模塊可實現2cm~4.5m的非接觸測距功能,擁有2.4~5.5V的寬電壓輸入范圍,靜態功耗低於2mA,自帶溫度傳感器對測距結果進行校正,同時具有GPIO,串口等多種通信方式,內帶看門狗,工作穩定可靠。
模式選擇跳線接口如圖所示。模式選擇跳線的間距為2.54mm,當插上跳線帽時為UART(串口)模式,拔掉時為電平觸發模式。
5 Pin接口從左到右依次編號1,2,3,4,5。它們的定義如下:
- 1號Pin:接VCC電源(供電范圍2.4V~5.5V)。
- 2號Pin:當為UART模式時,接外部電路UART的TX端;當為電平觸發模式時,接外部電路的Trig端。
- 3號Pin:當為UART模式時,接外部電路UART的RX端;當為電平觸發模式時,接外部電路的Echo端。
- 4號Pin:接外部電路的地。
- 5號Pin:接外部電路的地。

本次測試采用串口模式,使用串口1作為數據收發接口,源碼如下:
import time
from machine import UART
uart = UART(1, 9600) # init with given baudrate
uart.init(9600, bits=8, parity=None, stop=1) # init with given parameters
while True:
time.sleep(1)
uart.read()
uart.write(b'\x55')
time.sleep(1)
buf1 = bytearray(2)
uart.readinto(buf1, 2)
distance = (buf1[0] * 256 + buf1[1])/10
print("Distance = {}cm".format(distance))
time.sleep(1)
uart.read()
uart.write(b'\x50')
time.sleep(1)
buf2 = bytearray(1)
uart.readinto(buf2, 1)
temperature = buf2[0] - 45
print("Temperature = {}℃".format(temperature))
將程序保存為us-100.py並使用Ymodem文件傳輸工具下載至開發板,使用`python us-100.py`命令運行程序,運行效果如下:


