Python 脚本与系统一起执行,然后 serial.write() 通过串口发送数据并崩溃 - Raspberry Pi 和 Arduino

Python script execute with system then serial.write() send data over serial and crash - Raspberry Pi and Arduino

我有读取 txt 文件的脚本(里面只有数字)和这个从系统开始的脚本(在 Raspbian Gui 启动之前)。一切正常,我可以按字节发送文本:

def send_serial_stop(self):
       self.serialport.write(b'stop')

当我尝试 运行 这个操作 - 读取 txt 文件并通过串行发送数据时,我的脚本崩溃了。 当我在 Raspbian 中启动脚本时,一切正常,并且脚本没有崩溃。这段代码有什么问题?我无法读取任何错误,因为此应用程序处于全屏模式。有一些提示吗? 请帮助我,因为我应该在本周末之前完成这个项目:(

def send_serial(self):
        file = open('testprog.txt').read()
        self.serialport.write(file.encode())

编辑 当我使用带有连接代码的按钮时(上面的示例),脚本终止,GUI 应用程序正在关闭。 应用程序也基于 PyQt5 框架和 GUI。 总共有大约 150 行代码。 txt 文件有 24 个字符(只有数字) 如果我在 Pycharm 中尝试 运行 这个脚本,一切正常,当我从终端启动时,情况与启动期间相同。

可能的问题是您在打开文本文件时使用了相对路径。

改成绝对路径:

file = open('/absolute/path/to/your/file/testprog.txt').read()