En el manual de mi STM32, una de las funciones alternativas GPIO (a saber, AF15, consulte la página 138) se llama EVENTOUT. En ningún momento se define el evento o se da un caso de uso.
¿Cuál es la función alternativa EVENTOUT de mi STM32?
En el manual de mi STM32, una de las funciones alternativas GPIO (a saber, AF15, consulte la página 138) se llama EVENTOUT. En ningún momento se define el evento o se da un caso de uso.
¿Cuál es la función alternativa EVENTOUT de mi STM32?
Respuestas:
Buena pregunta; crees que pondrían esa información en el manual ... o al menos un pequeño comentario como el siguiente ...
Al investigar un poco, encontré esto de STM32F10x Technical Training V0.3
Generación de señal de salida de evento Generación de
pulso con instrucción SEV: para activar otra MCU desde el modo de baja potencia a través de su señal de entrada de evento
Buscó instrucciones SEV para más información / confirmación:
SEV es una instrucción indirecta que hace que un evento se señale a todos los procesadores dentro del sistema multiprocesador. También establece el registro de eventos local en 1, consulte Administración de energía.
La función EVENTOUT parece ser una función de administración de energía para sistemas multiprocesador. Estoy seguro de que podría usarse de otras maneras, dependiendo de cómo se vea el pulso de salida, pero supongo que el caso de uso mayoritario es activar otros procesadores a través de sus respectivas señales EVENTIN.
Editar por anónimo (posteriormente reeditado para mayor precisión y organización) *
SEV
es una instrucción de lenguaje ensamblador. Algunos compiladores de C pueden permitir que se utilice a través del ensamblaje en línea, por ejemplo, __asm__ volatile ("sev");
aunque la forma exacta será específica del compilador.
En el uso real, la instrucción emitirá un pulso durante un período de reloj (por ejemplo, 14ns con un reloj central de 72MHz) en cualquier pin que esté configurado y habilitado a través del AFIO_EVCR
registro y esté en modo de salida de función alternativa.
Se sugirió que SEV
se podría utilizar una secuencia de instrucciones y nop para emitir un tren de pulsos a una fracción de la frecuencia del reloj. Posiblemente dos SEV
instrucciones secuenciales podrían crear un pulso más largo, aunque no se ha citado ninguna garantía contra fallas.
* Comentario del crítico. Esta es una respuesta enviada como edición al OP por un usuario anónimo no registrado. Este tipo de edición va en contra de las pautas (demasiado radical). Una excepción para esta edición puede ser una locura para no perder la respuesta. Mella.