Файл: Лабораторная работа 2 По дисциплине Основы электротехники в робототехнике Выполнила Марченко А. В. Группа мит23.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.11.2023
Просмотров: 37
Скачиваний: 4
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Сибирский государственный университет телекоммуникаций и информатики»
(СибГУТИ)
Лабораторная работа №2
По дисциплине: Основы электротехники в робототехнике
Выполнила: Марченко А.В.
Группа: МИТ-23
Вариант: 3
Проверил: Шыырап
Юрий Монгушевич
Барнаул, 2023 г.
Тема: Подключение 7-сегментногоиндикатора напрямую через I2C. Подключение ЖК дисплея
Цель: Научиться подключать индикаторы разных типов и программировать вывод информации на дисплей индикатора.
Задание
1 Для каждого типа индикатора осуществить подключение к плате.
2 Запрограммировать вывод информации на дисплей.
3 Оформить отчет.
-
Подключение семисегментного индикатора
При выполнении ознакомлении с лабораторной установкой в методических указаниях и сравнении моделей в тинкед, я посчитала невозможным точно воспроизвести модель из-за разных размеров семисегментного индикатора. Не много изменив схему, мы получаем:
Загружаем код, представленный в методических указаниях:
Запускаем симуляцию и получаем:
https://disk.yandex.ru/i/hraqXjCXg7iNTg
Считаю, что установка работает некорректно, заменим код и запустим симуляцию:
https://disk.yandex.ru/i/9-yPXdda0aDVQg
-
Подключение LED индикатора с TM1637
Собираем схему, представленную в методических указаниях:
Берем код:
#include "TM1637.h" // Подключаем библиотеку для работы с модулем
int8_t DispMSG[] = {1, 2, 3, 4}; // Настройка символов для последующего вывода на дислей
//Определяем пины для подключения к плате Arduino
#define CLK 3
#define DIO 2
//Создаём объект класса TM1637, в качестве параметров
//передаём номера пинов подключения
TM1637 tm1637(CLK, DIO);
void setup()
{
//Инициализация модуля
tm1637.init();
//Установка яркости горения сегментов
/*
BRIGHT_TYPICAL = 2 Средний
BRIGHT_DARKEST = 0 Тёмный
BRIGHTEST = 7 Яркий
*/
tm1637.set(BRIGHT_TYPICAL);
}
void loop()
{
//Задание на включение разделителя
tm1637.point(true);
//Выводим массив на дисплей
tm1637.display(DispMSG);
//Задержка
delay(1000);
//Задание на выключение разделителя
tm1637.point(false);
//Выводим массив на дисплей
tm1637.display(DispMSG);
//Задержка
delay(1000);
}
Компилируем его и получаем ошибку (т.к. работа выполняется на симуляторе tinkercad). Компилятор не находит библиотеку. При дополнительном изучении проблемы, оказалось, что добавить свою библиотеку в tinkercad не представляется возможным. Единственным вариантом решения проблемы становится копирования кода из библиотеки. Но при реализации данного варианта, возникает еще больше ошибок, которые при удалении или исправлении вызывают другие ошибки.
-
Подключение LCD 1602 (HD44780) к Arduino
Собираем схему:
Вставляем имеющийся код:
Запускаем симуляцию и получаем:
https://disk.yandex.ru/i/VXEHHZS5Dwh6mg
Создание собственных символов.
Вставляем имеющийся код:
Запускаем симуляцию и получаем:
https://disk.yandex.ru/i/dhGxMpG_GG-U9A
-
Подключение LCD1602 по I2C к Ардуино
Собираем схему:
Вставляем код, имеющийся в методических указаниях, установка не работает. Не много изменяем код:
Запускаем компиляцию и получаем:
https://disk.yandex.ru/i/Finy1BsqhA77fA