初学树莓派的RPi.GPIO 库,先照着书来实现一个小任务。
import RPi.GPIO as GPIO
import os
import time
GPIO.setup(24,GPIO.IN) #设置管脚的类型
time.sleep(0.02)
GPIO.output(23, False)
time.sleep(1)
while True:
GPIO.output(17,False)
GPIO.output(23,True)
time.sleep(0.00001)
GPIO.output(23,False)
while GPIO.input(24) == 0:
start_time = time.time()
while GPIO.input(24) == 1:
end_time = time.time()
Time = end_time - start_time
distance = 17150 * Time
print("Measured Distance is:",distance,"cms.")
if distance < 10:
print("Obstacle Detected")
os.system('mpg321 /home/pi/GPIO_/distance/beep.mp3')
GPIO.output(17,True)
GPIO.cleanup()
注意:树莓派的引脚只能接入3.3V,超声波传感器输出是5V, 所以要事先用可调电阻器将其分压至3.3V。
当超声波检测到的距离少于10cm,就是发出警报。对了,好像要安装 mpg321。
声音素材下载:https://www.tukuppt.com/yinxiaomuban/jingbao.html