You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.1 KiB
1.1 KiB
Переключатель контекста на STM32
Задача переключаться между задачами через определённый квант времени.
Для работы отсчёта кванта времени используется SysTick, далее прерывание PendSV, где происходит сохранение контекста текущей задачи и переключение на другую. Программа использует PSP стек для задач и MSP для ОС.
Основная теория
CortexM0 имеет 16 регистров общего назначения:
-
Младшие регистры (r0-r7)
-
Старшие регистры (r8-r12)
-
Регистр указателя стека SP (r13) для текущего контекста (r8-r12). В зависимости от контекста может быть либо MSP (указателем основного стека) либо PSP (указателем стека процесса).
-
Регистр связи LR (r14)
-
Регистр счетчика команд PC(r15)