La respuesta, tal como se encuentra en alguna documentación aleatoria registrada en GitHub, es:
El manejo del control de flujo RS485 (característica de habilitación del controlador) es posible a través del siguiente procedimiento:
# Programe la velocidad de transmisión, longitud de palabra = 8 bits, bits de parada, paridad,
Modos de transmisor / receptor y valores de control de flujo de hardware usando
la función USART_Init ().
# Habilitar el controlador Habilitar usando la función USART_DECmd ().
# Configura la polaridad de habilitación del controlador usando el USART_DEPolarityConfig ()
función.
# Configura el tiempo de aserción de la habilitación del controlador usando USART_SetDEAssertionTime ()
función y tiempo de desactivación usando el USART_SetDEDeassertionTime ()
función.
# Habilita el USART usando la función USART_Cmd ().
Los tiempos de afirmación y deserción se expresan en unidades de tiempo de muestra (1/8 o 1/16 bit tiempo, dependiendo de la tasa de sobremuestreo).
anexo
Esto me permite buscar en Google el comando USART_DECmd, que a su vez me lleva a la siguiente nota de aplicación:
enlace
Esto contiene la oración final de la medalla de oro:
The DE signal is mapped to the RTS pin of the USART, and in this application it is
connected with the pin 12 of port A (PA12).
(For STM32F05x)
¿Debería ser tan difícil descubrir esto? No. Pero vivimos en un mundo imperfecto.
La entrada de señal de "habilitación de recepción" en su transciever se puede conectar para que esté siempre encendida (usted recibirá sus propios datos) o se puede conectar a una inversa de la señal DE; por lo general, se utiliza un pull-up y un MOSFET de canal N (como BS-138) con compuerta unida a la señal de salida DE.
O simplemente use un transciever que cambie ambas direcciones con un solo pin :-)