Estaba revisando una nota de aplicación AN2606 donde encontré este diagrama de conexión:
Según mi conocimiento, UART es de tipo push-pull y Tx proporciona el pull-up requerido y, por lo tanto, no necesitamos usar pull-ups externos. ¿Me estoy perdiendo de algo?
Mientras el microcontrolador está reiniciado, sus pines de E/S se configurarán como entradas de alta impedancia. Por lo tanto, el pin utilizado para la transmisión de datos en serie UART (TXD) estará flotando durante este tiempo. Esto puede provocar que el controlador de línea RS232 transmita ruido y basura.
Algunos circuitos integrados de controlador de línea tienen resistencias pull-up internas en sus pines de entrada del lado TTL/LVTTL para evitar esto y producir un estado inactivo de RS232. De lo contrario, se puede agregar una resistencia pull-up.
No es necesaria una resistencia pull-up en el pin de entrada de datos de recepción serie (RXD) del UART porque el receptor de línea RS232 siempre está manejando ese pin.
Tenga en cuenta que el período de reinicio suele ser relativamente largo y que cualquier pin de E/S utilizado como pin de salida es propenso a este problema y debe tenerse en cuenta para una resistencia pull-up o pull-down.
Los pull-ups son significativos en caso de que el micro esté en modo de arranque. En ese caso, el ciclo del micro en diferentes puertos (uart, usb I2C, can) según el tipo de micro.
Si el puerto de entrada no está activado, el ruido podría eventualmente dejar que el micro piense que hay una transmisión en ese puerto y luego espere un bot de un puerto que no está conectado a nada. Tener un pull-up evitará este caso.
Cisne y
whiskyjack
zakkos
jaskij
whiskyjack