Не могу получить доступ к Com PortPython

Программы на Python
Anonymous
 Не могу получить доступ к Com Port

Сообщение Anonymous »

Мне нужно создать простую программу на Python, которая запустит веб -сервер, который я сделаю запрос, и он сделает COM -порт. Затем получите ответ и передайте меня. Код ниже < /p>
from flask import Flask, request, jsonify
import serial
app = Flask(__name__)
ser = serial.Serial('COM3', 9600, timeout=1)

@app.route('/send', methods=['POST'])
def send():
data = request.get_json().get('data', '')

if data:
write_to_port(ser, data)
response = read_full_response(ser)
return jsonify({"message": response}), 200
else:
return jsonify({"error": "No data provided"}), 400

@app.route('/read', methods=['GET'])
def read():
reading = read_from_port(ser)
return jsonify({"message": reading}), 200

def read_from_port(ser):
reading = ser.readline().decode('utf-8').strip()
print('Read:', reading)
return reading

def write_to_port(ser, data):
ser.write(data.encode())
print(f"Written: {data}")

def read_full_response(ser):
response = b""

while True:
if ser.in_waiting:
chunk = ser.read(ser.in_waiting)
response += chunk
if b"\x00" in chunk:
break

return response.decode('utf-8').strip()

if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=5000)
< /code>
На его ноутбуке все началось и работало. Но когда я попробовал это на работнике - получил ошибку < /p>

serial.serialutil.serialexception: не удалось открыть порт «com3»: ormissionErr (13, 'Access отказано.import serial.tools.list_ports
ports = serial.tools.list_ports.comports()
for port in ports:
print(port.device)
< /code>
Он показывает com3. Порт не занят какой -либо другой программой, терминал запуска является названием администратора.
Что может блокировать или что может быть проблемой?>

Подробнее здесь: https://stackoverflow.com/questions/793 ... s-com-port

Вернуться в «Python»