Назад в раздел
Изучение основных команд процессора I8051
Изучение основных команд процессора I8051 и функциями системы
моделирования
Цель - ознакомление с системой команд однокристального
микроконтроллера
семейства i8051 и получение навыков работы в системе отладки.
Система команд микропроцессора и ниболее употребительные директивы
асемблера представлены в разделах помощи системы отладки
Для первоначального ознакомления учащийся составляет программу в языке
асемблера ( см. варианты заданий) и выполняет основные этапы отладки :
редактирование, компиляцию, моделирование . Все этапы работы
выполняются посредством вызова соответствующих действий с помощью
экранного меню интегрированной системы отладки, а в процессе моделирования
- выбором соответствующих функций из меню встроенной
программы-моделировщика. Продробно поседовательность вызовов представлена
в разделе 3 описания настоящей работы - порядок выполнения работы.
Разрабатывая обучающимся тестовая программа содержит операции счтывания
входных данных с портов ввода-вывода, обработку считанной информации и
выдачу результатов на внешние контакты микроконтроллера.
Однако следует иметь в виду, что внешний контакт порта является
одновременно и входом и выходом. Фактически на этой линии реализуется
операция "монтажного ИЛИ", то есть если внешний источник, подключенный к
соответствующему контакту или выходной регистр выдают на линию уровень
логического нуля, то состояние линии нулевое, и при считывании с порта
прочтется логический ноль. Иными словами, если порт используется для
ввода данных в выходной ренгистр на время обмена ( а если ввод через этот
порт не предусмотрен, то постоянно) должен быть загружен код, содержащий
единицу во всех разрядах. Подобно внешние устройства, подключаемые к
портам, не должны выдавать активных единичных сигналов на линию
передачи данных во время приема.
- Для подготовки программы требуется знание символики команд
работы с битами и условных переходов - с ней можно ознакомится, используя
встроенную в систему отладки текстовую помощь.
-. Внутри вызванной подпрограммы рекомендуется установить новый
регистровый банк используя установку или обнуления битов выбора банка (
напр. SETB RS0, CLRB RS1).
Тогда головная программа и подпрограмма под одинаковыми логическими
именами регистров "подразумевают" различные физические ячейки памяти.
Такой подход освобождает программиста от проблем защиты регисровой памяти
при переходе с одной программы на другую.
. Рекомендуентся разместить основную часть программы с адреса не ниже
100Н. Этой основной части должно в асемблерной программе предшествовать
директива
Org
Так как порцессор после запуска устанавливает на счеткике
команд нулевой код, программа должна начинаться с перехода на начальный
адрес основной части программы ( н.п. LJMP 100H).
Асемблер допускает символическое задание меток для команд перехода.
|
|
|
|