# 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.