Лабораторная работы №1 и 2 по дисциплине: Микропроцессорные системы (часть 2) (ДВ 1.2) 2022 г.

Цена:
300 руб.

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon Lab1.hex
material.view.file_icon Отчет.docx
material.view.file_icon
material.view.file_icon Lab2.hex
material.view.file_icon Отчет.docx
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word

Описание

Лабораторная работа №1

Вывод информации через последовательный порт
1. ЦЕЛЬ РАБОТЫ.

1.1. Изучить особенности работы последовательных портов микроконтроллера.

2. ПРЕДВАРИТЕЛЬНАЯ ПОДГОТОВКА К РАБОТЕ

2.1. По конспекту лекций и рекомендуемой литературе изучить схему последовательного порта микроконтроллеров.

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

2.3. Изучить особенности использования последовательного порта микроконтроллера.

2.4. Составить программу, выводящую надпись на экран компьютера.

3. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО РАБОТЕ С ЛАБОРАТОРНЫМ СТЕНДОМ ЛЭСО1.

Для связи микроконтроллера и универсального компьютера чаще всего используется последовательный порт. Это связано с двумя причинами. Первая – это минимальное количество проводов, требующееся для связи между этими устройствами. Вторая – это высокая защищённость последовательного порта от повреждений при подключении различных устройств.

Однако при работе с последовательным портом микроконтроллера возникает ряд трудностей. Основная трудность заключается в том, что последовательный порт микроконтроллера использует логические TTL уровни (Уровнем логического нуля считаются напряжение ниже 0.4В. Уровнем логической единицы считается напряжение больше 2,4В). Последовательный порт компьютера при передаче логического нуля формирует напряжение +10В, а при передаче логической единицы формирует напряжение –10В.

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

3.1. Настройка последовательного порта микроконтроллера.

Через универсальный последовательный порт микроконтроллера осуществляются прием и передача информации, представленной в последовательном коде (младшими битами вперед). Наличие буферного регистра приемника позволяет совмещать операцию чтения ранее принятого байта с приемом очередного. Но если к моменту окончания приема байта предыдущий не был считан из регистра SBUF, то он будет потерян. Работой последовательного порта управляют три регистра:

· Регистр управления/статуса приемопередатчика SCON

· Бит SMOD регистра управления мощностью PCON

· Буферный регистр приемопередатчика SBUF

Последовательный порт может работать в четырех различных режимах, но для связи микроконтроллера с компьютером подходит только режим 1. В этом режиме могут быть переданы через внешнюю ножку TXD или приняты через внешнюю ножку RXD 8 бит данных. При приеме, стоп-бит записывается в флаг RB8 регистра SCON. Скорость передачи последовательного порта в режиме 1 задаётся в AduC842 таймером Т3 или таймером Т1 или Т2.

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

Прием начинается с приходом старт-бита, если в бит REN регистра SCON записана логическая единица.

Управление режимом работы приемопередатчика осуществляется через регистр управления последовательного порта SCON. Этот регистр содержит не только управляющие биты, определяющие режим работы последовательного порта, но и девятый бит принимаемых или передаваемых данных (RB8 и ТВ8) и биты прерывания приемопередатчика (RI и ТI). Бит TI устанавливается аппаратно после завершения передачи одного байта. При передаче нескольких байтов этот бит должен сравниваться с 1, и только после сравнения можно передавать следующий байт. Перед передачей очередного байта бит TI следует программно обнулить. Формат и адреса бит регистра SCON приведён на следующем рисунке:



Функциональное назначение бит регистра управления/статуса приемопередатчика SCON приведены в следующей таблице:

Символ

Позиция

Имя и назначение

SM0

SCON.7

Биты управления режимом работы приемопередатчика. Устанавливаются/сбрасываются программно см. примечание 1

SM0

SM1

Режим работы приемопередатчика

0

0

Сдвигающий регистр расширения ввода/вывода

0

1

