如何通过串行端口发送raspberry pi(持续更新)的控制台打印?

2024-05-16 12:28:50 发布

您现在位置:Python中文网/ 问答频道 /正文

在这里,我更新文本文件中特定命令的控制台打印,然后通过串行端口发送该文本文件的数据。但是,是否有任何方法可以将数据直接从pi控制台发送到串行端口,并在主机上捕获该数据

我的主要目标是捕获pi的日志,并通过串行端口将其发送到主机

有关更多信息,请查看“查找详细信息”:

sudo ./blynk --token == token num >> test.txt

---上述命令将执行并运行blynk应用程序。如果我们操作blynk应用程序,我们将在控制台上获得连续输出,如:

[5245577] LED Turns OFF
[5245909] LED Turns ON
[5246141] LED Turns OFF
[1] Connecting to blynk-cloud.com:80
[5247158] LED Turns ON

我将控制台打印的数据连续存储到test.txt文件中,并使用以下程序通过串行端口发送数据:

    import serial
    import time, sys 
    serialPort = serial.Serial('/dev/ttyS0', 115200, serial.EIGHTBITS,serial.PARITY_NONE, 
                                serial.STOPBITS_ONE, timeout=5)

    fileName = "test.txt"

    print("###Reading lines from the file.###")
    f = open(fileName, 'r')
    lines = f.readlines()
    time.sleep(10)
    print("###Sending data to the port.###")

    for i in range(len(lines)):
        serialPort.write(lines[i].encode())
        print(lines[i])

   serialPort.write('$')
   serialPort.close()


现在,当我从该文件中读取时,我面临一个问题,而另一个文件正在写入同一个文件。我们可以解决这个问题,还是可以通过串行端口直接发送控制台打印


Tags: 文件数据端口test命令txtledblynk