我有红外传感器连接到GPIO。当外部信号到达此传感器时,GPIO应以ASCII码返回二进制数据。 这是我的代码:
import RPi.GPIO as io
io.setmode(io.BCM)
io.setup(15, io.IN)
def inputLow(channel):
print('sensor hit');
print(io.input(15));
io.add_event_detect(15, io.RISING, callback=inputLow, bouncetime=200)
现在我从GPIO 15获得的只有1号或0号。
在写入指令时,当外部IR到达传感器时,数据由UART(GPIO15 / RXD0)自动发送。数据以32字节数组的形式发送,并以<CR><LF>
结束
如何阅读这些数据?现在我尝试这样:
ser = serial.Serial(port="/dev/ttyAMA0", baudrate=115200)
data =ser.readline()
ser.close()
但它只返回b''?