Script - Страница 56

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

Процесс переключения на другую задачу состоит в загрузке указателя стека, относящегося к новой задаче, и последующего извлечения из стека содержимого различных регистров прежде, чем реализуется возврат из подпрограммы.

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

Одной из наиболее важных особенностей мониторов является его способность модифицировать собственную память программ. Для этого хорошо подходит микроконтроллер DS5000, который использует общую память SRAM для хранения программ и данных. Классический 8051 можно использовать, если подключить к нему внешнюю память и объединить сигналы PSEN и RD при помощи логического элемента И, а полученный сигнал подать на вход разрешения выборки памяти_ОЕ.

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

Go to Top