Jam digital
Pada dasarnya jam digital yang dapat mengubah waktu hanya dengan menekan tombol.
History
Cara kerja Jam digital ini bekerja seperti ini, setiap 60 detik menit naik angka satu, setiap 60 menit setiap jam naik satu, dan ketika jam sampai jam 13, angka bilangan berubah menjadi satu bukan angka 13. Kita semua tahu bagaimana jam bekerja.
Kemudian jika Anda menahan tombol waktu perubahan untuk satu detik, Anda dapat mengubah waktu menggunakan tombol lain, seperti yang ditunjukkan di video bawah.
Pengalaman belajar Arduino dengan membuat jam digital memang sangat mengasyikkan, akan lebih bagus lagi setelah rancangan jam digital ini selesai anda bisa membuat packing box dengan printer 3D, desain bisa bebas anda rancang.
Video demonstrasi tentang cara menggunakan jam digital LCD biru 16×2
Skema
Skema Rangkaian.
Hanya skematisnya saja.
Kode Script C / C ++
Berikut adalah kode jika ada yang ingin mencobanya sendiri.
#include //to change time, hold chanage time button for 1 second, then use hour chnage and minute change buttons.
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int hour = 12;
int minutes = 0;
int seconds = 0;
int decBtn = 10;
int hrUp = 9;
int hrDwn = 8;
int minUp = 7;
int minDwn = 6;
int hrUpDec = 0;
int hrDwnDec = 0;
int minUpDec = 0;
int minDwnDec = 0;void setup() {
lcd.begin(16, 2);
pinMode(decBtn, INPUT);
pinMode(hrUp, INPUT);
pinMode(hrDwn, INPUT);
pinMode(minUp, INPUT);
pinMode(minDwn, INPUT);
}void loop() {
if (digitalRead(decBtn) == HIGH) {
if (digitalRead(hrUp) == HIGH && hrUpDec == 0) {
hrUpDec = 1;
hour = hour + 1;
} else if (digitalRead(hrUp) == LOW) {
hrUpDec = 0;
}
if (digitalRead(hrDwn) == HIGH && hrDwnDec == 0) {
hrDwnDec = 1;
hour = hour – 1;
} else if (digitalRead(hrDwn) == LOW) {
hrDwnDec = 0;
}
if (digitalRead(minUp) == HIGH && minUpDec == 0) {
minUpDec = 1;
minutes = minutes + 1;
} else if (digitalRead(minUp) == LOW) {
minUpDec = 0;
}
if (digitalRead(minDwn) == HIGH && minDwnDec == 0) {
minDwnDec = 1;
minutes = minutes – 1;
} else if (digitalRead(minDwn) == LOW) {
minDwnDec = 0;
}
seconds = 0;
lcd.clear();
if (minutes == 60) {
minutes = 0;
hour = hour + 1;
}
if (minutes < 0) {
minutes = 59;
}
if (hour == 13) {
hour = 1;
}
if (hour < 1) {
hour = 12;
}
lcd.print(hour);
lcd.print(“:”);
if (minutes < 10) {
lcd . cetak ( 0 ); } lcd . cetak ( menit ); penundaan ( 20 ); } Lain jika ( digitalRead ( decBtn ) == RENDAH ) { lcd . clear (); if ( seconds == 60 ) { seconds = 0 ; menit = menit + 1 ; } jika (menit == 60 ) {
minutes = 0 ; jam = jam + 1 ; } jika ( menit < 0 ) { minutes = 59 ; } jika ( jam == 13 ) { hour = 1 ; } jika ( jam < 1 ) { hour = 12 ; } lcd . cetak ( jam);
lcd . print ( “:” ); if ( menit < 10 ) { lcd . cetak ( 0 ); } lcd . cetak ( menit ); penundaan ( 1000 ); lcd . clear (); detik = detik + 1 ; } }
referensi artikel: https://www.hackster.io/sharkode/digital-clock-2e5c70
No comments:
Silahkan komentar yang baik ya...!