Я пытаюсь прочитать два последовательных порта для скрипта контроля доступа в Python.Один последовательный порт имеет считыватель RFID, другой имеет считыватель штрих-кода.Я хочу, чтобы пользователь представил свою карту, будь то штрих-код или RFID, и скрипт для проверки прав доступа.
serRFID = serial.Serial(
port = '/dev/ttyUSB0',
baudrate = 9600,
parity = serial.PARITY_NONE,
stopbits = serial.STOPBITS_ONE,
bytesize = serial.EIGHTBITS,
timeout = 10)
serBARC = serial.Serial(
port = '/dev/ttyACM0',
baudrate = 38400,
parity = serial.PARITY_NONE,
stopbits = serial.STOPBITS_ONE,
bytesize = serial.EIGHTBITS,
timeout = None)
def readtag():
global tag_inp
serBARC.reset_input_buffer()
tag_inp = ""
while tag_inp == "":
read_byte1 = serBARC.read(11)
if len(read_byte1) == 11:
tag_inp = read_byte1
Выше работает, но, очевидно, только с читателем штрих-кода.Если я изменяю на serRFID вместо serBARC в определении «readtag», это также работает, но я хочу, чтобы оба считывались, и только тот, который возвращает данные (RFID или штрих-код), был сохранен как «tag_inp»