如何使用日志记录(或其他方法)以接收完整的 report/log,其中包括编译器在程序卡住之前所做的每一步?
How to use logging (or other methods) in order to receive full report/log that includes every step the compiler made prior to program getting stuck?
TL;DR 在 Python 中,如何使用日志记录(或其他方法)以接收完整的 report/log,其中包括编译器在程序卡住(或挂起)之前所做的每一步串行写入命令)?
我正在尝试打开 Raspberry Pi 3B 和带有内置蓝牙模块的传感器之间的串行通信。我正在 运行 使用 Tonny IDE 来 Python 代码(代码附在下面)并且 运行 总是卡在:ser.write(data.encode())
到目前为止我已经试过了:
- 在Python代码中,将
port
地址从'/dev/ttyAMA0'
改为'/dev/serial0'
或'/dev/rfcomm0'
- 手动将蓝牙传感器与 Raspberry Pi 3b
'/dev/rfcomm0'
端口配对。它有效,但 Python 代码仍然卡在串行写入命令上。
- 在串行配置中,我尝试更改
timeout
或添加 writeTimeout
。没有帮助。
代码:
import numpy as np
import serial
from datetime import datetime
import csv
import os
import json
COLS = 16
ROWS = 16
Values = np.zeros((ROWS,COLS))
ser = serial.Serial(
port='/dev/ttyAMA0',
baudrate = 115200, #RECOMMENDED BAUD RATE FOR THE SENSOR
timeout = 3.0)
time.sleep(1)
print("Started")
data="S"
ser.write(data.encode()) #CODE STUCKS HERE.
.
.
.
如果您想使用蓝牙的串行端口配置文件 (SPP),则需要使用 Python 的套接字库。例如:
https://blog.kevindoran.co/bluetooth-programming-with-python-3/
但是,如果内置蓝牙模块的传感器是低功耗蓝牙 (BLE),那么您将不得不使用 GATT 查询而不是 SPP。
TL;DR 在 Python 中,如何使用日志记录(或其他方法)以接收完整的 report/log,其中包括编译器在程序卡住(或挂起)之前所做的每一步串行写入命令)?
我正在尝试打开 Raspberry Pi 3B 和带有内置蓝牙模块的传感器之间的串行通信。我正在 运行 使用 Tonny IDE 来 Python 代码(代码附在下面)并且 运行 总是卡在:ser.write(data.encode())
到目前为止我已经试过了:
- 在Python代码中,将
port
地址从'/dev/ttyAMA0'
改为'/dev/serial0'
或'/dev/rfcomm0'
- 手动将蓝牙传感器与 Raspberry Pi 3b
'/dev/rfcomm0'
端口配对。它有效,但 Python 代码仍然卡在串行写入命令上。 - 在串行配置中,我尝试更改
timeout
或添加writeTimeout
。没有帮助。
代码:
import numpy as np
import serial
from datetime import datetime
import csv
import os
import json
COLS = 16
ROWS = 16
Values = np.zeros((ROWS,COLS))
ser = serial.Serial(
port='/dev/ttyAMA0',
baudrate = 115200, #RECOMMENDED BAUD RATE FOR THE SENSOR
timeout = 3.0)
time.sleep(1)
print("Started")
data="S"
ser.write(data.encode()) #CODE STUCKS HERE.
.
.
.
如果您想使用蓝牙的串行端口配置文件 (SPP),则需要使用 Python 的套接字库。例如: https://blog.kevindoran.co/bluetooth-programming-with-python-3/
但是,如果内置蓝牙模块的传感器是低功耗蓝牙 (BLE),那么您将不得不使用 GATT 查询而不是 SPP。