Я пытался отключить и снова включить порт через диспетчер устройств, я попытался перезапустить драйвер виртуального последовательного порта (VSPD) и попытался перезагрузить компьютер. Я могу контролировать открытие и закрытие последовательного порта через VSPD, и он открывается и закрывается правильно. Он также получает байты, когда я запускаю сценарий записи, когда сценарий чтения не активен. Ниже я разместил свой код и настройку VSPD, верхний комментарий описывает код, является ли это скриптом чтения или записи:
Код: Выделить всё
# Serial write Script
import serial
# Configure the serial port
ser = serial.Serial(
port='COM5',
baudrate=9600,
bytesize=serial.EIGHTBITS, # 8 bits per byte
parity=serial.PARITY_NONE, # No parity
stopbits=serial.STOPBITS_ONE, # 1 stop bit
timeout=0.5 # Timeout in seconds
)
# Send a byte
byte_to_send = b'\x41' # Example byte to send (here, ASCII 'A')
ser.write(byte_to_send)
print(f"Sent byte: {byte_to_send}")
# Close the serial port
ser.close()
Код: Выделить всё
#Serial read script
import serial
import time
# Configure the serial port
ser = serial.Serial(
port='COM5',
baudrate=9600,
bytesize=serial.EIGHTBITS, # 8 bits per byte
parity=serial.PARITY_NONE, # No parity
stopbits=serial.STOPBITS_ONE, # 1 stop bit
timeout=0.5 # Timeout in seconds
)
try:
while True:
# Read a byte
byte_received = ser.read(1) # Read one byte
print(f"Received byte: {byte_received}")
# Optional: Add a small delay to reduce CPU usage
time.sleep(0.1) # Adjust as needed
except KeyboardInterrupt:
print("Interrupted")
finally:
# Ensure the serial port is properly closed
if ser.is_open:
ser.close()
print("Serial port closed")
Подробнее здесь: https://stackoverflow.com/questions/787 ... ng-to-send