Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Лабораторная работа №3 «Исследование работы таймера».
Цель лабораторной работы заключается в разработке программы, которая управляет схемой, показанной на рис. 5 по следующему алгоритму. Светодиод VD1 мигает с частотой 2 - 4 Гц. Светодиод VD2 загорается при нажатом состоянии кнопки SB1 и гаснет при ее отпускании. Рис. 5 Схема управления светодиодами
При разработке блок-схемы алгоритма следует учесть, что здесь решаются две задачи. Первая – опрос кнопки SВ1. Эту задачу будем называть фоновой. Вторая задача - управление светодиодом VD1. Ее будем называть оперативной. Для решения второй задачи используем таймер для формирования интервалов зажженного или потушенного состояния светодиода. Смену состояний светодиода VD1 будем осуществлять при формировании прерывания, возникающего при переполнении таймера. Блок-схема алгоритма программы представлена на рис. 6.
Рис. 6. Блок - схема алгоритма программы Ассемблерный текст программы, соответствующей блок-схеме алгоритма (рис. 6) представлен ниже: org 0 ajmp M1 org 0Bh cpl P1.0 reti org 020h M1: mov IE,#10000010B mov TMOD,#00000001B mov TCON,#00010000B mov P1,#0 mov P0,#1 M2: mov C,P0.0 cpl C mov P1.1,C ajmp M2
end
Комментарии к программе. 1. Команда пересылки числа в регистр управления прерываниями mov IE,#10000010B обеспечивает глобальное разрешение прерываний и дополнительно разрешает внешнее прерывание от таймера ТО. 2. Вектор прерывания от таймера ТО располагается по адресу 0Вh..
Лабораторная работа №4 «Изучение способа преобразования двоично-десятичного кода в семисегментный код».
Цель лабораторной работы заключается в разработке программы, которая иллюстрирует способ преобразования двоично-десятичного кода в код управления семисегментным индикатором, который подключен к порту Р1 как показано на рис. 7. Рис. 7 Схема подключения семисегментного индикатора
Будем считать, что в выбранном регистре R3 последовательно формируются двоично-десятичные числа, соответствующие десятичному эквиваленту чисел от 0 до 9. Каждое число должно быть преобразовано в код семисегментного индикатора и передано в порт Р1, к которому подключен этот индикатор (рис. 1). При таком подключении соответствие двоично-десятичного кода семисегментному, вызывающему свечение определенных сегментов индикатора в виде десятичной цифры, показано в табл. 1.
Блок - схема алгоритма программы представлена на рис. 8. Таблица 1
Рис. 8. Блок - схема алгоритма программы Ассемблерный текст программы, соответствующей блок-схеме алгоритма (рис. 8) представлен ниже:
org 00h ajmp M0 org 20h M0: mov R3,#00h M00: сlr A clr C mov A,#09h subb A,R3 jc M0 mov A,R3 anl A,#%00001111 mov DPTR,#TABL movc A,@A+DPTR mov P1,A lcall DEL inc R3 ljmp M00 DEL: mov R1,#255 M1: mov R2,#255 M2: djnz R2,M2 djnz R1,M1 ret TABL: db 3Fh db 06h db 5Bh db 4Fh db 66h db 6Dh db 7Dh db 07h db 7Fh db 6Fh end
Комментарии к программе. 1. С помощью директивы ассемблера DB обеспечивается занесение в память программ микроконтроллера константы или группы констант, формат которых равен байту. Эти константы располагаются в области ПЗУ начиная с адреса ТABL и представляют собой десятичные числа от 0 до 9, выраженные в семисегментном коде и показанные в табл. 1. 2. Команда movc A,@A+DPTR позволяет загрузить в аккумулятор байт данных из памяти программ. Команда выполняет следующие действия: складывает содержимое аккумулятора с регистром DPTR, определяет ячейку памяти с адресом, равным полученной сумме, извлекает из нее константу и помещает ее в аккумулятор.
Требования к выполнению и оформлению лабораторных работ При выполнении лабораторных работ необходимо поддерживаться следующей последовательности действий: 1. Ознакомление с целью и содержанием лабораторной работы. 2. Изучение блок-схемы алгоритма. 3. Набор ассемблерного текста программы, с применением встроенного редактора системы проектирования UMPS. 4. Компиляция программы с помощью ассемблера UMPSа. 5. Исправление ошибок и повторная компиляция программы. 6. Составление графического аналога принципиальной схемы лабораторной работы и подключение выводов внешних элементов. 7. Демонстрация работы схемы с использованием графической среды UMPSа. 8. Составление отчета, который должен содержать следующие компоненты:
· принципиальную схему; · блок-схему алгоритма; · ассемблерный текст программы; · листинг программы; · HEX-файл программы;
|
|||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-12-27; просмотров: 255; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.141.202 (0.009 с.) |