我正在尝试使用Beaglebone Black Wireless(Debian Image 2017-07-01)使用UART串行通信与另一台设备进行通信。在示例程序中,骨头等待设备发送字母" A",然后在收到正确的字母后输出消息并传输字母" B"。这是以下程序:
import Adafruit_BBIO.UART as UART
import serial
#Enabling the serial ports
UART.setup("UART1")
#Serial setup values
ser = serial.Serial()
ser.port = "/dev/ttyO1"
ser.baudrate = 9600
READ_LEN = 1
ser.close()
rx = ""
while True:
print "Waiting for A... "
ser.open()
rx = ser.read()
ser.close()
if (rx == 'A'):
print "Got it!"
ser.open()
ser.write("B")
ser.close()
break
该程序不会丢弃任何错误,但是,在用设备测试时,程序会陷入"等待"线上。我已经彻底检查了所有连接都是正确的,并且另一个设备正在发送数据。此外,该程序在旧的Beaglebone上完美运行(Debian Image 2015-11-12)。
对此事的任何帮助将不胜感激。
config-pin'您使用的PIN'uart
示例:
config-pin p9.14 uart
seth