ArduWir
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.

Самые простые часы

Перейти вниз

Самые простые часы Empty Самые простые часы

Сообщение  Admin Пт 14 Дек 2012 - 0:16

Написал эти часики ради эксперимента, для начинающих самое то. Для полноценных часов необходимо добавить меню для выставления времени, и что то вроде будильника чтобы при заданном времени включать и отключать нагрузку или исполнение какой то части кода. Эксперимент буду продолжать отчеты публиковать здесь.
А вот собственно код.

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int H=0; //Hour
int M=0; //Min
int S=0; //Sec
byte ledPin =13; //Светодиод (исполнительное устройство)
long previousMillis = 0; //счетчик прошедшего времени
long interval = 500; //1000мс = 1с

void setup()
{
pinMode(ledPin, OUTPUT);
//Настройка дисплея
//Установка количества столбцов и строк дисплея
lcd.begin(16, 2);
// Вывод приветствия при включении питания если нужно
lcd.setCursor(0, 0);
lcd.print("allduino.");
lcd.setCursor(0, 1);
lcd.print("forum2x2.ru");
delay (1000);//Задержка приветствия
//отрисовка табло
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(H);
lcd.print(":");
lcd.print(M);
lcd.print(":");
lcd.print(S);
}
void loop()
{
unsigned long currentMillis = millis();
if(currentMillis - previousMillis >= interval) //Если счетчик
{
previousMillis = currentMillis; //достиг интервала секунды увеличить на 1
S++;

}
//установка времени вкл/откл нагрузки
if (H==6 && M==0) //время включения = 6ч0м0с
{
digitalWrite(ledPin, HIGH);
}
if (H==18 && M==0) //время отключения = 18ч0м0с
{
digitalWrite(ledPin, LOW);
}
//собственно часы
if (S>=60)//если сек = 60 то к мин +1 а сек =0
{
M++;
S=0;
lcd.clear();
}
if (M==60)//если мин = 60 то мин и сек =0 а час +1
{
H++;
M=0;
S=0;
lcd.clear();
}
if (H==24)//если час = 24 то час, мин, сек =0
{
H=0;
M=0;
S=0;
lcd.clear();
}

//вывод табло
lcd.setCursor(0, 0);
lcd.print(H);
lcd.print(":");
lcd.print(M);
lcd.print(":");
lcd.print(S);
}

Admin
Admin

Сообщения : 21
Дата регистрации : 2012-12-11

https://allduino.forum2x2.ru

Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения