Первое задание (5.1. Katse LCD ekraani kasutamine)
Описание работы
Обычное применение экрана, на котором будет выводится какое-либо изображение на экран.
Применение в жизни
Может использоваться в следующих примерах:
- Мониторинг и управление: В производственной среде LCD-дисплеи помогают операторам следить за работой роботов, настраивать параметры и выполнять диагностику оборудования. Это повышает эффективность и безопасность работы.
- Умные помощники: LCD-дисплеи используются в умных домашних роботах, таких как роботы-пылесосы или роботы для охраны дома. Они отображают статус устройства, время работы, уровень заряда батареи и другие важные сведения для пользователей.
- Медицинские роботы: LCD-дисплеи на хирургических роботах и реабилитационных устройствах помогают врачам и пациентам видеть данные в реальном времени и контролировать процесс лечения.
Список компонентов
- Плата “Arduino UNO”
- Макет
- 1 потенциометр
- 16 проводов
- 1 резистор
- 1 LCD экран
*Код*
// lisame LiquidCrystal library
#include <LiquidCrystal.h>
// määrame, milliste digitaalpesadega ekraan ühendatud on
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// loome erisümbolid
byte smiley[8] ={0b00000,0b00000,0b01010,0b00000,0b00000,0b10001,0b01110,0b00000};
byte armsDown[8] ={0b00100,0b01010,0b00100,0b00100,0b01110,0b10101,0b00100,0b01010};
byte armsUp[8] ={0b00100,0b01010,0b00100,0b10101,0b01110,0b00100,0b00100,0b01010};
byte kass[8] ={0b00000,0b00000,0b00000,0b10000,0b10011,0b11111,0b01110,0b01010};
byte tydruk[8] ={0b00100,0b01010,0b00100,0b11111,0b00100,0b00100,0b01110,0b11111};
byte v2ikesyda[8] ={0b00000,0b00000,0b00000,0b11011,0b11111,0b11111,0b01110,0b00100};
void setup() {
// algväärtustatakse LDC ekraani read ja veerud
lcd.begin(16, 2);
// defineerime erisümbolid
lcd.createChar(1, smiley);
lcd.createChar(3, armsDown);
lcd.createChar(4, armsUp);
lcd.createChar(5, kass);
lcd.createChar(6, tydruk);
lcd.createChar(7, v2ikesyda);
}
void loop() {
// koht kuhu hakkame joonistama - 3. veerg, esimene rida
lcd.setCursor(2, 0);
// joonistame kassi
lcd.write(5);
// ja tüdruku
lcd.write(6);
//muudame kursori asukohta: 2. rida 14. veerg
lcd.setCursor(13, 1);
// joonistame poisi
lcd.write(3);
delay(400);
//muudame kursori asukohta: 1. rida 5. veerg
lcd.setCursor(4, 0);
//joonistame for tsükli abil väikese pausiga 10 smaili
for (int koht = 0; koht < 10; koht++) {
lcd.write(1);
delay(400);
}
lcd.setCursor(13, 1);
lcd.write(4);
//loobime südameid
for (int koht = 13; koht >= 4; koht--) {
lcd.setCursor(koht, 0);
lcd.write(7);
delay(400);
}
delay(400);
}
*Конструкция в Tinkercad*

*Конструкция в реальности*

Второе задание (5.2 Katse DateTime (RTClib.h teeke kasutamine)
Описание работы
Библиотека RTClib.h для работы с реальным временем (RTC) в микроконтроллерах, таких как Arduino, широко используется для управления датой и временем. Одной из ключевых возможностей этой библиотеки является работа с объектом DateTime, который позволяет легко манипулировать датой и временем.
Применение в жизни
Может использоваться в следующих примерах:
- Таймеры и будильники.
- Логирование данных с отметкой времени.
- Расчет времени между двумя датами.
Список компонентов
- Плата “Arduino UNO”
*Код*
// lisame RTClib.h library
#include <Wire.h>
#include <RTClib.h>
RTC_DS1307 rtc;
void setup ()
{
Serial.begin(9600);
Wire.begin();
rtc.begin();
if (! rtc.isrunning()) {
Serial.println("RTC is NOT running!");
// following line sets the RTC to the date & time this sketch was compiled
rtc.adjust(DateTime(__DATE__, __TIME__));
}
}
void loop () {
DateTime now = rtc.now();
char dt[10];
char tm[10];
sprintf(dt, "%02d/%02d/%02d", now.year(),now.month(),now.day());
sprintf(tm, "%02d:%02d:%02d", now.hour(),now.minute(),now.second());
Serial.print(dt);
Serial.print(" ");
Serial.print(tm);
Serial.println();
delay(1000);
}
*Конструкция в Tinkercad*
