МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА 8051 - Script

Если 128 байт памяти данных недостаточно для работы приложения, то можно выбрать микроконтроллер, имеющий 256 байт памяти, или подключить к 8051 внешнюю память. При использовании внешней памяти стек должен находится в пределах первых 256 байт, и данные из него должны сохраняться в информационном блоке задачи. Операция копирования данных в информационный блок задачи или из него увеличивает время, требуемое для переключения задачи.

Для вызова задачи соответствующий запрос и значения параметров загружаются в регистры, а затем производится обращение к подпрограмме с помощью команды «call». На самом деле это не является обычным вызовом подпрограммы. Данная процедура передает управление ОСРВ и сохраняется адрес возврата к исходной задаче. С точки зрения текущей задачи ОСРВ выглядит как подпрограмма. Однако при обращении к ней сохраняется необходимая информация о текущей задаче и производится переключение на другую задачу, для которой предоставляется имеющийся информационный блок.

Когда задача вызывает подпрограмму, вся контекстная информация сохраняется в стеке задачи, а затем содержимое указателя стека заносится в

стек или в определенное место информационного блока задачи. В дальнейшем значение указателя стека используется ОСРВ в качестве смещения для доступа к информации о задаче, позволяя выбирать содержимое регистров, где содержится вызов задачи и необходимые параметры.

Go to Top