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

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

Микроконтролллер 8051 содержит четыре 8-байтовых регистровых банка, которые могут использоваться для быстрого доступа к данным. В рассматриваемом примере ОСРВ предполагается, что банк 0 используется для хранения специфичной информации для данной задачи. Слово состояния PSW, содержимое аккумулятора и регистров В, DPTR и SP являются такой информацией. Содержимое этих регистров необходимо сохранить в «информационном блоке задачи».

Следуя этой схеме, карта распределения памяти для 8051 будет иметь вид, показанный на рис Ю.5. Для информационного блока задачи используется 16 байт. В состав этого блока входят восемь регистров банка, шесть байт содержимого указанных выше контекстных регистров и два байта для хранения адреса возврата. Регистры банка будут содержать информацию о запросе ОСРВ, регистр DPTR служит указателем на блок сообщений. Данная схема-позволяет хранить информацию, необходимую для выполнения четырех задач, в диапазоне адресов с 40h no 7Fh.

Go to Top