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()
我有读取 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()