Πίνακας περιεχομένων:
- Προμήθειες
- Βήμα 1: Συγκεντρώστε τα αναλώσιμά σας στο TinkerCad
- Βήμα 2: Τακτοποιήστε τα αναλώσιμά σας
- Βήμα 3: Σύνδεση των καλωδίων
- Βήμα 4: Γράφοντας τον Κώδικα
- Βήμα 5: Ανάλυση του κώδικα
- Βήμα 6: Πώς λειτουργεί το υλικό αυτού του υπολογιστή;
- Βήμα 7: Πλήρης προεπισκόπηση της Αριθμομηχανής
- Βήμα 8: Η έμπνευσή μου για αυτόν τον κώδικα
Βίντεο: Υπολογιστής LCD από Jai Mishra: 8 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:33
Έργα Tinkercad »
Αυτό είναι ένα πολύ χρήσιμο έργο που σας διδάσκει πώς να δημιουργήσετε τη δική σας αριθμομηχανή. Μπορείτε είτε να δημιουργήσετε αυτήν την αριθμομηχανή στο διαδίκτυο είτε στην πραγματική ζωή με τη βοήθεια πρόσθετων προμηθειών, αλλά προς το παρόν θα επικεντρωθούμε μόνο στη δημιουργία μιας ηλεκτρονικής αριθμομηχανής.
Προμήθειες
- Arduino Uno R3
- Αντίσταση 220 Ohms
- Πληκτρολόγιο 4*4
- LCD 16*2
- Δέσμη καλωδίων για σύνδεση του κυκλώματος
Βήμα 1: Συγκεντρώστε τα αναλώσιμά σας στο TinkerCad
Βεβαιωθείτε ότι όλες οι προμήθειές σας είναι διαθέσιμες πριν ξεκινήσουμε με το βήμα 2 για να μειώσετε το άγχος και τα λάθη. Βεβαιωθείτε ότι χρησιμοποιείτε επίσης τα σωστά αναλώσιμα, ορισμένα από τα στοιχεία αυτής της εικόνας παραπάνω είναι παρόμοια με άλλα εξαρτήματα, οπότε μην αναμειγνύεστε ενδιάμεσα. Χρησιμοποιήστε την παραπάνω εικόνα ως καθοδήγησή σας.
Βήμα 2: Τακτοποιήστε τα αναλώσιμά σας
Η τακτοποίηση των προμηθειών σας είναι ο καλύτερος τρόπος για να δείτε μια προεπισκόπηση της εμφάνισης της αριθμομηχανής σας. Μπορείτε να δημιουργήσετε οποιοδήποτε τύπο σχεδίου αριθμομηχανής θέλετε, αλλά βεβαιωθείτε ότι η αριθμομηχανή φαίνεται φυσική και οι χρήστες μπορούν να κατανοήσουν το σχέδιο και να μην μπερδευτούν. Χρησιμοποίησα ένα τυπικό κομψό σχέδιο αριθμομηχανής που είναι αποτελεσματικό και κατανοητό από όλους. Μπορείτε είτε να επιλέξετε το σχέδιό μου είτε να δημιουργήσετε το δικό σας, αλλά ό, τι κι αν είναι αυτό δημιουργικό και καλή τύχη!
Βήμα 3: Σύνδεση των καλωδίων
Η σύνδεση των καλωδίων είναι μια δύσκολη δουλειά αν δεν καταλαβαίνετε το νόημα πίσω από αυτό. Σε αυτήν την καλωδίωση, προσπαθούμε να συνδέσουμε και τα τέσσερα στοιχεία μαζί ώστε να μπορούν να λειτουργήσουν ως ομάδα όταν είναι ώρα για τη σύνταξη του κώδικα. Εάν δεν υπάρχουν καλώδια, δεν πρόκειται να ρεύσει ρεύμα, οδηγώντας σε αποτυχημένο έργο. Βεβαιωθείτε ότι τα καλώδια σας είναι σωστά συνδεδεμένα χωρίς παρεξήγηση.
Αφού ολοκληρώσετε τη σύνδεση των καλωδίων, βεβαιωθείτε ότι τα καλώδια σας είναι τακτοποιημένα και οργανωμένα, ώστε να είναι πιο εύκολο για εσάς και τους άλλους να καταλάβετε τι ακριβώς συμβαίνει στο υλικό αυτής της αριθμομηχανής. Όπως είπα και πριν, μπορείτε είτε να χρησιμοποιήσετε την τεχνική μου για την οργάνωση των καλωδίων σας είτε να δημιουργήσετε τη δική σας, αλλά ό, τι κι αν αποφασίσετε να κάνετε, βεβαιωθείτε ότι έχουν συναρμολογηθεί με λίγο χώρο.
Βήμα 4: Γράφοντας τον Κώδικα
#περιλαμβάνω
#συμπεριλάβω #συμπεριλάβω
LiquidCrystal LCD (13, 12, 11, 10, 9, 8);
μακρύ πρώτο = 0; μακρύ δευτερόλεπτο = 0; διπλό σύνολο = 0;
char customKey; const byte ROWS = 4; const byte COLS = 4;
πλήκτρα char [ROWS] [COLS] = {{'1', '4', '7', '/'}, {'2', '5', '8', '+'}, {'3', '6', '9', '-'}, {'C', '0', '=', '*'}}; byte rowPins [ROWS] = {7, 6, 5, 4}; // σύνδεση με τα pinout των γραμμών των byte πληκτρολογίου colPins [COLS] = {3, 2, 1, 0}; // σύνδεση με τα pinouts στηλών του πληκτρολογίου
// αρχικοποίηση μιας παρουσίας κλάσης NewKeypad Keypad customKeypad = Πληκτρολόγιο (makeKeymap (κλειδιά), rowPins, colPins, ROWS, COLS);
void setup () {lcd.begin (16, 2); // έναρξη lcd για (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("Υπολογιστής"); lcd.setCursor (0, 1); lcd.print ("By Jai Mishra"); καθυστέρηση (4000)? lcd.clear (); lcd.print ("Τελικό έργο"); καθυστέρηση (2500)? lcd.clear (); lcd.setCursor (0, 0); }
void loop () {
customKey = customKeypad.getKey (); switch (customKey) {case '0'… '9': // Αυτό συνεχίζει να συλλέγει την πρώτη τιμή μέχρι να πατηθεί ένας τελεστής "+-*/" lcd.setCursor (0, 0); πρώτο = πρώτο * 10 + (customKey - '0'); lcd.print (πρώτο); Διακοπή;
περίπτωση '+': πρώτο = (σύνολο! = 0? σύνολο: πρώτο); lcd.setCursor (0, 1); lcd.print ("+"); δεύτερο = SecondNumber (); // πάρτε τα συλλεγμένα τον δεύτερο αριθμό σύνολο = πρώτο + δεύτερο? lcd.setCursor (0, 3); lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; // επαναφέρετε τις τιμές στο μηδέν για την επόμενη διακοπή χρήσης.
περίπτωση '-': πρώτη = (σύνολο! = 0? σύνολο: πρώτη); lcd.setCursor (0, 1); lcd.print ("-"); δεύτερο = SecondNumber (); σύνολο = πρώτο - δεύτερο? lcd.setCursor (0, 3); lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; Διακοπή;
περίπτωση '*': πρώτη = (σύνολο! = 0? σύνολο: πρώτη); lcd.setCursor (0, 1); lcd.print ("*"); δεύτερο = SecondNumber (); σύνολο = πρώτο * δεύτερο? lcd.setCursor (0, 3); lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; Διακοπή;
περίπτωση '/': πρώτη = (σύνολο! = 0? σύνολο: πρώτη); lcd.setCursor (0, 1); lcd.print ("/"); δεύτερο = SecondNumber (); lcd.setCursor (0, 3);
δεύτερο == 0; lcd.print ("Invalid"): total = (float) first / (float) second;
lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; Διακοπή;
περίπτωση 'C': σύνολο = 0; lcd.clear (); Διακοπή; }}
long SecondNumber () {while (1) {customKey = customKeypad.getKey (); if (customKey> = '0' && customKey <= '9') {second = second * 10 + (customKey - '0'); lcd.setCursor (0, 2); lcd.print (δεύτερο); }
if (customKey == '=') break; // επιστροφή δεύτερου? } επιστροφή δεύτερη? }
Βήμα 5: Ανάλυση του κώδικα
Αρχικοποιήσαμε τις τιμές που πρέπει να κατανοήσει ο υπολογιστής
#περιλαμβάνω
#συμπεριλάβω #συμπεριλάβω
LiquidCrystal LCD (13, 12, 11, 10, 9, 8);
μακρύ πρώτο = 0; μακρύ δευτερόλεπτο = 0; διπλό σύνολο = 0;
char customKey; const byte ROWS = 4; const byte COLS = 4;
Είπαμε στον υπολογιστή τους αριθμούς και τα σημάδια για τα οποία πρέπει να λειτουργεί το πληκτρολόγιο
πλήκτρα char [ROWS] [COLS] = {{'1', '2', '3', '/'}, {'4', '5', '6', '+'}, {'7', '8', '9', '-'}, {'C', '0', '=', '*'}};
Οριστικοποιήσαμε τις γραμμές και τις στήλες του πληκτρολογίου και ποιος αριθμός σε ποια στήλη, κ.λπ
byte rowPins [ROWS] = {7, 6, 5, 4}; byte colPins [COLS] = {3, 2, 1, 0};
Δημιουργήσαμε την εισαγωγή, ή το power on screen για τον υπολογιστή (Μπορείτε να γράψετε το δικό σας όνομα σε αυτό)
void setup () {lcd.begin (16, 2); για (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("Υπολογιστής"); lcd.setCursor (0, 1); lcd.print ("By Jai Mishra"); καθυστέρηση (4000)? lcd.clear (); lcd.print ("Τελικό έργο"); καθυστέρηση (2500)? lcd.clear (); lcd.setCursor (0, 0); }
Δημιουργούμε το νόημα και τον τύπο για κάθε λειτουργία στην αριθμομηχανή, ώστε ο υπολογιστής να καταλάβει τι τύπο να χρησιμοποιήσει όταν ο χρήστης πατήσει "+" στην αριθμομηχανή κ.λπ
{case '0'… '9': lcd.setCursor (0, 0); πρώτο = πρώτο * 10 + (customKey - '0'); lcd.print (πρώτο); Διακοπή;
περίπτωση '/': πρώτη = (σύνολο! = 0? σύνολο: πρώτη); lcd.setCursor (0, 1); lcd.print ("/"); δεύτερο = SecondNumber (); lcd.setCursor (0, 3);
δεύτερο == 0; lcd.print ("Invalid"): total = (float) first / (float) second;
lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; Διακοπή; περίπτωση '+': πρώτο = (σύνολο! = 0? σύνολο: πρώτο); lcd.setCursor (0, 1); lcd.print ("+"); δεύτερο = SecondNumber (); lcd.setCursor (0, 3); lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; Διακοπή;
περίπτωση '-': πρώτο = (σύνολο! = 0? σύνολο: πρώτο); lcd.setCursor (0, 1); lcd.print ("-"); δεύτερο = SecondNumber (); σύνολο = πρώτο - δεύτερο? lcd.setCursor (0, 3); lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; Διακοπή;
περίπτωση '*': πρώτη = (σύνολο! = 0? σύνολο: πρώτη); lcd.setCursor (0, 1); lcd.print ("*"); δεύτερο = SecondNumber (); σύνολο = πρώτο * δεύτερο? lcd.setCursor (0, 3); lcd.print (σύνολο); πρώτο = 0, δεύτερο = 0; Διακοπή;
περίπτωση 'C': σύνολο = 0; lcd.clear (); Διακοπή; }}
Ο κώδικας είναι πολύ εύκολος, το μόνο που έχετε να κάνετε είναι να προσπαθήσετε να τον καταλάβετε και τότε όλα μπορούν να γίνουν εύκολα. Εάν έχετε προβλήματα με τον κωδικό, στείλτε μου email
Βήμα 6: Πώς λειτουργεί το υλικό αυτού του υπολογιστή;
Αυτός ο υπολογιστής χρησιμοποιεί LCD οθόνη, πληκτρολόγιο, πλακέτα Arduino και αντίσταση 220 ohm. Όλα αυτά τα εξαρτήματα είναι ξεχωριστά αλλά συνδέονται με τα καλώδια από το Arduino στο πληκτρολόγιο και την οθόνη LCD. Διαφορετικά τμήματα της οθόνης LCD συνδέονται με την πλακέτα Arduino, η οποία τελικά συνδέει και τα δύο με το πληκτρολόγιο. Μετά τη σύνδεση, η κωδικοποίηση κάνει όλη τη δουλειά και δίνει σε κάθε λειτουργία και κουμπί στο πληκτρολόγιο μια εργασία που πρέπει να ακολουθήσει.
Βήμα 7: Πλήρης προεπισκόπηση της Αριθμομηχανής
Έτσι φαίνεται το τελευταίο μας έργο! Εάν ο κωδικός σας δεν λειτουργεί ή υπάρχουν κάποιες τεχνικές δυσκολίες, στείλτε μου email και θα προσπαθήσω να σας βοηθήσω να δημιουργήσετε την καλύτερη αριθμομηχανή!
Βήμα 8: Η έμπνευσή μου για αυτόν τον κώδικα
Εμπνεύστηκα από το παραπάνω βίντεο για το πώς να φτιάξετε μια αριθμομηχανή στο tinkercad! Δεν αντέγραψα και επικολλήσα τίποτα αλλά χρησιμοποίησα την ιδέα του για την αριθμομηχανή και την κατανόηση του κώδικα.
Συνιστάται:
Φορητός υπολογιστής Pi-Berry-ο κλασικός φορητός υπολογιστής DIY: 21 βήματα (με εικόνες)
Φορητός υπολογιστής Pi-Berry-ο κλασικός φορητός υπολογιστής DIY: Ο φορητός υπολογιστής που έφτιαξα "Ο φορητός υπολογιστής Pi-Berry" είναι χτισμένος γύρω από το Raspberry Pi 2. Έχει 1 GB RAM, τετραπύρηνο επεξεργαστή, 4 θύρες USB και μία θύρα Ethernet. Ο φορητός υπολογιστής ικανοποιεί τις ανάγκες της καθημερινής ζωής και εκτελεί ομαλά προγράμματα όπως το VLC media player, το Mozilla Firefox, το Ardu
Pocket Pi - ένας υπολογιστής Raspberry Pi για κάτω από $ 150: 19 βήματα (με εικόνες)
Pocket Pi - ένας υπολογιστής Raspberry Pi για κάτω από $ 150: voteηφίστε για αυτό το έργο στον διαγωνισμό μικροελεγκτών στο κάτω μέρος :) Αυτός είναι ένας προσιτός υπολογιστής βατόμουρου αξίας $ 100. Αυτός ο υπολογιστής δεν είναι το λεπτότερο ή ωραιότερο πράγμα στο Instructables. Αυτό είναι για να γίνει η δουλειά. Το κέλυφος είναι τρισδιάστατο
Υπολογιστής από κόντρα πλακέ: 6 βήματα
Υπολογιστής από κόντρα πλακέ: Δεν πρόκειται για υπολογιστή κατασκευασμένο από κόντρα πλακέ, αλλά για υπολογιστή κατασκευασμένο με κόντρα πλακέ. Συγγνώμη για τις χαμηλές φωτογραφίες με τα ορτύκια
Υπολογιστής για συστήματα RE (Μέρος 1 από 2) (Υλικό): 5 Βήματα
Υπολογιστής για συστήματα RE (Μέρος 1 από 2) (Υλικό): Εδώ θα σας δείξω πώς έφτιαξα έναν πλήρως λειτουργικό υπολογιστή Mini Desktop για μικρά συστήματα ανανεώσιμων πηγών ενέργειας. Το σύστημα RE που σκοπεύω να χρησιμοποιήσω θα είναι κυρίως ένα σύστημα 12 Volt με 6 ή 8 μπαταρίες Golf Cart, και θα έχω ισχύ 700 watt inver
Υπολογιστής για συστήματα RE (Μέρος 2 από 2) (Λογισμικό): 6 βήματα
Υπολογιστής για συστήματα RE (Μέρος 2 από 2) (Λογισμικό): Στο πρώτο μέρος αυτού του Instructable Βρίσκεται εδώ https://www.instructables.com/id/Computer-for-RE-Systems-Part-1-of-2 -Συσκευές/, πρόσθεσα όλο το υλικό που ήθελα να αποκτήσω ένα καλό σύστημα επιφάνειας εργασίας. Τώρα για το λογισμικό, αλλά πριν από το λογισμικό