Creación del API para controlar el arduino
Librerias necesarias
python -m venv env
.\env\Scripts\activate # Windows
pip install -r requirements.txt
pip freeze
Verificar que se esta en el entorno.
#Python
from typing import Optional
from enum import Enum
import serial
#Pydantic
from pydantic import BaseModel
from pydantic import Field
#FastAPI
from fastapi import FastAPI
from fastapi import Body, Query, Path
app = FastAPI()
app.serial = None
@app.get("/")
def home():
return {"App": "Ready"}
@app.get("/connect")
def connect():
print("Iniciando conexión...")
app.serial = serial.Serial('COM8',115200)
if app.serial == None:
return {"Connection": "Fail"}
else:
return {"Connection": "Open"}
@app.get("/disconnect")
def disconnect():
app.serial.close()
return {"Connection": "Close"}
@app.get("/on")
def led_on():
app.serial.write('1'.encode())
return {"led":"on"}
@app.get("/off")
def led_off():
app.serial.write('0'.encode())
return {"led":"off"}
Archivo fritzing
uvicorn back_end:app --reload