UnboundLocalError - 超声波传感器 (HC-SR04) - Raspberry Pi

时间:2021-07-05 19:07:48

标签: python raspberry-pi sensors

我使用两个传感器。该代码适用于一种,但不适用于另一种。

import RPi.GPIO as GPIO            
import time                        
GPIO.setmode(GPIO.BOARD)                
GPIO.setwarnings(False)

TRIG = 8                                 
ECHO = 10
GPIO.setup(TRIG,GPIO.OUT)                 
GPIO.setup(ECHO,GPIO.IN)

print ("Distance measurement in progress")
GPIO.output(TRIG, False)                
print ("Waitng For Sensor To Settle")
time.sleep(1)
    
def dist ():
    while True:
        
        time.sleep(0.1)
        
        GPIO.output(TRIG, True)                 
        time.sleep(0.00001)                     
        GPIO.output(TRIG, False)                 

        while GPIO.input(ECHO)==0:               
            pulse_start = time.time()             

        while GPIO.input(ECHO)==1:               
            pulse_end = time.time()                

        pulse_duration = pulse_end - pulse_start 
        distance = (pulse_duration * 36320) / 2        
        distance = round(distance, 2)
          
        return distance

while True:
    print(dist())

here:error

我尝试了“全局”,但那一次给了我“名称错误”。 请给我另一个解决方案。

好吧,伙计们,这对我来说是个好消息。 (自己的办法解决)

-这些传感器在 3.3V 下工作,因此我将其中两个连接到 Raspberry 的 3.3V 引脚上。因为不想在面包板上使用很多 diots。

-我尝试将其中一个连接到 5V 引脚上,将另一个连接到 3.3V 引脚上。它以这种方式工作。(也许这对遇到同样问题的人有所帮助)

-但还是不明白为什么。那么使用 3.3V 引脚有什么限制吗?

0 个答案:

没有答案