Ο συγγραφέας των Instructables με το ψευδώνυμο joshua.brooks εφευρέθηκε ένα παιχνίδι πλατφόρμας Arduino με τον έλεγχο ενός κουμπιού. Το μόνο που έχετε να κάνετε είναι να αναπηδήσετε εγκαίρως. Αποδείχθηκε - η βαθμολογία αυξάνεται κατά ένα, δεν λειτούργησε - το παιχνίδι σταματάει και ένα νέο μπορεί να ξεκινήσει με το ίδιο κουμπί που χρησιμοποιείται για το άλμα.
Το πρόγραμμα παιχνιδιού τρέχει στο Arduino Uno, στο οποίο είναι συνδεδεμένη μια οθόνη δύο γραμμών στο τσιπ HD44780. Το κουμπί, όταν πιεστεί, συνδέει τον πείρο Arduino 2 σε ένα κοινό καλώδιο. Είναι καλό να σφίξετε το σημείο σύνδεσης αυτού του κουμπιού με το Arduino προς τα πάνω με αντίσταση 10 kOhm, βελτιώνοντας έτσι την ασυλία θορύβου. Ο οπίσθιος φωτισμός της οθόνης τροφοδοτείται μέσω μιας αντίστασης 220 ohm. Όλα αυτά, μαζί με ένα breadboard τύπου breadboard, καλώδιο και jumpers, εμφανίζεται στη φωτογραφία:
Πριν τη συναρμολόγηση σπιτικό ο πλοίαρχος βεβαιώνεται ότι η οθόνη διαθέτει μια συνηθισμένη καλωδίωση:
1 - GND - κοινό καλώδιο
2 - VCC - plus power
3 - V0 - ρύθμιση αντίθεσης
4 - επιλογή καταχωρητή RS
5 - R / W - ανάγνωση / εγγραφή
6 - Ηλεκτρονική επίλυση της πράξης
7 - DB0 - bit δεδομένων 0 (δεν χρησιμοποιείται εδώ)
8 - DB1 - bit δεδομένων 1 (δεν χρησιμοποιείται εδώ)
9 - Bit δεδομένων 2 DB2 (δεν εμπλέκεται εδώ)
10 - DB3 - bit δεδομένων 3 (δεν χρησιμοποιείται εδώ)
11 - DB4 - bit δεδομένων 4
12 - DB5 - bit δεδομένων 5
13 - DB6 - bit δεδομένων 6
14 - DB7 - bit δεδομένων 7
15 - LED + - με οπίσθιο φωτισμό
16 - LED- - μείον τον οπίσθιο φωτισμό
Σε ορισμένες οθόνες, ειδικά στο τσιπ KB1013VG6, αλλά όχι μόνο, το pinout μπορεί να διαφέρει. Είναι εντάξει να εξετάσετε το δελτίο δεδομένων και να ρυθμίσετε το κύκλωμα - ένα στιγμιαίο θέμα. Και όλα θα λειτουργήσουν.
Τα πρώτα τέσσερα bits δεν χρησιμοποιούνται επειδή το Arduino στέλνει δεδομένα στην οθόνη σε λειτουργία τεσσάρων δυαδικών ψηφίων. Πριν από αυτό, χρησιμοποιεί τα ίδια συμπεράσματα για να διαμορφώσει την οθόνη ανάλογα.
Κατά τη διάρκεια της κατασκευής του joshua.brooks, η τροφοδοσία δεν τροφοδοτείται στο κύκλωμα. Συνδέει τις θετικές και τις κοινές εξόδους του Arduino (5V και GND, αντίστοιχα) με τα αντίστοιχα λεωφορεία στην πλακέτα πακέτων. Κάνει το ίδιο και με την οθόνη, εκεί είναι απαραίτητο να συνδέσει τον ακροδέκτη 2 στο λεωφορείο συν και στο κοινό - 1 και 16. Δεν συνδέει τον ακροδέκτη 15 της οθόνης (ισχύς οπίσθιου φωτισμού) απευθείας στο συν συν, αλλά μέσω μιας αντίστασης 220 ohm.
Στη συνέχεια παίρνει τη σύνδεση του Arduino με την οθόνη:
Συνδέει την είσοδο οθόνης DB7 με τον ακροδέκτη Arduino 3.
Συνδέει την είσοδο DB6 με τον πύργο Arduino 4.
Συνδέει την είσοδο DB5 με τον πύργο Arduino 5.
Συνδέει την είσοδο DB4 της οθόνης στον ακροδέκτη 6 του Arduino.
Συνδέει την είσοδο E της οθόνης με τον ακροδέκτη 9 του Arduino.
Συνδέει την είσοδο R / W της οθόνης στον ακροδέκτη 10 του Arduino (ή του κοινού καλωδίου)
Συνδέει την είσοδο RS της οθόνης με τον ακροδέκτη 11 του Arduino.
Συνδέει την ένδειξη V0 της οθόνης με τον ακροδέκτη Arduino 12 (ή το κοινό καλώδιο).
Εάν είναι επιθυμητό, μπορείτε να προσθέσετε ένα ρυθμιστή αντίθεσης. Τώρα είναι πάντα στο μέγιστο.
Το κουμπί παραμένει. Ο οδηγός συνδέει μία από τις καρφίτσες του κουμπιού σε ένα κοινό σύρμα, ενώ ο άλλος στον ακροδέκτη 2 του Arduino. Είναι καλύτερα να προσθέσετε μια αντίσταση pull-up (βλ. Παραπάνω). Όλα είναι έτοιμα για προγραμματισμό.
Ολόκληρος ο κύκλος ανάπτυξης του Joshua.brooks δαπανήθηκε στο Tinkercad. , με μερικές καθυστερήσεις, μπορείτε να παίξετε αυτό το παιχνίδι σε μια εικονική μηχανή, να τροποποιήσετε τον κώδικα και να δείτε αμέσως τι συμβαίνει. Υπάρχει επίσης ένα κουμπί λήψης Gerber για όσους θέλουν να συγκεντρώσουν το παιχνίδι σε έναν πίνακα τυπωμένου κυκλώματος. Και αν το Tinkercad σας καθυστερήσει πολύ, κατεβάστε αμέσως και προσπαθήστε να το εκτελέσετε σε ένα πραγματικό κομμάτι υλικού.
Θα πρέπει να πάρετε κάτι σαν αυτό:
Παρόλο που το συγκεκριμένο παιχνίδι δεν έφτασε ακόμη και σε τρίτες θέσεις σε διαγωνισμούς που πραγματικά του αρέσουν οι Instructables, έγινε πραγματικό χτύπημα εκεί. Η επανάληψή της αναφέρθηκε από 23 χρήστες. Για παράδειγμα, kb55mail:
Rob Cai:
aryas25:
zhollett:
Και άλλα. Τι γίνεται με εσένα;