5 / Задание лаб5 SerialPort
.docxПорядок выполнения работы:
1. Запустить программу симулятор.
2. Установить параметры UART на передней панели симулятора.:
- скорость (Baud) 2400 бит в секунду.
- режим 8-битный UART
- No Parity – нет бита чётности.
В окне Update Freq. записать скорость 1000
3. Написать программу приёма во внутренне ОЗУ с адреса 40Н текста из последовательного интерфейса «8-bit UART».
В программе установить в SCON режим 8-битный UART (режим 1). Разрешить приём битом REN.
Запрограммировать
таймер Т1 в режим автозагрузки, коэффициент
счёта таймера рассчитать в соответствии
с формулой :
F ПОРТА равно 2400. Пустить таймер Т1.
Бит SMOD расположен в регистре управления мощностью PCON, который не имеет битовой адресации. SMOD - старший бит. По сигналу RESET бит SMOD=0. Для установки его в единицу с целью удвоения числителя формулы нужно выполнить команду ORL PCON,#10000000b.
Текст, передаётся «8-bit UART» символами ASCII, автоматически завершается кодом #0DH. Конец приема текста во внутреннее ОЗУ определять по поступлению кода #0DH (цикл записи с окончанием по условию, косвенно-регистровая адресация при записи в ОЗУ. Перед началом цикла R0=30H, в цикле INC R0).
4. Загрузить программу в симулятор. Ассемблировать. Запустить (Run).
5. Набрать в окне Tx текст: пять-десять цифр. Нажать кнопку «Тх Send». Символы последовательно исчезнут из окна.
6. Проконтролировать полученные ASCII символы цифр в ячейках ОЗУ, начиная с 40Н. Убедиться в верном приёме цифр.
7. Дописать ниже программы приема программу вывода текста из внутреннего ОЗУ с адреса 40Н через последовательный порт. Признаком конца текста в ОЗУ может быть код #00H или код #0DH.
8. Ассемблировать и запустить программу.
9. Набрать в окне Tx текст: цифры, пробелы, латинские буквы в разных регистрах. Нажать кнопку «Тх Send». Наблюдать процесс приёма во внутреннее ОЗУ и вывод принятого текста в окно Rx. Принятый текст должен совпасть с переданным.
Указание: флаг готовности приёмника RI перед записью байта из SBUF в ОЗУ можно дожидаться командой опроса – ZAP: JNB RI,ZAP, или использовать для записи прерывание по адресу 0023Н. Аналогично можно поступить с флагом передатчика TI, дожидаясь его готовности после вывода очередного байта в SBUF.
10. В отчёте привести текст программы с комментариями.
