25-kits/lsn50-v2-xkc-y25-v-drainage/docs/circuito-funcional.md

63 lines
1.7 KiB
Markdown

# Circuito funcional
## Objetivo
Conectar la salida `OUT` del `XKC-Y25-V` a `PA12` del `LSN50 v2` sin:
- inyectar `5V` directamente al GPIO
- dejar la entrada flotante
- degradar la lectura digital durante la ventana válida
## Alimentación del XKC
- `XKC VCC` -> pin `14` del LSN50 (`+5V`)
- `XKC GND` -> pin `15` del LSN50 (`GND`)
## Entrada digital objetivo
- `PA12` -> pin `24`
## Estado por defecto y protección
Se dejó validado este enfoque:
### Pull-up fijo
- resistencia `47k`
- entre pin `24 (PA12)` y pin `13 (VDD)`
### Diodo de bloqueo
- diodo recomendado: `1N4148`
- alternativa equivalente: `1N914`
- schottky válida si se prefiere: `BAT54` o `1N5819`
### Orientación
- cátodo del diodo hacia `OUT` del XKC
- ánodo del diodo hacia `PA12`
## Qué consigue este circuito
- `PA12` queda alto por defecto por el pull-up
- si el `XKC` fuerza bajo, el diodo conduce y baja `PA12`
- si `OUT` sube a `5V`, el diodo queda inverso y bloquea la inyección hacia `PA12`
- se elimina el riesgo de meter `5V` directos al GPIO
- se reducen estados intermedios por flotación
## Validación observada
### Detectando agua
- `raw_hex: "0e5f7fff003802ffffffff"`
- `byte6 = 0x02`
- `PA12 = 1`
- `drenaje = 1`
- medida observada en `PA12`: aproximadamente `3.6 V`
### Sin detectar agua
- `raw_hex: "0e5f7fff003900ffffffff"`
- `byte6 = 0x00`
- `PA12 = 0`
- `drenaje = 0`
- medida observada en `PA12`: aproximadamente `0.47 V`
## Observación importante
Fuera de la ventana de alimentación pueden observarse tensiones intermedias o comportamientos parciales. Lo importante en este kit es que durante la ventana real de muestreo el bit se comporta de forma estable y correlacionada.