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.
 
 
 
mini-OS/readme.md

1.1 KiB

Переключатель контекста на STM32

Задача переключаться между задачами через определённый квант времени.

Для работы отсчёта кванта времени используется SysTick, далее прерывание PendSV, где происходит сохранение контекста текущей задачи и переключение на другую. Программа использует PSP стек для задач и MSP для ОС.

Основная теория

CortexM0 имеет 16 регистров общего назначения:

  1. Младшие регистры (r0-r7)

  2. Старшие регистры (r8-r12)

  3. Регистр указателя стека SP (r13) для текущего контекста (r8-r12). В зависимости от контекста может быть либо MSP (указателем основного стека) либо PSP (указателем стека процесса).

  4. Регистр связи LR (r14)

  5. Регистр счетчика команд PC(r15)