Disculpas si esta es una pregunta tonta. Debo estar realmente sobrecargado de trabajo para no ver una respuesta yo mismo.
En resumen, quiero liberar el pin GPIO moviendo el LED a BOOT0 de STM32L4Q5 .
De acuerdo con la hoja de datos, BOOT0 cambia automáticamente al modo analógico después del reinicio y luego se puede usar como PH3 GPIO. La forma sencilla de usarlo es agregar un menú desplegable de 10k y un FET para controlar el LED. Pero, ¿y si conecto el pin a GND a través de LED y su resistencia 300R? ¿Funcionará como una especie de menú desplegable durante el reinicio (para arrancar desde el flash principal)?
No, no se garantiza que funcione debido a que el LED es sensible a la luz y tiene cierta capacitancia parásita. Para ser 100 % confiable en todas las condiciones, requiere una resistencia pull-down separada.
Esto se debe a que un LED también actuará como una celda fotovoltaica y, debido a la luz que incide sobre el LED, generará voltaje.
Acabo de medir que un LED SMD aleatorio con resistencia en serie medirá 1,24 V con luz brillante. La impedancia de entrada del multímetro tiene una clasificación superior a 10 Mohm, pero el voltaje será mayor sin ninguna impedancia de carga y solo con la MCU.
Entonces, incluso con el multímetro, el voltaje de salida del LED ya está por encima de los requisitos típicos de voltaje de entrada de CMOS para un nivel lógico bajo.
En la práctica, la MCU aún podría entender que la lógica es baja y que el voltaje será más bajo en condiciones normales de iluminación. Usé una linterna para fines de demostración.
Muchos otros circuitos con LED conectados a pines que son potencialmente entradas de tres estados u ocasionalmente (como expansores GPIO) también sugieren una resistencia sobre el LED para desviar la fotocorriente para evitar voltajes flotantes indeterminados.
Además, la unión del semiconductor LED tiene una pequeña cantidad de capacitancia, del orden de 10 a 100 picofaradios.
Si enciende el LED y reinicia la MCU, la carga tardará un tiempo en decaer y, hasta que lo haga, el pin GPIO se leerá como una entrada alta. Una resistencia externa también se asegurará de descargar esta carga. En algunos circuitos, la capacitancia del LED se puede usar para medir los niveles de luz, midiendo el tiempo que tarda la fotocorriente en cargar la capacitancia, lo que convierte al LED en un dispositivo de comunicación bidireccional.
seguro; solo tiene que asegurarse de que el voltaje esté por debajo del umbral bajo/alto dada la cantidad de corriente (inevitablemente) que saldrá de la entrada de arranque.
Mire la tabla 62 de la hoja de datos: la fuga del pin de arranque debe estar en el rango de 100 nA como máximo, por lo que 3·10² Ω · 10⁻⁷ V = 0 V sobre la resistencia y 0 V sobre la unión del LED, haciendo es bastante seguro que el voltaje en el pin de arranque está por debajo del voltaje máximo bajo de 0.3 · VDD.
usuario_1818839
Arce
Russel McMahon
Arce