Лабораторная работы №1 и 2 по дисциплине: Микропроцессорные системы (часть 2) (ДВ 1.2) 2022 г.
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой 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
Вывод информации через последовательный порт
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 г.
Alexey312451
: 16 марта 2024
Билет №8 (18)
1.Подключение клавиатуры к микроконтроллеру.
2.Функции на языке С.
Оценена Ваша работа по предмету: Микропроцессорные системы (часть 2) (ДВ 1.2)
Вид работы: Экзамен
Оценка: Отлично
Дата оценки: 20.05.2022
300 руб.
«Микропроцессорные системы (часть 2)». Билет №9
boeobq
: 2 декабря 2021
Задания билета.
Задание 1
Система программирования Keil.
Задание 2
Архитектура микроконтроллера ADuC842.
Отчет содержит развернутые ответы на поставленные задания. Ответы сопровождаются поясняющими схемами и таблицами.
Всего в отчете представлено 30 рисунков и таблиц.
Объем отчета составляет 33 страницы формата А4.
Некоторые выдержки из отчета представлены на мини скриншотах.
220 руб.
Микропроцессорные системы (часть 2). Билет №4
IT-STUDHELP
: 8 июля 2020
Билет №4
1. Последовательный порт MCS-51.
2. Оператор выбора на языке С.
65 руб.
Микропроцессорные системы (часть 2). Вариант 3.
MayaMy
: 16 сентября 2019
Курсовая работа.
Уважаемая , Борисов Александр Васильевич
600 руб.
Микропроцессорные системы (часть 2). Вариант №4
teacher-sib
: 15 марта 2019
04. Разработать микропроцессорную систему поддержания заданной температуры воздуха на основе датчика температуры DS18B20.
Содержание
Введение 4
1. Аналитический обзор микропроцессоров 4
2. Разработка структурной схемы системы 11
3. Разработка принципиальной электрической схемы системы 12
4. Разработка программного обеспечения системы 14
Заключение 21
Список литературы 22
ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ ПО КУРСУ
«МИКРОПРОЦЕССОРНЫЕ СИСТЕМЫ»
Разработать микропроцессорное устройство на основе ми
500 руб.
Микропроцессорные системы (часть 1) (ДВ 1.2). Билет №1. Зачет.
MayaMy
: 23 февраля 2019
Уважаемый студент, дистанционного обучения,
Оценена Ваша работа по предмету: Микропроцессорные системы (часть 1) (ДВ 1.2)
Вид работы: Зачет
Оценка:Зачет
Дата оценки: 17.01.2019
Рецензия:Уважаемая
Борисов Александр Васильевич
300 руб.
Лабораторная работа №2 по дисциплине «Микропроцессорные системы (часть 2-я)»
boeobq
: 2 декабря 2021
Тема работы: «Разработка цифрового измерителя температуры».
Задание к работе
1.1. Разработать программу, измеряющую температуру в лаборатории с удаленным доступом и выводящую значение температуры на цифровой индикатор.
1.2. С помощью среды программирования Keil создать двухмодульный прект, состоящий из модулей main.c и dallas.c.
1.3. Определить реальную температуру в лаборатории.
1.4. Скопировать изображение стенды с результатами измерений в отчет.
Отчет содержит описание цифрового датчика
100 руб.
Экзамен по дисциплине: Микропроцессорные системы (часть 2). Билет №1
IT-STUDHELP
: 3 марта 2020
Билет №1
1. Классификация микропроцессоров.
2. Оператор присваивания на языке С.
200 руб.
Другие работы
Курсовой проект, тема: «Общественное здание. Физкультурно-оздоровительный комплекс»
rew11108
: 29 декабря 2009
Курсовой проект
тема: «Общественное здание.
Физкультурно-оздоровительный комплекс»
Содержание.
1. Введение.
2. Архитектурно-строительный раздел.
2.1 Общая характеристика здания
2.2 Объемно-планировочное решение
2.2.1 Объемно- планировочные показатели
2.3 Технико-экономические показатели
3. Решение генерального плана застройки
4. Расчетно-конструкторский раздел
4.1 Фундаменты
4.2 Стены
4.3 Внутренние стены и перегородки
4.4 Перекрытия
4.5 Кр
100 руб.
Культиватор КЧН-5,4 (чертеж общего вида)
kreuzberg
: 8 июня 2018
Чизельные культиваторы КЧ-5,1 и КЧН-5,4 комплектуются основными рыхлительными рабочими органами и приставками для дополнительного рыхления и выравнивания верхнего слоя почвы.
Рыхлительные рабочие органы комплектуются четырьмя типами сменных лап: рыхлительными шириной 65 мм, стрельчатыми шириной 150 и 270 мм и с шириной носка 10 мм для разделки пласта трав.
Рыхлительные рабочие органы на раме КЧ-5,1 располагаются тремя рядами с междуследиями в основном равными 235-250 мм и расстоянием в каж
399 руб.
Проблемы классификации документов
Slolka
: 14 октября 2013
Документоведение в различных источниках рассматривается как научная дисциплина, изучающая закономерность документоведение и разрабатывающая теоретические и методические вопросы документационного обеспечения общества.
Документоведение в ряде случаев вызывает теорией делопроизводства. Понятие «документ» теснейшим образом связан с информацией, поскольку документ является ее основным носителем.
Крупный советский документовед К.Г.Митяев в своих работах отмечал, что в широком смысле понятия «докумен
10 руб.
Контрольная работа по дисциплине: Персональный менеджмент. Без вариантов
IT-STUDHELP
: 7 января 2021
Задание 1
Цель работы – отразить результаты работы по самоанализу своей деятельности, целеполаганию и формированию плана профессиональной карьеры.
Примерная структура работы включает:
1. Мои профессиональные цели.
2. Ситуация на рынке труда. Обзор требований работодателей к соискателям. Самоанализ.
Задание 2 (УК-6.2)
ЗАДАНИЕ (тип эссе)
Руководствуясь личностным подходом к персональному менеджменту выполните SWOT-анализ личных и профессиональных качеств себя как потенциального сотрудника с
250 руб.