8 битовый приемопередатчик, изменяемая скорость передачи

1

0

9 битовый приемопередатчик. Фиксированная скорость передачи

1

1

9 битовый приемопередатчик, изменяемая скорость передачи


SM1

SCON.6

SM2

SCON.5

Бит управления режимом приемопередатчика. Устанавливается программно для запрета приема сообщения, в котором девятый бит имеет значение 0

REN

SCON.4

Бит разрешения приема. Устанавливается/сбрасывается программно для разрешения/запрета приема последовательных данных

TB8

SCON. 3

Передача бита 8. Устанавливается/сбрасывается программно для задания девятого передаваемого бита в режиме 9-битового передатчика

RB8

SCON.2

Прием бита 8. Устанавливается/сбрасывается аппаратно для фиксации девятого принимаемого бита в режиме 9-битового приемника

TI

SCON. 1

Флаг прерывания передатчика. Устанавливается аппаратно при окончании передачи байта. Сбрасывается программно после обслуживания прерывания

RI

SCON.0

Флаг прерывания приемника. Устанавливается аппаратно при приеме байта. Сбрасывается программно после обслуживания прерывания

Для того, чтобы включить первый режим работы последовательного порта, достаточно выполнить следующую команду присваивания:

SCON=0x40|//выбрать 8-ми битный режим работы последовательного порта

0x10|//разрешить работу приёмника

0x02;// разрешить запись первого байта в передатчик

Конечно, можно занести сразу готовую константу, но намного удобнее для понимания работы с регистром управления последовательного порта расписывать каждый бит отдельно. Пример использования готовой константы приведён ниже:

SCON=0x52;//8 bit UART, разрешение работы приёмника и передатчика

Для задания точных временных интервалов при работе последовательного интерфейса UART в ADuC842 имеется специальный таймер T3. Временные интервалы, формируемые таймером определяются двумя регистрами специальных функций: T3FD и T3CON. Формирование импульсов, синхронизирующих работу UART определяется следующей схемой:



