Файл: Лабораторная работа 2 По дисциплине Основы электротехники в робототехнике Выполнила Марченко А. В. Группа мит23.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.11.2023
Просмотров: 139
Скачиваний: 10
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Федеральное государственное бюджетное образовательное учреждение высшего образования«Сибирский государственный университет телекоммуникаций и информатики»(СибГУТИ)Лабораторная работа №2По дисциплине: Основы электротехники в робототехникеВыполнила: Марченко А.В.Группа: МИТ-23Вариант: 3Проверил: Шыырап Юрий МонгушевичБарнаул, 2023 г.Тема: Подключение 7-сегментногоиндикатора напрямую через I2C. Подключение ЖК дисплеяЦель: Научиться подключать индикаторы разных типов и программировать вывод информации на дисплей индикатора.Задание1 Для каждого типа индикатора осуществить подключение к плате. 2 Запрограммировать вывод информации на дисплей.3 Оформить отчет.
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 не представляется возможным. Единственным вариантом решения проблемы становится копирования кода из библиотеки. Но при реализации данного варианта, возникает еще больше ошибок, которые при удалении или исправлении вызывают другие ошибки.
Запускаем симуляцию и получаем:https://disk.yandex.ru/i/dhGxMpG_GG-U9A
-
Подключение семисегментного индикатора
-
Подключение LED индикатора с TM1637
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/dhGxMpG_GG-U9A
-
Подключение LCD1602 по I2C к Ардуино