Vengo de MCU de 8 bits y he usado un temporizador del sistema para generar una interrupción periódica que parece ser la motivación detrás del temporizador Cortex M SysTick.
¿Hay algún tipo de importancia arquitectónica en el uso del temporizador SysTick en comparación con cualquier otro temporizador en las MCU de Cortex M?
¿Es solo una cuestión de preferencia de codificación que los programadores hayan usado el temporizador SysTick como el temporizador principal cada pocos ms?
El manual de referencia de 800 páginas es bastante silencioso en SysTick, aparte de cómo aplica post/prescalars.
Veo que es una interrupción predeterminada de alta prioridad, por lo que es el camino de menor resistencia para el sistema. Pero la prioridad de interrupción es configurable.
(El origen de esta pregunta es que estoy usando STM32CubeMX para generar una plantilla de proyecto, y cuando va a agregar FreeRTOS, Cube genera una advertencia de que FreeRTOS debe usar un temporizador separado de SysTick... lo que me hace preguntarme si hay ¿Algo más en juego aquí? Acabo de suponer que usarías el SysTick porque así es "cómo se hacen las cosas"...).
Como se responde en los comentarios.
El SysTick, si está presente, es parte del núcleo ARM, los otros temporizadores son del proveedor del chip. SysTick tiene un evento más directo (piense en interrupción) en el núcleo donde los otros tiempos entran a través de interrupciones, no es que eso importe. Y otros temporizadores tienden a tener más funciones.
Etiquetó Cortex-M, por lo que es probable que sea un microcontrolador, lo que significa que podría estar haciendo baremetal, lo que significa que puede hacer lo que quiera, usted decide qué temporizadores hacen qué. Si toma algunos RTOS u OS ya creados para ese chip, entonces han decidido qué recursos quieren consumir y por qué. Principalmente basado en la opinión en lo que respecta a eso.
El temporizador de sysstick es mucho más fácil y simple de poner en marcha, y no siempre está presente, algunos núcleos no lo tienen como una opción y otros como una opción (para que el proveedor del chip decida en el momento de la compilación), por lo que tiene esa ventaja. , aunque puede haber algunos temporizadores en algunos chips que sean igualmente sencillos.
Los temporizadores de proveedores de chips a veces pueden controlar los pines de E/S o tener alguna participación externa donde el sysstick está AFAIK contenido dentro del núcleo.
Eugenio Sh.
leroy105
Eugenio Sh.
Eugenio Sh.
broma
leroy105
Eugenio Sh.
leroy105
broma
broma
Eugenio Sh.
broma
brahans
Eugenio Sh.
broma
Eugenio Sh.
broma
leroy105
Eugenio Sh.
leroy105
brahans
viejo contador de tiempo