UART 不发送字节



我正在尝试编写测试代码,用于在我的树莓PI 3 b+上通过UART发送数据,但我无法收到我发送的数据。树莓通过UART模块连接到我的笔记本电脑,所以我可以在腻子结果中看到。任何人都可以告诉我我做错了什么?

我已经检查了端口是否打开并且它返回了 True ,msg=b'Hello' 返回了 hello 显示 hello ,但没有收到字节。发送单个字节也不会检测到字节。擦除超时表明已达到超时。

编辑:几乎没有测试端口是否正常工作

from __future__ import print_function
import serial
test_string = "Testing 1 2 3 4".encode('utf-8')
#test_string = b"Testing 1 2 3 4" ### Will also work
port_list = ["/dev/serial0", "/dev/ttyS0"]
for port in port_list:
    try:
        serialPort = serial.Serial(port, 9600, timeout = 2)
        serialPort.flushInput()
        serialPort.flushOutput()
        print("Opened port", port, "for testing:")
        bytes_sent = serialPort.write(test_string)
        print ("Sent", bytes_sent, "bytes")
        loopback = serialPort.read(bytes_sent)
        if loopback == test_string:
            print ("Received", len(loopback), "valid bytes, Serial port", port, "working n")
        else:
            print ("Received incorrect data", loopback, "over Serial port", port, "loopbackn")
        serialPort.close()
    except IOError:
        print ("Failed at", port, "n")

这给了我 tty0 无法正常工作的信息,但也绝对没有关于端口 serial0 正确性的答案

import serial
import struct
import time
port = serial.Serial("/dev/ttyS0", baudrate=115200, timeout=2.0)
i = 0
while True:
    msg = struct.pack('>HBBB', 3000, 243, 234, 254)
    port.write(msg)
    time.sleep(0.3)
    bytesToRead = port.inWaiting()
    print("Found {} bytes in serial".format(bytesToRead))
    if bytesToRead == 5:
        rcv = port.read(5)
        # port.write('rnYou sent:' + repr(rcv))
        for i in range(5):
            print('r {} - {}'.format(i, bytes(rcv[i])))
        idCode = struct.pack('BB', rcv[0], rcv[1])
        idCode = struct.unpack('>H', idCode)
        idCode = idCode[0]
        # value = struct.unpack_from('HBBB', decode)
    i += 1
    if i == 4:
        exit()

预期成果:

在串行中找到 5 个字节

(索引( - (该索引处的字节(

有:

在串行中找到 0 字节

已解决。这只是接线的问题.如果将来有人想像那样运行测试 - 他们必须记住将 RX 与 TX 线连接。或者,如果它与笔记本电脑连接,最好在其上创建负责通信的代码(但不是ttyS0或Serial0,端口应设置为正确的COM,例如"COM3"(

相关内容

  • 没有找到相关文章

最新更新