Из схемы видно, что таймер T3 представляет собой несколько делителей частоты (делители на 2, на (1+T3FD/64), на 2 в степени DIV, на 16. В результате получается частота импульсов на линиях передатчика TX и приемника RX. Величина DIV определяется тремя младшими разрядами регистра T3CON.

Бит

Мнемоника

Описание

T3CON.7

T3BAUDEN

Бит включения Таймера 3. Если T3BAUDEN=1, то Таймер 3 генерирует опорную частоту UART, при этом биты PCON.7, T2CON.4 и T2CON.5 игнорируются. Если T3BAUDEN=0, то опорная частота UART генерируется согласно стандартной реализации в ядре 8052.

T3CON.6



Биты, зарезервированные для будущего использования.

T3CON.5



T3CON.4



T3CON.3



T3CON.2

T3CON.1

T3CON.0





Целочисленный делить DIV

DIV2 DIV1 DIV0 DIV

0 0 0 0

0 0 1 1

0 1 0 2

0 1 1 3

1 0 0 4

1 0 1 5

1 1 0 6

1 1 1 7

Таким образом, скорость передачи последовательного порта можно определить по следующей формуле:



Где ActualBaundRate – скорость передачи данных

fosc – частота ядра

При включении питания микроконтроллера fosc =2.097152 МГц.

Если задать T3FD=0x2D16 = 4510 , а DIV = 3, то

Скорость передачи будет равна

ActualBaundRate (2•2.097152 )/(4•(45+64)) = 0.0096199 МГц ,

т.е. примерно 9600 бит в секунду.

3.2. Описание примера программ работы с последовательным портом

sfr SCON =0x98; //объявление переменной SCON как регистра с адресом 0х98

sbit TI=0x99; //объявление переменной TI как бита регистра с адресом 0х99

sfr SBUF=0x99; //объявление переменной SBUF как регистра с адресом 0х99

sfr T3FD=0x9D; //объявление переменной T3FD как регистра с адресом 0х9D

sfr T3CON=0x9E; //объявление переменной T3CON как регистра с адресом 0х9E

main()

{

SCON=0x52; //8 bit UART, разрешение работы приёмника и передатчика

T3FD=0x2D;

T3CON=0x83; //DIV=3, таймер T3 включен

TI=0; //устанавливаем флаг окончания передачи байта в «0»

SBUF=’P’; //передача байта (символ Р)

while(!TI); //ожидание завершения передачи байта

TI=0;

SBUF=’R’;

while(!TI);

TI=0;

SBUF=’I’;

while(!TI);

TI=0;

SBUF=’V’;

while(!TI);

TI=0;

SBUF=’E’;

while(!TI);

TI=0;

SBUF=’T’;

while(!TI);

while(1); //бесконечный цикл

}

В результате через последовательный интерфейс будет передано слово PRIVET.

4. ЗАДАНИЕ К РАБОТЕ В ЛАБОРАТОРИИ.

4.1. Написать программу, выводящую Вашу фамилию, записанную латинскими буквами, через последовательный порт.

4.2. Настроить проект следующим образом: выбрать микроконтроллер AduC812, не забудьте установить галочку напротив Create HEX file (иначе не будет создан hex файл, даже если нет ошибок)

4.3. Скопировать экран терминала с результатами передачи в отчет.

5. МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ВЫПОЛНЕНИЮ РАБОТЫ

После прошивки микроконтроллера на экране консоли появится передаваемый текст. Экран с текстом следует скопировать в отчет, как это показано на следующем рисунке.



Консоль для обмена данными с микроконтроллером через последовательный интерфейс.

6. СОДЕРЖАНИЕ ОТЧЕТА

6.1. Цель работы.

6.2. Текст программы.

6.3. Текст hex файла

6.4. Копия экрана с результатами вывода информации через последовательный интерфейс.

6.5. Выводы по выполненной лабораторной работе.



Лабораторная работа №2

Разработка цифрового измерителя температуры
В качестве цифрового датчика температуры в схеме стенда используется цифровой датчик DS18B20 фирмы Dallas Semiconductor (D1), который с помощью однопроводного интерфейса подключен к разряду 3 порта P3. Для работы с температурным датчиком можно воспользоваться следующими готовыми файлами:

ADuC842.h – файл в котором описаны все регистры специальных функций ADuC842

dallas.c – модуль, для измерения температуры (на языке С)

dallas.h заголовочный файл с описанием функций модуля dallas.c

Перед созданием проекта нужно предварительно создать папку (например TEMP) и поместить в нее файлы ADuC842.h, dallas.c, dallas.h.

Далее с помощью среды Keil в этой папке создать двухмодульный проект с файлами main.c и dallas.c. Предварительно в файл main.c поместить свою программу. В модуле dallas.c описана функция GetTemp(), при обращении к которой происходит измерение температуры и присваивание ее значения этой функции. Температура измеряется в виде двухразрядного, положительного десятичного числа. Таким образом, для измерения температуры можно записать следующий оператор:

T=GetTemp();

Переменной Т будет присвоено значение измеренной температуры.

1. ЗАДАНИЕ К РАБОТЕ.

1.1. Разработать программу, измеряющую температуру в лаборатории с удаленным доступом и выводящую значение температуры на цифровой индикатор.

1.2. С помощью среды программирования Keil создать двухмодульный прект, состоящий из модулей main.c и dallas.c.

1.3. Определить реальную температуру в лаборатории.

1.4. Скопировать изображение стенды с результатами измерений в отчет.

2. МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ВЫПОЛНЕНИЮ РАБОТЫ.

Одним из вариантов программы измерения температуры может быть следующая программа (модуль main.c):

#include "ADuC842.h"// подключение заголовочного файла ADuC842.h

#include "dallas.h" // подключение заголовочного файла dallas.h

///////////////////////////////////////////////////////////////////////////////////////////////


// ввод массива шестнадцатиричных кодов для 7- сегментного индикатора:

//отображаются {0, 1, 2... E, F}

unsigned char digitP0[16] = {0xB7, 0x14, 0x73, 0x76,
0xD4, 0xE6, 0xE7, 0x34,
0xF7, 0xF6, 0xF5, 0xC7,
0xA3, 0x57, 0xE3, 0xE1};



unsigned char digitP2[16] = {0xD7, 0x11, 0xE3, 0x73,
0x35, 0x76, 0xF6, 0x13,
0xF7, 0x77, 0xB7, 0xF4,
0xC6, 0xF1, 0xE6, 0xA6};



void main() {

char t;

P0 = P2 = 0;

while (1) {

t = GetTemp();

P0 = digitP0[t/10];

P2 = digitP2[t%10];
}
}



В выражении t%10 вычисляется остаток от деления на 10, то есть если

t=25, то t%10 будет равно 5.

Для работы этой программы в проект следует включить модуль dallas.c с функцией GetTemp(). В папку с проектом следует поместить заголовочные файлы ADuC842.h и dallas.h.

3. СОДЕРЖАНИЕ ОТЧЕТА.

3.1. Исходный текст программы (Main.c).

3.2. Файл листинга.

3.3. Копия изображения стенда с измеренной температурой (Указать в какое время измерялась температура в лаборатории). У преподавателя имеется график изменения температуры во времени.


Оценена Ваша работы по предмету: Микропроцессорные системы (часть 2) (ДВ 1.2)
Вид работы: Лабораторные
Оценка: Отлично
Дата оценки: 02.07.2022
Экзамен по дисциплине Вариант 8(18): Микропроцессорные системы (часть 2) (ДВ 1.2) 2022 г.
Билет №8 (18) 1.Подключение клавиатуры к микроконтроллеру. 2.Функции на языке С. Оценена Ваша работа по предмету: Микропроцессорные системы (часть 2) (ДВ 1.2) Вид работы: Экзамен Оценка: Отлично Дата оценки: 20.05.2022
User Alexey312451 : 16 марта 2024
300 руб.
«Микропроцессорные системы (часть 2)». Билет №9
Задания билета. Задание 1 Система программирования Keil. Задание 2 Архитектура микроконтроллера ADuC842. Отчет содержит развернутые ответы на поставленные задания. Ответы сопровождаются поясняющими схемами и таблицами. Всего в отчете представлено 30 рисунков и таблиц. Объем отчета составляет 33 страницы формата А4. Некоторые выдержки из отчета представлены на мини скриншотах.
User boeobq : 2 декабря 2021
220 руб.
«Микропроцессорные системы (часть 2)». Билет №9
65 руб.
600 руб.
Микропроцессорные системы (часть 2). Вариант 3.
Микропроцессорные системы (часть 2). Вариант №4
04. Разработать микропроцессорную систему поддержания заданной температуры воздуха на основе датчика температуры DS18B20. Содержание Введение 4 1. Аналитический обзор микропроцессоров 4 2. Разработка структурной схемы системы 11 3. Разработка принципиальной электрической схемы системы 12 4. Разработка программного обеспечения системы 14 Заключение 21 Список литературы 22 ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ ПО КУРСУ «МИКРОПРОЦЕССОРНЫЕ СИСТЕМЫ» Разработать микропроцессорное устройство на основе ми
User teacher-sib : 15 марта 2019
500 руб.
Микропроцессорные системы (часть 2). Вариант №4 promo
Микропроцессорные системы (часть 1) (ДВ 1.2). Билет №1. Зачет.
Уважаемый студент, дистанционного обучения, Оценена Ваша работа по предмету: Микропроцессорные системы (часть 1) (ДВ 1.2) Вид работы: Зачет Оценка:Зачет Дата оценки: 17.01.2019 Рецензия:Уважаемая Борисов Александр Васильевич
User MayaMy : 23 февраля 2019
300 руб.
Микропроцессорные системы (часть 1) (ДВ 1.2). Билет №1. Зачет.
Курсовая работа. Тема№8: разработать калькулятор, выполняющий операции сложения, вычитания, умножения и деления. По дисциплине: Микропроцессорные системы (часть 2) (ДВ 1.2) 2022 г.
ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ ПО КУРСУ «МИКРОПРОЦЕССОРНЫЕ СИСТЕМЫ» Разработать микропроцессорное устройство на основе микроконтроллера AduC842. Содержание работы: 1.Ведение 2.Аналитический обзор микропроцессоров 3.Разработка структурной схемы устройства 4.Разработка принципиальной электрической схемы устройства с описанием назначения каждого элемента. 5.Разработка программного обеспечения устройства. (Схема алгоритма, программа на языке С. При написании программы обязательно использовать комм
User Alexey312451 : 16 марта 2024
300 руб.
Контрольная работа по дисциплине «Физика (часть 2-я)» Вариант №3 (2022 г.)
Задача № 1 Вертикально-расположенная мыльная пленка образует клин, угол которого составляет 25 секунд (25"). В отражённом свете наблюдаются полосы равной толщины. Длина волны монохроматического света равна 650 нм, что соответствует красному цвету. Показатель преломления пленки n = 1,33. Сколько красных полос наблюдается на участке длиной 1 см. Свет на поверхность клина падает нормально. Изобразите ход лучей в клине, рисунком поясните, какие лучи интерферируют в этом случае Задача № 2 Расстояние
User LiVolk : 6 марта 2022
150 руб.
Контрольная работа по дисциплине «Физика (часть 2-я)» Вариант №3 (2022 г.)
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год Московская международная академия Институт дистанционного образования Тест оценка ОТЛИЧНО 2024 год Ответы на 20 вопросов Результат – 100 баллов С вопросами вы можете ознакомиться до покупки ВОПРОСЫ: 1. We have … to an agreement 2. Our senses are … a great role in non-verbal communication 3. Saving time at business communication leads to … results in work 4. Conducting negotiations with foreigners we shoul
User mosintacd : 28 июня 2024
150 руб.
promo
Задание №2. Методы управления образовательными учреждениями
Практическое задание 2 Задание 1. Опишите по одному примеру использования каждого из методов управления в Вашей профессиональной деятельности. Задание 2. Приняв на работу нового сотрудника, Вы надеялись на более эффективную работу, но в результате разочарованы, так как он не соответствует одному из важнейших качеств менеджера - самодисциплине. Он не обязателен, не собран, не умеет отказывать и т.д.. Но, тем не менее, он отличный профессионал в своей деятельности. Какими методами управления Вы во
User studypro : 13 октября 2016
200 руб.
Особенности бюджетного финансирования
Содержание: Введение Теоретические основы бюджетного финансирования Понятие и сущность бюджетного финансирования Характеристика основных форм бюджетного финансирования Анализ бюджетного финансирования образования Понятие и источники бюджетного финансирования образования Проблемы бюджетного финансирования образования Основные направления совершенствования бюджетного финансирования образования Заключение Список использованный литературы Цель курсовой работы – исследовать особенности бюджетного фин
User Aronitue9 : 24 августа 2012
20 руб.
Программирование (часть 1-я). Зачёт. Билет №2
ЗАЧЕТ по дисциплине “Программирование (часть 1)” Билет 2 Определить значение переменной y после работы следующего фрагмента программы: a = 3; b = 2 * a – 10; x = 0; y = 2 * b + a; if ( b > y ) or ( 2 * b < y + a ) ) then begin x = b – y; y = x + 4 end; if ( a + b < 0 ) and ( y + x > 2 ) ) then begin x = x + y; y = x – 2 end;
User sibsutisru : 3 сентября 2021
200 руб.
Программирование (часть 1-я). Зачёт. Билет №2
up Наверх