Well I bought this piezo speaker ALLDATASHEET.COM - Datasheet search site, Datasheet search site for Electronic Components and Semiconductors and other semiconductors. and it still didn't work.
#include <LiquidCrystal.h>
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
int TimeHours10s = 0;
int TimeHours1s = 0;
int TimeMinutes10s = 0;
int TimeMinutes1s = 0;
int TimeSeconds10s = 0;
int TimeSeconds1s = 0;
int AlarmHours10s = 0;
int AlarmHours1s = 0;
int AlarmMinutes10s = 0;
int AlarmMinutes1s = 0;
int AlarmSeconds10s = 0;
int AlarmSeconds1s = 0;
int AlarmSet = 6;
int TimeSet = 7;
int Min = 8;
int Hour = 9;
int Buzzer =10;
void setup()
{
pinMode(AlarmSet,INPUT_PULLUP);
pinMode(TimeSet, INPUT_PULLUP);
pinMode(Hour, INPUT_PULLUP);
pinMode(Min, INPUT_PULLUP);
pinMode(Buzzer, OUTPUT);
lcd.begin(16, 2);
}
void loop()
{
CalculateTime();
ShowTime();
ShowAlarm();
delay(500);
if(digitalRead(AlarmSet)== LOW && digitalRead(Min)== LOW)
{
AlarmMinutes1s++;
delay(500);
CalculateAlarm();
}
if(digitalRead(AlarmSet)== LOW && digitalRead(Hour)== LOW)
{
AlarmHours1s++;
delay(500);
CalculateAlarm();
}
if(digitalRead(TimeSet)== LOW && digitalRead(Min)== LOW)
{
TimeMinutes1s++;
delay(500);
CalculateTime();
}
if(digitalRead(TimeSet)== LOW && digitalRead(Hour)== LOW)
{
TimeHours1s++;
delay(500);
CalculateTime();
}
delay(500);
}
void ShowTime()
{
lcd.display();
lcd.setCursor(0, 0);
lcd.print("Time ");
lcd.print(TimeHours10s);
lcd.print(TimeHours1s);
lcd.print(":");
lcd.print(TimeMinutes10s);
lcd.print(TimeMinutes1s);
lcd.print(":");
lcd.print(TimeSeconds10s);
lcd.print(TimeSeconds1s);
lcd.setCursor(0, 0);
}
void ShowAlarm()
{
lcd.display();
lcd.setCursor(0, 1);
lcd.print("Alarm ");
lcd.print(AlarmHours10s);
lcd.print(AlarmHours1s);
lcd.print(":");
lcd.print(AlarmMinutes10s);
lcd.print(AlarmMinutes1s);
lcd.print(":");
lcd.print(AlarmSeconds10s);
lcd.print(AlarmSeconds1s);
lcd.setCursor(0, 1);
}
void CalculateTime()
{
TimeSeconds1s++;
if(TimeSeconds1s == 10)
{
TimeSeconds1s = 0;
TimeSeconds10s++;
}
if(TimeSeconds10s == 6)
{
TimeSeconds10s = 0;
TimeSeconds1s = 0;
TimeMinutes1s++;
}
if(TimeMinutes1s == 10)
{
TimeMinutes1s = 0;
TimeSeconds10s = 0;
TimeSeconds1s = 0;
TimeMinutes10s++;
}
if(TimeMinutes10s == 6)
{
TimeMinutes10s = 0;
TimeMinutes1s = 0;
TimeSeconds10s = 0;
TimeSeconds1s = 0;
TimeHours1s++;
}
if(TimeHours1s == 10)
{
TimeHours1s=0;
TimeMinutes10s = 0;
TimeMinutes1s = 0;
TimeSeconds10s = 0;
TimeSeconds1s = 0;
TimeHours10s++;
}
if(TimeHours10s == 2 && TimeHours1s == 4)
{
TimeHours10s=0;
TimeHours1s=0;
TimeMinutes10s = 0;
TimeMinutes1s = 0;
TimeSeconds10s = 0;
TimeSeconds1s = 0;
}
}
void CalculateAlarm()
{
if(AlarmMinutes1s == 10)
{
AlarmMinutes1s = 0;
AlarmMinutes10s++;
}
if(AlarmMinutes10s == 6)
{
AlarmMinutes10s = 0;
AlarmMinutes1s = 0;
AlarmHours1s++;
}
if(AlarmHours1s == 10)
{
AlarmHours1s=0;
AlarmMinutes10s = 0;
AlarmMinutes1s = 0;
AlarmHours10s++;
}
if(AlarmHours10s == 2 && AlarmHours1s == 4)
{
AlarmHours10s=0;
AlarmHours1s=0;
AlarmMinutes10s = 0;
AlarmMinutes1s = 0;
}
if(TimeHours10s == AlarmHours10s && TimeHours1s == AlarmHours1s && TimeMinutes10s == AlarmMinutes10s && TimeMinutes1s == AlarmMinutes1s )
{
tone(Buzzer, 2300);
delay(10000);
noTone(Buzzer);
delay(1000);
}
}
I changed little part of code and it still didn't work.Can you check code and tell me if something is wrong?