Файл: Изучение принципов отладки программ с использованием резидентных средств микроконтроллера.docx
Добавлен: 01.12.2023
Просмотров: 57
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНОБРНАУКИ РОССИИСанкт-Петербургский государственныйэлектротехнический университет«ЛЭТИ» им. В.И. Ульянова (Ленина)Кафедра РЭСотчетпо лабораторной работе № 3по дисциплине «Цифровые и микропроцессорные устройства»Тема: Изучение принципов отладки программ с использованием резидентных средств микроконтроллера
Санкт-Петербург2023Цель работы.Написать и запустить программы в соответствии с требованием пунктов 3.2-3.7Экспериментальные результаты и их обработка.
NEKO: CLR A- сброс ACCMOVC A,@A+DPTR- пересылка в АСС байта адрес которой равен ACC+DPTR ;MOV P1,A – запись в P1 АССINC DPL- инкремент DPL INC B- инкремент B DJNZ R7, NEKO декремент R7 и переход на метку NEKO если не 0 иначе следующая команда;RET- обеспечение выхода в монитор по окончании выполнения программы;END- директива завершения текста программы.
CALL ARC – вызов подпрограммы в метке ARCMOV C,P3.4 - пересылки в бит переноса бита P3.4CALL ARC – вызов подпрограммы в метке ARCMOV C,P3.5 - пересылки в бит переноса бита P3.5CALL ARC – вызов подпрограммы в метке ARCJMP ZXC - переход в метку ZXCARC: JC NEKO - в метке ARC осуществляется вызов подпрограммы, перехода на метку NEKO при 0 флага переноса переход на следующую строку;GULA: CLR A- сброс ACCMOVC A,@A+DPTR- пересылка в АСС байта адрес которой равен ACC+DPTR ;MOV P1,A – запись в P1 АССMOV B,#4 – запись в B 4DIV AB – деление ACC на B частное в ACC остаток в BADD A,#96 – сложение ACC с 96INC DPL- инкремент DPLDJNZ R7,GULA декремент R7 и переход на метку GULA если не 0 иначе следующая команда ;RET- обеспечение выхода в монитор по окончании выполнения программы;NEKO: CLR A- сброс ACCMOVC A,@A+DPTR- пересылка в АСС байта адрес которой равен ACC+DPTR ;MOV P1,A – запись в P1 АССDIV AB – деление ACC на B частное в ACC остаток в BADD A,#96 – сложение ACC с 96INC DPL- инкремент DPLDJNZ R7,GULA INC DPL- инкремент DPL DJNZ R7, NEKO декремент R7 и переход на метку NEKO если не 0 иначе следующая команда;RET- обеспечение выхода в монитор по окончании выполнения программы;END- директива завершения текста программы
| Студенты гр. | | |
| Преподаватель | | |
-
Отладить и запустить циклическую программу анализа состояния входов порта Р3. Произвести в программе инкремент ячейки 30Н при наличии «0» на входе Р3.3 и декремент при наличии «0» на входе Р3.2. Вывести содержимое ячейки 30Н на экран в десятичном коде с помощью подпрограмм ACCDEC, CRLF и DSEC. Проверить работу программы, кратковременно подключая Р3.3 и Р3.2 к шине «Общий». Модифицировать программу, добавив вывод в Р3.2 инвертированного состояния входа Р3.3. Подключать к шине «Общий» только вход РЗ.3.
;
END- директива завершения текста программы.
-
Отладить и запустить циклическую программу вывода в порт Р1 «бегущей единицы». Направление сдвига задавать входом Р3.2. Управлять частотой сдвига входом Р3.5, обнаруживая перепад 1/0. Подключить к Р3.5 сигнал генератора макета. Наблюдать осциллограммы на выводах порта Р1 и выходе ЦАП1, меняя частоту генератора и сигнал на входе Р3.2.
-
Составить программу формирования на выходе ЦАП1 частотно-манипулированного сигнала с одинаковой длительностью посылок «0» и «1». Использовать массив TABSIN. Логический «0» передавать одним периодом синусоиды, логическую «1» – двумя. Модулирующую информацию вводить, последовательно опрашивая входы Р3.2 ... Р3.5. Соединить один или два входа с шиной «Общий». Наблюдать сигнал на выходе ЦАП1.;
NEKO: CLR A- сброс ACCMOVC A,@A+DPTR- пересылка в АСС байта адрес которой равен ACC+DPTR ;MOV P1,A – запись в P1 АССINC DPL- инкремент DPL INC B- инкремент B DJNZ R7, NEKO декремент R7 и переход на метку NEKO если не 0 иначе следующая команда;RET- обеспечение выхода в монитор по окончании выполнения программы;END- директива завершения текста программы.
-
Составить программу формирования фазоманипулированного сигнала на выходе ЦАП1. В качестве элементарной посылки сигнала использовать массив TABMOD. Модуляция – через входы Р3.2 ... Р3.5.
-
Составить программу формирования амплитудно-манипулированного сигнала с соотношением уровней амплитуд огибающей сигнала 1 : 2. В качестве элементарной посылки сигнала использовать массив TABMOD. Управление модуляцией – через входы Р3.2 ... Р3.5.
CALL ARC – вызов подпрограммы в метке ARCMOV C,P3.4 - пересылки в бит переноса бита P3.4CALL ARC – вызов подпрограммы в метке ARCMOV C,P3.5 - пересылки в бит переноса бита P3.5CALL ARC – вызов подпрограммы в метке ARCJMP ZXC - переход в метку ZXCARC: JC NEKO - в метке ARC осуществляется вызов подпрограммы, перехода на метку NEKO при 0 флага переноса переход на следующую строку;GULA: CLR A- сброс ACCMOVC A,@A+DPTR- пересылка в АСС байта адрес которой равен ACC+DPTR ;MOV P1,A – запись в P1 АССMOV B,#4 – запись в B 4DIV AB – деление ACC на B частное в ACC остаток в BADD A,#96 – сложение ACC с 96INC DPL- инкремент DPLDJNZ R7,GULA декремент R7 и переход на метку GULA если не 0 иначе следующая команда ;RET- обеспечение выхода в монитор по окончании выполнения программы;NEKO: CLR A- сброс ACCMOVC A,@A+DPTR- пересылка в АСС байта адрес которой равен ACC+DPTR ;MOV P1,A – запись в P1 АССDIV AB – деление ACC на B частное в ACC остаток в BADD A,#96 – сложение ACC с 96INC DPL- инкремент DPLDJNZ R7,GULA INC DPL- инкремент DPL DJNZ R7, NEKO декремент R7 и переход на метку NEKO если не 0 иначе следующая команда;RET- обеспечение выхода в монитор по окончании выполнения программы;END- директива завершения текста программы
-
Вызвать бесконечном цикле подпрограмму формирования сигнала с линейно-частотной модуляцией (CAL LFM). В ячейку 30Н занести коэффициент изменения формирования сигнала (3..9).