Ψηφιακό κύκλωμα ρολογιού με οθόνη LCD 16 × 2

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





Η ανάρτηση εξηγεί πώς να φτιάξετε ένα απλό ψηφιακό ρολόι χρησιμοποιώντας το Arduino και μια οθόνη LCD 16 x 2.

Εισαγωγή

Ως λάτρεις των ηλεκτρονικών σε ένα στάδιο θα είχαμε σκεφτεί, πώς να φτιάξουμε ένα ψηφιακό ρολόι, ειδικά που ενδιαφέρονται για τον τομέα της ψηφιακής ηλεκτρονικής. Σε αυτό το άρθρο θα δούμε πώς να φτιάξουμε ένα ψηφιακό ρολόι και ο σχεδιασμός είναι τόσο απλός ώστε ένας noob στο Arduino να μπορεί να ολοκληρώσει το έργο χωρίς πόνο στο κεφάλι.



Αυτό το ψηφιακό ρολόι έχει μόνο δύο βασικά στοιχεία, το Arduino και το οθόνη LCD . Το Arduino είναι ο εγκέφαλος του ρολογιού, το οποίο κάνει μαθηματικές και λογικές συναρτήσεις για την ενημέρωση του ρολογιού κάθε δευτερόλεπτο.

Πρωτότυπο εικόνα:

ενσύρματη σύνδεση μεταξύ της οθόνης LCD και του Arduino

Η οθόνη LCD είναι μια τυπική οθόνη διασύνδεσης 16 ακίδων. Έχει 16 σειρές και 2 στήλες, αυτό σημαίνει ότι μπορεί να εμφανίσει 16 χαρακτήρες ASCII στη σειρά και έχει δύο στήλες και γι 'αυτό ονομάζεται οθόνη 16x2.



Η ενσύρματη σύνδεση μεταξύ της οθόνης LCD και του Arduino είναι στάνταρ και μπορούμε να βρούμε το ίδιο είδος συνδέσεων στα περισσότερα από τα άλλα έργα που βασίζονται σε Arduino-LCD.

Το ποτενσιόμετρο χρησιμοποιείται για τη ρύθμιση της αντίθεσης της οθόνης.

Ο χρήστης πρέπει να το ρυθμίσει με τον καλύτερο τρόπο, έτσι ώστε ο χρήστης να μπορεί να δει τα εμφανιζόμενα ψηφία / χαρακτήρες σε όλες τις συνθήκες φωτός.

Υπάρχει οπίσθιος φωτισμός που επιτρέπει στο χρήστη να βλέπει την οθόνη κατά τη σκοτεινή κατάσταση. Το arduino μπορεί να τροφοδοτηθεί εξωτερικά από την υποδοχή DC από 7 volt έως 12 volt.

Διάγραμμα κυκλώματος:

Το ποτενσιόμετρο χρησιμοποιείται για τη ρύθμιση της αντίθεσης της οθόνης.

ΚΩΔΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ARDUINO:

// -------- Πρόγραμμα που αναπτύχθηκε από τον R.GIRISH ------- //
#include
LiquidCrystal lcd(12,11,5,4,3,2)
int h=12
int m
int s
int flag
int TIME
const int hs=8
const int ms=9
int state1
int state2
void setup()
{
lcd.begin(16,2)
}
void loop()
{
lcd.setCursor(0,0)
s=s+1
lcd.print('TIME:' )
lcd.print(h)
lcd.print(':')
lcd.print(m)
lcd.print(':')
lcd.print(s)
if(flag<12) lcd.print(' AM')
if(flag==12) lcd.print(' PM')
if(flag>12) lcd.print(' PM')
if(flag==24) flag=0
delay(1000)
lcd.clear()
if(s==60) {
s=0
m=m+1
}
if(m==60)
{
m=0
h=h+1
flag=flag+1
}
if(h==13)
{
h=1
}
lcd.setCursor(0,1)
lcd.print('HAVE A NICE DAY')
//-----------Time setting----------//
state1=digitalRead(hs)
if(state1==1)
{
h=h+1
flag=flag+1
if(flag<12) lcd.print(' AM')
if(flag==12) lcd.print(' PM')
if(flag>12) lcd.print(' PM')
if(flag==24) flag=0
if(h==13) h=1
}
state2=digitalRead(ms)
if(state2==1) {
s=0
m=m+1
}
}
//-------- Program developed by R.GIRISH-------//

ΣΗΜΕΙΩΣΗ: Το παραπάνω πρόγραμμα επαληθεύεται και δεν περιέχει σφάλματα. Σε περίπτωση που λάβετε προειδοποίηση ή σφάλμα, προσθέστε τη βιβλιοθήκη LiquidCrystal με μη αυτόματο τρόπο.

ΡΥΘΜΙΣΗ ΩΡΑΣ:

Υπάρχουν δύο πλήκτρα ένα για ρύθμιση ωρών και ένα άλλο για ρύθμιση για λεπτά. Εάν πατήσετε ένα από τα δύο, θα αυξηθούν τα αντίστοιχα ψηφία. Για ρύθμιση ωρών πατήστε το κουμπί μέχρι να εμφανιστεί η σωστή ώρα, παρόμοια για λεπτά.

ΣΗΜΕΙΩΣΗ:

· Κατά τη ρύθμιση του χρόνου, κρατήστε πατημένο το κουμπί μέχρι να φτάσει ο επιθυμητός χρόνος. Το στιγμιαίο πάτημα του κουμπιού ενδέχεται να μην αλλάξει την ώρα.

· Κάθε ψηφίο αυξάνεται μόνο δευτερόλεπτο μετά το δευτερόλεπτο, αυτό συμβαίνει επειδή ολόκληρος ο βρόχος του προγράμματος καθυστέρησε για 1 δευτερόλεπτο.

· Το ψηφίο των δευτερολέπτων κυμαίνεται από 01 έως 60 και βγαίνει ξανά και δεν θα εμφανίζει '00' όπως συμβαίνει με το παραδοσιακό ψηφιακό ρολόι.




Προηγούμενο: Ηλιακός μετατροπέας για κλιματιστικό 1,5 τόνου Επόμενο: Απλό κύκλωμα γεννήτριας ανεμογεννητριών κάθετου άξονα