#include <LiquidCrystal.h>
#include <TimerOne.h>
unsigned long time;
unsigned long interval = 2000;
LiquidCrystal lcd = {8, 7, 6, 5, 4, 3, 2};
byte smiley[8] = {
0b00000,
0b01010,
0b01010,
0b00000,
0b10001,
0b01110,
0b00000,
0b00000
};
int counter = 0;
void setup() {
lcd.begin(16,2);
}
void loop() {
lcd.createChar(0, smiley);
lcd.setCursor(0, 0);
lcd.write(byte(0));
int nowtime = millis();
if (nowtime - time >= interval) {
time = nowtime;
counter++;
lcd.setCursor (0, 1);
lcd.print(counter);
delay(1000);
}
}
//Вопрос 1
//Подпрограмма или функция - важный элемент который помогает разбить код на логические блоки которые можно повторно использовать это облегчает код
//Функция - именованый блок кода, который выполняет определенную задачу.
//Функция определяется с помощью ключевого слова, указывающего тип возвращаемого значения (например, void, int, float), имени функции и списка параметров, в круглых скобках.
//Функции могут принимать один или несколько параметров, что позволяет передавать данные для обработки. Функции могут возвращать значения с помощью ключевого слова return.
//В контексте работы с Arduino и управления устройствами, такими как светодиоды, функции могут значительно упростить процесс разработки.
//Вопрос 2
//Макросы - это инструменты препроцессора, которые позволяют заменить текст в коде до его компиляции. Препроцессор — компьютерная программа, принимающая данные на входе и
//выдающая данные, предназначенные для входа другой программы. Препроцессор выполняет предварительную обработку исходных текстов программы перед тем, как передать их компилятору.
//Макросы определяются с помощью директивы #define. Эта директива заменяет все вхождения макроса в коде на указанное значение.
//Преимущества: Упрощение кода: Макросы позволяют заменить повторяющиеся константы или выражения на более короткие и понятные имена.
//Управление конфигурацией: Макросы могут использоваться для включения или отключения определенных функций кода.
//Оптимизация: Макросы могут помочь уменьшить использование памяти и увеличить скорость выполнения программы.
//