Πίνακας περιεχομένων:

Ardubaby Mini Game Console με 500 παιχνίδια: 10 βήματα
Ardubaby Mini Game Console με 500 παιχνίδια: 10 βήματα

Βίντεο: Ardubaby Mini Game Console με 500 παιχνίδια: 10 βήματα

Βίντεο: Ardubaby Mini Game Console με 500 παιχνίδια: 10 βήματα
Βίντεο: Ретро консоль на 500 игр почти задаром!🤷‍♂️ 2024, Ιούλιος
Anonim
Κονσόλα παιχνιδιών Ardubaby Mini με 500 παιχνίδια
Κονσόλα παιχνιδιών Ardubaby Mini με 500 παιχνίδια
Κονσόλα παιχνιδιών Ardubaby Mini με 500 παιχνίδια
Κονσόλα παιχνιδιών Ardubaby Mini με 500 παιχνίδια

Ευχαριστίες για τον δημιουργό (Kevin Bates), το Arduboy είναι μια πολύ επιτυχημένη κονσόλα παιχνιδιών 8 bit. Υπήρχαν χιλιάδες παιχνίδια που έγραψε ο χόμπι που τα μοιράστηκε ελεύθερα στο κοινοτικό φόρουμ του Arduboy, ώστε περισσότεροι άνθρωποι να μάθουν πώς να κωδικοποιούν.

Ο σχεδιασμός υλικού είναι επίσης ανοιχτού κώδικα και επιτρέπει σε κατασκευαστές όπως εγώ να σχεδιάσουν τη δική τους έκδοση υλικού και να αναπτύξουν βοηθητικά προγράμματα λογισμικού για να βελτιώσουν τη λειτουργία του. Συντελεστές για τον MR. Blinky που σχεδίασε το κύκλωμα Flash-Cart, σπιτικό πακέτο για το Arduino IDE και τα βοηθητικά προγράμματα python για τη διαχείριση του καλαθιού Flash, το οποίο μπορεί να αποθηκεύσει 500 παιχνίδια σε σειριακή μνήμη flash 16Mbyte για παιχνίδι στο δρόμο χωρίς υπολογιστή.

Μελετώντας τα θέματα των συζητήσεων στο φόρουμ της κοινότητας του Arduboy, έμαθα τι χρειάζομαι για να δημιουργήσω αρκετά σπιτικά Arduboys. Για τους νεοφερμένους, αυτό μπορεί να μην είναι εύκολο. Ως εκ τούτου, θέλω να μοιραστώ όσα έμαθα σε ένα ενιαίο βίντεο από άκρο σε άκρο και αυτές τις γραπτές οδηγίες. Ελπίζω ότι αυτό θα βοηθήσει όσους αναζητούν απαντήσεις να φτιάξουν το δικό τους κιτ αλλά δεν ξέρουν πώς να ρωτήσουν ή δεν έχουν το σωστό κανάλι για να κάνουν αυτές τις ερωτήσεις.

Η δική μου έκδοση του Arduboy είναι μικρή μόνο στο 1/4 του μεγέθους της πιστωτικής κάρτας (3,5cm x 5,0cm0) αλλά λίγο παχύ (2cm συμπεριλαμβανομένου του κάτω καλύμματος), αλλά έχει όλα τα κουδούνια και τα σφυρίγματα που χρειάζεστε: OLED 0,9 , υποδοχή ακουστικών, έλεγχος έντασης, RGB LED.

και το πιο σημαντικό, η θύρα επέκτασης που σας επιτρέπει να αλλάξετε τα κουμπιά της κονσόλας παιχνιδιών σας με διαφορετικά, αλλάζοντας την επάνω πλακέτα κυκλώματος (το καπέλο κουμπιών).

Στη συνέχεια, μπορείτε να χρησιμοποιήσετε αθόρυβα κουμπιά, χειριστήρια όπως κουμπιά ή ακόμη και αναλογικά χειριστήρια όπως ένα ποτενσιόμετρο.

Μπορείτε επίσης να προσθέσετε αισθητήρα υγρασίας και θερμοκρασίας για να δημιουργήσετε έναν μικροσκοπικό μετεωρολογικό σταθμό ή να προσθέσετε υπερήχους για να δημιουργήσετε ένα μετρητή απόστασης.

Διαθέτει επιπλέον 16Μ byte σειριακής μνήμης flash για αποθήκευση έως και 500 παιχνιδιών Arduboy ή βοηθητικών προγραμμάτων. Χρησιμοποιώντας το bootloader (Cathy3K) που σχεδιάστηκε από τον MR. Blinky, μπορείτε να καλέσετε οποιοδήποτε από τα 500 παιχνίδια στο δρόμο και να το αναβοσβήνετε στο τσιπ ATmega32U4 (μικροελεγκτή του Arduboy) σε δευτερόλεπτα για να ξεκινήσετε να παίζετε, χωρίς σύνδεση με τον υπολογιστή ή το τηλέφωνό σας.

Βήμα 1: Αποκτήστε όλα τα μέρη

Πάρτε όλα τα μέρη
Πάρτε όλα τα μέρη

Τα περισσότερα από τα εξαρτήματα μπορούν να αγοραστούν διαδικτυακά μέσω amazon.com, aliexpress.com ή taobao.com. Μερικά από αυτά θα μπορούσαν να συλλεχθούν από αχρησιμοποίητες σανίδες Arduino.

Μου κόστισε λιγότερο από 12 USD (εξαιρούνται τα μεταφορικά) για να τα αγοράσω όλα από το taobao.com και να τα στείλω στο Χονγκ Κονγκ.

Arduino Pro Micro

OLED 64x128 SSD1306 SPI 0,96"

Τσιπ μνήμης Winbond W25Q128 16Mbyte

Μονάδα φόρτισης μπαταρίας USB LiPO μπαταρίας 3.7V 280 MaH Lipo (4.2V)

Υποδοχή ακουστικών 3,5 mm 10K mini VR (B103) για έλεγχο έντασης

10K mini VR (B103) για ποτενσιόμετρο ή περιστροφικό χειριστήριο (προαιρετικό)

μίνι ηχείο Piezo

Αντίσταση 3k, 3x 1K

3 σε 1 RGB LED Seven

Αθόρυβο κουμπί 5x5mm

Διαφανής διακόπτης 9x4mm για διακόπτη τροφοδοσίας

δύο διπλές πλευρικές σανίδες 5x8cm

ένας πίνακας 5x8cm μονής πλευράς

Γυναικεία κεφαλίδα 1x13 ακίδων

Αρσενική κεφαλίδα 1x13 ακίδων

Γυναικεία κεφαλίδα 1x7 ακίδων

Αρσενική κεφαλίδα 1x7 ακίδων 3.5x5cm Ακρυλική σανίδα για οπισθόφυλλο

το κόστος αποστολής να συμπεριληφθεί στον προϋπολογισμό σας

Βήμα 2: Φτιάξτε το Main Board

Κάντε το Main Board
Κάντε το Main Board
Κάντε το Main Board
Κάντε το Main Board
Κάντε το Main Board
Κάντε το Main Board

1. Δημιουργήστε το πλαίσιο για την κεντρική πλακέτα.

ένα. Πάρτε τις σανίδες περ. 8cm x 5cm. Κόψτε το με ένα ψαλίδι (ή ένα πριόνι) για να κάνετε μικρότερες σανίδες περ. 3,5cm x 5cm. Θα πρέπει να έχει ακόμη 18 σειρές και 13 στήλες οπών καρφιτσών. Κόψτε ένα κομμάτι 3,5cm x 5cm από έναν ακρυλικό πίνακα που θα χρησιμοποιηθεί ως οπισθόφυλλο.

σι. Συγκολλήστε μια γυναικεία κεφαλίδα 13 ακίδων στην τελευταία σειρά στο κάτω μέρος για το καπέλο κουμπιού και την επέκταση. ντο. Συγκολλήστε μια γυναικεία κεφαλίδα 7 ακίδων στην πρώτη σειρά στο επάνω μέρος για το OLED 7 ακίδων.

ρε. Κολλήστε ένα αθόρυβο κουμπί για το κουμπί επαναφοράς. μι. Κολλήστε έναν συρόμενο διακόπτη για τον διακόπτη τροφοδοσίας. φά. Συγκολλήστε μια στερεοφωνική υποδοχή ακουστικών 3,5 χιλιοστών για τηλέφωνο κεφαλής. σολ. Κολλήστε μια αντίσταση 3 ακίδων 10K μίνι-μεταβλητής αντίστασης.

2. Κάντε το φορτιστή μπαταρίας 4.2V LIPO και το κύκλωμα ρυθμιστή 3.3V.

ένα. ξεκολλήστε τον ρυθμιστή 5 ακίδων 5V στην πλακέτα Pro-Micro, έτσι ώστε να μπορούμε να τροφοδοτούμε ρεύμα από έναν εξωτερικό ρυθμιστή 3.3V.

σι. Κόψτε τη μονάδα φόρτισης μπαταριών LIPO έτσι ώστε να χωράει στην κεντρική πλακέτα ακριβώς δίπλα στην υποδοχή μπαταρίας 3,4 mm. Θα χρειαστεί να κάνετε την κοπή στο σημείο όπου η υποδοχή USB συναντά το υπόλοιπο κύκλωμα. Εάν αυτό είναι ακόμα πολύ μεγάλο, ίσως χρειαστεί να το κόψετε λίγο περισσότερο. Στην περίπτωσή μου, πρέπει να μετατοπίσω και να συγκολλήσω ξανά μία από τις αντιστάσεις για να μου επιτρέψει να κόψω περαιτέρω.

ντο. Τραβήξτε την καρτέλα στο επάνω μέρος του ρυθμιστή 3.3V (AMS1117-3.3) για να μειώσετε το χώρο και επίσης να αποφύγετε βραχυκύκλωμα. Στη συνέχεια, συγκολλήστε τον πείρο 1 στην αρνητική έξοδο και συνδέστε με 3 τη θετική έξοδο της μονάδας φορτιστή μπαταρίας LIPO. Συγκολλήστε έναν πυκνωτή 0.1uF μεταξύ του πείρου 1 και του πείρου 2 για αποσύνδεση και μείωση θορύβου. Χρησιμοποιήστε έναν μικρό πυκνωτή τύπου SMD για να μειώσετε το χώρο, εάν είναι δυνατόν.

ρε. Συνδέστε ένα ελασματοποιημένο (μονωμένο) καλώδιο 0,3 mm από τον πείρο RAW της πλακέτας Pro Pro στη θετική είσοδο 5V της μονάδας φορτιστή μπαταρίας. Συνδέστε ένα καλώδιο από τον πείρο GND της πλακέτας micro Pro στην αρνητική είσοδο της μονάδας φορτιστή μπαταρίας. Συνδέστε ένα καλώδιο από τον μεσαίο πείρο (ακίδα 2) του ρυθμιστή 3.3V. Συνδέστε τους αρνητικούς και θετικούς ακροδέκτες της μπαταρίας LIPO στην αρνητική και θετική έξοδο του φορτιστή μπαταρίας αντίστοιχα.

ρε. Συνδέστε το καλώδιο USB από τον υπολογιστή σας στην πλακέτα Pro-Micro. Ο πείρος RAW πρέπει να παρέχει το 5V από το καλώδιο USB στη μονάδα φόρτισης μπαταριών LIPO, η οποία θα ρυθμιστεί για τη φόρτιση της μπαταρίας LIPO. Η λυχνία LED φόρτισης πρέπει να ανάψει. Ο ρυθμιστής 3.3V θα πρέπει να μετατρέψει την έξοδο 4.2V σε 3.3V για να ενεργοποιήσει την πλακέτα Pro-Micro. Η λυχνία LED στην πλακέτα Pro-Micro πρέπει να ανάψει.

μι. Ξεκινήστε το Arduino IDE και κάντε κλικ στην επιλογή Εργαλεία -> Θύρες για να ελέγξετε το όνομα της θύρας για να ελέγξετε εάν η θύρα USB του Pro Micro αναγνωρίζεται από τον υπολογιστή σας. Στο MAC OSX μου, εμφανίζει "/dev/cu.usbmodem14201 (Arduino Leonardo)". Κάντε κλικ στην επιλογή Εργαλεία-πίνακες και επιλέξτε "Arduino Leonardo". Στη συνέχεια, φορτώστε το παράδειγμα σκίτσου "Blink". Στη συνέχεια, δοκιμάστε τη μεταφόρτωση για να ελέγξετε αν μπορείτε να μεταφορτώσετε στο Pro Micro. Εάν υπάρχει κάποιο πρόβλημα, ελέγξτε ξανά την καλωδίωση και τη συγκόλληση.

3. Φτιάξτε τον σειριακό πίνακα κόρης. ένα. Κόψτε μια μικρότερη μονή πλαϊνή πλακέτα με 7 οπές και 4 οπές που θα χρησιμοποιηθούν ως θυγατρική σανίδα για να τοποθετήσετε το τσιπ μνήμης flash και τους επιπλέον πείρους διάσπασης των D11, D12, D14. σι. Χωρίστε τα μαξιλάρια συγκόλλησης στην 2η τελευταία σειρά της σανίδας σε δύο μισά. Αυτό θα χρησιμοποιηθεί για την τοποθέτηση της μονάδας σειριακής μνήμης flash, η οποία είναι μια επιφανειακά τοποθετημένη συσκευή με μικρή απόσταση μεταξύ των ακίδων, έτσι ώστε οι δύο μεσαίες ακίδες να στέκονται στα δύο μισά του μαξιλαριού συγκόλλησης και να μην βραχυκυκλώνουν. ντο. Κολλήστε το τσιπ μνήμης Winbond W25Q128 στον πίνακα perf. Βεβαιωθείτε ότι δεν έρχονται σε επαφή δύο ακίδες.

4. Συγκολλήστε πρόσθετα ανοίγματα από το τσιπ ATMega32U4 για τις ακίδες D11, D12, D13. ένα. Χρησιμοποιώντας μια λεπτή άκρη συγκόλλησης και έναν μεγεθυντικό φακό, κολλήστε τρία καλυμμένα φύλλα (μονωμένα) 0,5 mm στις καρφίτσες του τσιπ ATMega32U4 για να ανοίξετε τους πείρους D11, D12, D13. Ανατρέξτε στη διάταξη καρφιτσών του ATMega32U4. Αυτό είναι το πιο δύσκολο μέρος του έργου. Πέρασα μισή ώρα κάθε φορά που έπρεπε να το κολλήσω. Πρέπει να είστε εξαιρετικά προσεκτικοί για να μην βραχυκυκλώσετε τυχαία άλλες ακίδες του μικροελεγκτή, ενώ εξακολουθείτε να κάνετε μια σταθερή ένωση που θα διαρκέσει. Παρακολουθήστε βίντεο στο youtube για να μάθετε πώς να κάνετε τέτοιες μικροσκοπικές εργασίες συγκόλλησης και πώς να διασώσετε τυχαία διαρροή συγκολλήσεων χρησιμοποιώντας τα νήματα αποκόλλησης. Δεν θα συνιστούσα πιστόλι/φυσητήρα θερμού αέρα εκτός αν είστε αρκετά επιδέξιοι. Εάν η απόσταση και η ισχύς δεν ελέγχονται καλά, θα μπορούσε εύκολα να καταστρέψει τις κολλήσεις του τσιπ ATMega32U4 ή να λιώσει άλλα εξαρτήματα και να καταστρέψει ολόκληρη την πλακέτα σε σημείο που δεν μπορεί να ανακτηθεί.

σι. συγκολλήστε τα άλλα άκρα των τριών καλωδίων στα μεσαία 3 μαξιλάρια συγκόλλησης στην τελευταία σειρά του σειριακού θυγατρικού πίνακα φλας.

5. Τοποθετήστε τη σειριακή θυγατρική πλακέτα flash στο τσιπ Pro Micro. ένα. Συγκολλήστε σύρματα 0,5 mm στην πρώτη σειρά ακίδων στο πάνω μέρος της πλακέτας Pro Micro, δηλαδή TX και RAW.

σι. Συγκολλήστε σύρματα 0,5 mm (π.χ. αυτά από τα πόδια των τρανζίστορ) στις τέσσερις τελευταίες σειρές ακίδων στο πίσω μέρος του τσιπ Pro Micro. δηλ. D6, D7, D8, D9 και SCLK, MISO, MOSI και A10. Το σύρμα πρέπει να προεξέχει από πάνω και κάτω προς τα κάτω, ώστε να μπορούμε να το χρησιμοποιήσουμε για συγκόλληση στην θυγατρική σανίδα και να το συνδέσουμε με την κύρια πλακέτα στο κάτω μέρος. ντο. Συγκολλήστε τη σειριακή θυγατρική κάρτα flash στο Pro micro, συνδέοντας τις τελευταίες σειρές ακίδων του Pro Micro με αυτήν της θυγατρικής πλακέτας.

6. Τοποθετήστε την πλακέτα φόρτισης μπαταριών LIPO στην κύρια πλακέτα. ένα. Συγκολλήστε σύρματα 0,5 mm (π.χ. αυτά από τα πόδια των τρανζίστορ) στις 4 γωνίες της πλακέτας φορτιστή μπαταριών LIPO (για είσοδο -ve, +ve είσοδο, -ve έξοδο, +ve έξοδο). Τρυπήστε μια τρύπα στο σημείο όπου βρίσκεται η μεσαία ακίδα του ρυθμιστή 3V. Συγκολλήστε ένα πολυστρωματικό σύρμα 0,3 mm στο μεσαίο πείρο (έξοδος 3,3V).. β. Συγκολλήστε τα 4 πόδια της πλακέτας φορτιστή μπαταρίας στην κύρια πλακέτα, ακριβώς δίπλα στην υποδοχή ακουστικών 3,5 mm. Για να μειωθεί ο χώρος, η πλακέτα του φορτιστή πρέπει να πιεστεί προς τα κάτω για να συναντήσει την κύρια πλακέτα.

7. Τοποθετήστε τη μικρο -πλακέτα Pro στο κάτω μέρος της κύριας πλακέτας και κολλήστε όλες τις ακίδες από τις 4 τελευταίες σειρές και την πρώτη σειρά του Pro Micro στην κύρια πλακέτα. Δεν χρειάζεται να κολλήσετε τους άλλους πείρους, θα συνδεθούν με πολυστρωματικά σύρματα, όπως απαιτείται αργότερα. Αυτό θα επιτρέψει ευκολότερη τροποποίηση και, εάν απαιτείται, αντικατάσταση του Pro Micro εάν έχει καεί.

8. Φτιάξτε το υπόλοιπο της συγκόλλησης.

Συνδέστε τις ακίδες της πλακέτας Pro Micro στα διάφορα εξαρτήματα και κεφαλίδες. Όλη η σύνδεση συγκόλλησης θα γίνει στην κάτω πλευρά της πλάκας διάτρησης διπλής πλευράς. Αφού ολοκληρωθεί η συγκόλληση, δοκιμάστε τη σύνδεση.

9. Καλύψτε το κάτω μέρος της κύριας σανίδας με την ακρυλική σανίδα του ίδιου μεγέθους.

Βήμα 3: Φτιάξτε το καπέλο με κουμπιά

1. Δημιουργήστε το πλαίσιο για το καπέλο κουμπιού

ένα. Πάρτε τις σανίδες περ. 8cm x 5cm. Κόψτε το με ένα ψαλίδι (ή ένα πριόνι) για να κάνετε μικρότερες σανίδες περ. 3,5cm x 5cm. Θα πρέπει να έχει ακόμη 18 σειρές και 13 στήλες οπών καρφιτσών. Κόψτε ένα παράθυρο με παράθυρο 2,8 x 2,2 cm που είναι αρκετά μεγάλο για να αφήσει το γυαλί του OLED να προεξέχει από το πίσω μέρος. Χρησιμοποίησα έναν τροχό κοπής με διαμάντια για να το κάνω αυτό. Το εργαλείο είναι τόσο αιχμηρό και ισχυρό που μπορεί να χάσετε τα δάχτυλά σας εάν δεν είστε προσεκτικοί. Μπορείτε να τοποθετήσετε την κοπή στη δεύτερη σειρά των οπών καρφιτσών από την κορυφή και την 9η σειρά οπών καρφιτσών από το κάτω μέρος. και στη 2η στήλη οπών καρφιτσών από κάθε πλευρά.

σι. Συγκολλήστε μια αντρική κεφαλίδα 13 ακίδων στην τελευταία σειρά του πίνακα perf.

ντο. Κουμπιά διάταξης στον πίνακα perf για το D-PAD (κουμπιά κατεύθυνσης, πάνω, κάτω, αριστερά, δεξιά) και το κουμπί A και κουμπί B. Στη συνέχεια, κολλήστε τα στην μπροστινή πλευρά του πίνακα perf.

ρε. Στην κάτω πλευρά του πίνακα perf, συνδέστε τη μία πλευρά όλων των κουμπιών με τον πείρο γείωσης (καρφίτσα 2) της ανδρικής κεφαλίδας.

μι. Συνδέστε τη δεύτερη καρφίτσα κάθε κουμπιού με την αντίστοιχη καρφίτσα στην αρσενική κεφαλίδα για αυτό το κουμπί.

φά. Εάν χτίζετε ένα καπέλο για περιστροφικό ποτενσιόμετρο ή ελεγκτή κλήσης, θα εγκαταστήσετε 3-pin 10K Variable Resistor αντί για τα κουμπιά κατεύθυνσης D-PAD. Βεβαιωθείτε ότι ο αριθμός μέρους της μεταβλητής αντίστασης ξεκινά με "B" (π.χ. "B103" σημαίνει Max. 10K) και όχι "A". "Α" σημαίνει ότι η γωνία της στροφής είναι ανάλογη με το LOG της αντίστασης. Β σημαίνει ότι η γωνία της στροφής είναι ανάλογη της αντίστασης. χρειαζόμαστε VR τύπου B για περιστροφικό χειριστήριο παιχνιδιών Συνδέστε τη μία πλευρά του ποτενσιόμετρου (ο πείρος GND) στο GND (ακίδα 2 της κεφαλίδας του καπέλου κουμπιού). Συνδέστε την άλλη πλευρά του ποτενσιόμετρου στο VCC (καρφίτσα 3 της κεφαλίδας του κουμπιού). Συνδέστε τη μεσαία καρφίτσα του ποτενσιόμετρου στην επιλεγμένη αναλογική με την ψηφιακή ακίδα της πλακέτας Pro Micro (μία από τις A0, A1, A2, A3), ανάλογα με την ακίδα που κωδικοποιείται το παιχνίδι. Εάν ο έλεγχος δεν είναι ομαλός (πηδάει γύρω), μπορείτε να συνδέσετε έναν πυκνωτή 100pf μεταξύ του πείρου GND και του μεσαίου πείρου του ποτενσιόμετρου για να αποσυνδεθείτε από τον θόρυβο στο κύκλωμα.

Βήμα 4: Ρύθμιση του Arduino IDE

Εάν είστε νέοι στο Arduino, περιηγηθείτε στη διεύθυνση https://www.arduino.cc για να κάνετε λήψη του Arduino IDE για το λειτουργικό σύστημα που χρησιμοποιείτε π.χ. Windows 10 ή Mac OSX ή Linux.

Στη συνέχεια, εγκαταστήστε το.

Βήμα 5: Φτιάξτε το καλώδιο USBasp

Φτιάξτε το καλώδιο USBasp
Φτιάξτε το καλώδιο USBasp

Σε αντίθεση με τη φόρτωση δυαδικών κωδικών/παιχνιδιών σε οποιονδήποτε πίνακα Arduino, ο προγραμματισμός του bootloader δεν μπορεί να γίνει μέσω της θύρας USB.

Για να κάψετε τον προσαρμοσμένο bootloader (Cathy3K) στο τσιπ Atmega32U4, πρέπει να αποκτήσετε έναν προγραμματιστή USBasp. Ωστόσο, η δημιουργία μας λειτουργεί στα 3.3V, πρέπει να τροποποιήσουμε περαιτέρω τον προγραμματιστή USBasp ώστε να λειτουργεί σε 3.3V.

Ανατρέξτε στο ακόλουθο διδακτικό έργο για να τροποποιήσετε τον προγραμματιστή USBasp ώστε να λειτουργεί και στα 3.3V ή στα 5V μέσω ρυθμίσεων βραχυκυκλωτήρα.

www.instructables.com/id/Modify-a-5V-USBasp-Arduino-Bootloader-Programmer-t/

Στη συνέχεια, ακολουθήστε τη διάταξη pin και το βίντεο για να κάνετε το καλώδιο προγράμματος USBasp to ArduBaby. το πρωτότυπο καλώδιο USBasp που συνοδεύει το USBasp έχει δύο υποδοχές, η κάθε μία 10 ακίδες. Θα κόψουμε αυτό το καλώδιο στη μέση και θα συνδέσουμε μια αρσενική κεφαλίδα 6 ακίδων στο ένα άκρο διατηρώντας το άλλο άκρο που συνδέεται με την πλακέτα USBasp στα 10 pin.

Αυτό το άλλο άκρο θα συνδέσει τις καρφίτσες GND, VCC, MOSI, MISO, SCK, Reset από το USBasp στις αντίστοιχες ακίδες του ATmega32U4 μέσω της αρσενικής κεφαλίδας που συνδέεται με τις πρώτες έξι ακίδες της θηλυκής κεφαλίδας στο Ardubaby.

Για να κάνετε το πρόγραμμα ή να κάψετε το πρόγραμμα εκκίνησης στο ATmega32U4, θα αφαιρέσετε το καπέλο κουμπιού και θα συνδέσετε αυτό το καλώδιο USBasp 6 ακίδων.

Βεβαιωθείτε ότι έχετε σημειώσει ποια καρφίτσα είναι η ακίδα 1 στην κεφαλίδα του καλωδίου, έτσι ώστε να μην γίνει λάθος σύνδεση. Όταν σχεδίασα τη διάταξη των καρφιτσών για τις κεφαλίδες του καπέλου Ardubaby, προσπάθησα να τακτοποιήσω τους πείρους έτσι ώστε ακόμη και αν αλλάξατε τον πείρο 1 με τον πείρο 13, το τροφοδοτικό -ve δεν θα συναντηθεί κατά λάθος με το τροφοδοτικό +ve για να αποφύγετε ζημιές. Ωστόσο, ποτέ δεν γνωρίζετε, μπορεί να συμβούν άλλα πράγματα που θα μπορούσαν να καταστρέψουν το κιτ σας εάν συνδεθείτε σε λάθος κατεύθυνση.

Θα κάψω μια μικρή τρύπα για να το σημειώσω στην κεφαλίδα χρησιμοποιώντας την άκρη του συγκολλητικού σιδήρου.

Βήμα 6: Κάψτε το πρόγραμμα εκκίνησης

Ο MR. Blinky δημιούργησε το Arduboy-σπιτικό πακέτο για σπιτικό Arduboy.

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

1. Περιηγηθείτε στο φάκελο MR. Blinky's GitHub για το σπιτικό Arduboy. https://github.com/MrBlinky/Arduboy-homemade-package 2. Ακολουθήστε τις οδηγίες στο GitHub για να διαμορφώσετε το Arduino IDE με το σπιτικό πακέτο. 3. Αρχικά αντιγράψτε το url του "Additional board manager" για το σπιτικό πακέτο Arduboy.

4. Ξεκινήστε το Arduino IDE. Κάντε κλικ στις Προτιμήσεις από το επάνω μενού Arduino. Επικολλήστε αυτό το κείμενο στις "διευθύνσεις διευθύνσεων πρόσθετων πινάκων" Σημείωση: Εάν έχετε ήδη άλλο κείμενο σε αυτό το πεδίο, εισαγάγετε αυτό το πρόσθετο κείμενο στην αρχή, στη συνέχεια προσθέστε ένα "," και διατηρήστε το άλλο κείμενο άθικτο. 5. Κλείστε το Arduino IDE και ξεκινήστε ξανά το IDE για να εφαρμόσετε την παραπάνω αλλαγή. 6. Κάντε κλικ στην επιλογή Εργαλεία -> Πίνακας: -> Διαχειριστής πίνακα. Εισαγάγετε σπιτικό για αναζήτηση. Επιλέξτε για να εγκαταστήσετε το σπιτικό πακέτο Arduboy από τον Mr. Blinky. Στη συνέχεια, κάντε κλικ στην ενημέρωση για να λάβετε την πιο πρόσφατη έκδοση. Το πακέτο θα προστεθεί στο Arduino. 7. Τώρα επιλέξτε Εργαλεία-> Πίνακας: «Σπιτικό Arduboy. και επιλέξτε τις ακόλουθες παραμέτρους για το Homemade Arduboy”Με βάση:“SparkFun Pro Micro 5V - Standard καλωδίωση”Πυρήνας:“Arduboy Optimized core”Bootloader:“Cathy3K”Programmer: USBasp 8. Απενεργοποιήστε το Ardubaby και αφαιρέστε το καπέλο κουμπιού. 9. Ρυθμίστε το βραχυκυκλωτήρα στο USBasp σε 3,3V. Βεβαιωθείτε ότι χρησιμοποιείτε τροποποιημένο USBasp που λειτουργεί εξ ολοκλήρου σε 3.3V. 10. Συνδέστε το USBasp στη θύρα USB του υπολογιστή σας. Συνδέστε το ειδικό καλώδιο USBasp στο ArduBaby στο USBasp και το άλλο άκρο στην κεφαλίδα κουμπιού του Ardubaby, ευθυγραμμίστε τον πείρο 1 στον ακροδέκτη 1. Μόνο οι πρώτες 6 ακίδες του Ardubaby χρησιμοποιούνται για καύση του bootloader.

11. Το Ardubaby πρέπει να ενεργοποιηθεί τώρα μέσω της τροφοδοσίας 3,3V που παρέχεται από το USBasp. 12. Πατήστε μία φορά το κουμπί επαναφοράς του ArduBaby. 13. Κάντε κλικ στο κουμπί Εργαλεία-> Πίνακες-> Εγγραφή Bootloader στο Arduino IDE. 14. Ελέγξτε το μήνυμα για να δείτε εάν η εγγραφή του bootloader είναι επιτυχής. 15. Εάν όχι, ελέγξτε το καλώδιο και βεβαιωθείτε ότι έχετε συνδέσει τους πείρους στη σωστή κατεύθυνση και ευθυγραμμίστε τον πείρο 1 με τον πείρο 1. Μερικές φορές, το Ardubaby θα αρχίσει να παίζει ένα προηγούμενο παιχνίδι εάν λήξει το μενού εκκίνησης. Έτσι, πρέπει να κάνετε κλικ στο κουμπί Burn bootloader γρήγορα αμέσως μόλις πατήσετε το κουμπί επαναφοράς για να θέσετε το Ardubaby στη λειτουργία αναμονής για το φλας. 16. Εάν είναι όλα καλά, το ArduBaby θα επανεκκινήσει και θα δείτε είτε το μενού εκκίνησης, είτε το προηγούμενο παιχνίδι που έχετε φορτώσει στο ArduBaby.

Βήμα 7: Συγκεντρώστε και ανεβάστε μεμονωμένα παιχνίδια στο Arduboy

Μπορείτε να κατεβάσετε παιχνίδια για το Arduboy από τις ακόλουθες πηγές:

Φόρουμ κοινότητας Arduboy για παιχνίδια:

Η αναζήτηση GitHub στο "Arduboy games" https://github.com/topics/arduboy-game ή απλώς αναζήτηση "GitHub arduboy games" στο google.

Συλλογές παιχνιδιών που μοιράζονται άλλοι. π.χ. Συλλογές Arduboy του Erwin

arduboy.ried.cl/

Μπορείτε να κατεβάσετε τον πηγαίο κώδικα του παιχνιδιού που φορτώνετε στο Arduino και να τον ανεβάσετε στο Arduboy. Δείτε το βίντεο για το πώς γίνεται αυτό.

ή απλώς το hex αρχείο (το μεταγλωττισμένο δυαδικό αρχείο αλλά παρουσιάζεται σε Hex number εκτυπώνεται σε αρχείο κειμένου αντί για δυαδικό αρχείο).

Για τον πηγαίο κώδικα, απλώς ανοίξτε τον πηγαίο κώδικα στο Arduino IDE.

Ο πηγαίος κώδικας π.χ. Το picovaders.ino πρέπει να αποθηκευτεί σε ένα φάκελο με το ίδιο όνομα π.χ. picovaders

Οι απαιτούμενες βιβλιοθήκες Arduboy2 θα πρέπει να είναι ήδη εγκατεστημένες στο προηγούμενο βήμα όπου φορτώνουμε τον διαχειριστή πλακέτας για το σπιτικό πακέτο Arduboy.

Απλώς συνδέστε το Arduboy στη θύρα USB του υπολογιστή σας.

Ενεργοποιήστε το και, στη συνέχεια, κάντε κλικ στο κουμπί Μεταφόρτωση στο Arduino IDE για να μεταγλωττίσετε και να ανεβάσετε τον κώδικα στο Arduboy για να παίξετε το παιχνίδι.

Βήμα 8: Ανεβάστε μεμονωμένα αρχεία Hex

Το Hex αρχείο είναι ένα αρχείο κειμένου που περιέχει δυαδικούς κωδικούς που προκύπτουν από τη συλλογή του προγράμματος Arduino (σκίτσο), αλλά αντιπροσωπεύεται σε μορφή αρχείου κειμένου χρησιμοποιώντας διψήφιο δεκαεξαδικό αριθμό 0-9, A-F.

Μπορείτε να αποκτήσετε αυτά τα δεκαεξαδικά αρχεία με διαφορετικούς τρόπους.

1. Μπορούμε να κατεβάσουμε αρχεία hex από τις διάφορες πηγές που εξηγήσαμε παραπάνω:

community.arduboy.com/c/games Erwin's Arduboy Game Collections

Αναζητήστε "παιχνίδια Arduboy" στο GitHub.com ή στο google.com

Αποθηκεύστε αυτά τα δεκαεξαδικά αρχεία σε αρχεία με επέκταση.hex.

2. Εναλλακτικά, μπορείτε να φτιάξετε το δικό σας εξάγωνο αρχείο.

Στο Arduino IDE επιλέξτε Sketch> Export Compiled Binary. Το σκίτσο σας θα καταρτιστεί, στη συνέχεια, ένα αντίγραφο του μεταγλωττισμένου αρχείου.hex θα εξέλθει στον κατάλογο του σκίτσου σας. Περιηγηθείτε στο φάκελο σκίτσων ή στο IDE επιλέξτε Σκίτσο> Εμφάνιση φακέλου σχεδίου για να δείτε το εξάγωνο αρχείο. Εάν εγκαταστήσατε το σπιτικό πακέτο του MR. Blinky θα δημιουργηθεί δύο έκδοση του αρχείου.hex. Για παράδειγμα, εάν μεταγλωττίσετε το picovaders.ino sketh, θα δημιουργηθούν τα ακόλουθα δύο.hex αρχεία.

picovaders.ino-arduboy-promicro-ssd1306.hex picovaders.ino with_bootloader-arduboy-promicro-ssd1306.hex

Θα χρησιμοποιήσουμε το πρώτο αρχείο: picovaders.ino-arduboy-promicro-ssd1306.hex

3. Για να ανεβάσετε ένα δεκαεξαδικό αρχείο στο Arduboy, πρέπει να χρησιμοποιήσετε ένα πρόγραμμα μεταφόρτωσης. Υπάρχουν πολλές στο διαδίκτυο. Μου αρέσει να χρησιμοποιώ το πρόγραμμα μεταφόρτωσης του MR. Blinky καθώς είναι απλό στη χρήση.

Περιηγηθείτε στο https://github.com/MrBlinky/Arduboy-Python-Utilities και ακολουθήστε τις οδηγίες εκεί για να εγκαταστήσετε τα βοηθητικά προγράμματα MR. Blinky's Arduboy Python. Εάν δεν έχετε εγκατεστημένο python, πρέπει πρώτα να ακολουθήσετε τις οδηγίες για να εγκαταστήσετε το python και τις απαιτούμενες ενότητες python.

4. Συνδέστε το Arduboy στη θύρα USB του υπολογιστή σας. Ενεργοποιήστε το Arduboy.

5. Ξεκινήστε το πρόγραμμα κελύφους στο λειτουργικό σας σύστημα π.χ. η εφαρμογή τερματικού στο Mac OSX ή η γραμμή εντολών στα παράθυρα για να πληκτρολογήσετε τις ακόλουθες εντολές για να ανεβάσετε το εξάγωνο αρχείο στο Arduboy. Λαμβάνοντας ως παράδειγμα το προηγούμενο σκίτσο μας picovaders.ino.

python uploader.py picovaders.ino-arduboy-promicro-ssd1306.hex

6. Μόλις ανέβει το παιχνίδι, το Arduboy θα επαναρυθμιστεί και θα ξεκινήσει το παιχνίδι.

Βήμα 9: Γράψτε παιχνίδια σε σειριακό φλας

1. Για να γράψετε το ενοποιημένο αρχείο παιχνιδιού σε σειριακό flash, πρέπει να χρησιμοποιήσετε ξανά το MR. Blinky's Arduboy Python Utilities. Θα πρέπει να το έχετε ήδη εγκαταστήσει εάν ακολουθήσετε το προηγούμενο βήμα.

Διαφορετικά, περιηγηθείτε στο https://github.com/MrBlinky/Arduboy-Python-Utilities και ακολουθήστε τις οδηγίες εκεί για να εγκαταστήσετε τα βοηθητικά προγράμματα MR. Blinky's Arduboy Python. Εάν δεν έχετε εγκατεστημένο python, πρέπει πρώτα να ακολουθήσετε τις οδηγίες για να εγκαταστήσετε το python και τις απαιτούμενες ενότητες python.

2. Δημιουργήστε το αρχείο ευρετηρίου για το ενοποιημένο αρχείο εικόνας παιχνιδιού για χωρητικότητα έως και 500 παιχνιδιών.

Θα χρησιμοποιήσουμε το σενάριο Use the flashcart-builder.py για να δημιουργήσουμε τα ενοποιημένα αρχεία εικόνας παιχνιδιού για όλα τα παιχνίδια που θέλετε να αποθηκεύσετε στο σειριακό flash του Arduboy. Ένα σειριακό φλας 16MB μπορεί να χωρέσει έως και 500 παιχνίδια. Αυτό το σενάριο δημιουργεί μια δυαδική εικόνα flash από ένα αρχείο ευρετηρίου (.csv) και τα ακόλουθα 2 αρχεία για κάθε παιχνίδι: α..hex αρχεία που είναι το αρχείο κειμένου που περιέχει τους δεκαεξαδικούς κωδικούς των δυαδικών εικόνων των μεταγλωττισμένων παιχνιδιών Arduboy. Ανατρέξτε στο αρχείο Δείτε το παράδειγμα-flashcart / flashcart-index.csv για παράδειγμα σύνταξη. Αυτό το αρχείο περιλαμβάνεται στο πακέτο εάν κάνετε κλικ στην επιλογή Κλωνοποίηση ή Λήψη. σι.-p.webp

Το βίντεο στο youtube εξηγεί επίσης πώς να τοποθετήσετε τα πράγματα στη σωστή θέση αυτού του αρχείου ευρετηρίου.csv. Ένα πράγμα που πρέπει να σημειωθεί, τα παραδείγματα.csv αρχείο από το MR. Blinky's GitHub χρησιμοποιούνται σε υπολογιστές με Windows, ενώ η ανάστροφη "\" χρησιμοποιείται στα ονόματα διαδρομών. Εάν χρησιμοποιείτε σύστημα liunx ή MAC OSX πρέπει να το αλλάξετε σε "/".

Για να ξεκινήσετε γρήγορα, μπορείτε να κατεβάσετε το πακέτο των 63 παιχνιδιών μου από τη διεύθυνση https://github.com/cheungbx/ArduBaby 63games.zip

Αυτό το πακέτο περιέχει τα hex αρχεία και τα αρχεία-p.webp

Μπορείτε να προσθέσετε περισσότερα παιχνίδια στο games.csv και να δημιουργήσετε το δικό σας ενοποιημένο αρχείο δυαδικής εικόνας παιχνιδιού για εγγραφή στο σειριακό φλας. Μπορείτε να βάλετε έως 500 παιχνίδια στο σειριακό φλας 16Μ.

Θα εξηγήσω πώς να φτιάξετε το αρχείο.csv χρησιμοποιώντας το games.csv που μπορείτε να κατεβάσετε από το GitHub μου.

Παρόλο που το αρχείο.csv μπορεί να ανοίξει χρησιμοποιώντας το Excel. ΜΗΝ χρησιμοποιείτε το excel για να ανοίξετε το αρχείο. Θα καταστρέψει το αρχείο. Χρησιμοποιήστε μόνο έναν απλό επεξεργαστή κειμένου. Μπορείτε να χρησιμοποιήσετε το σημειωματάριο στα παράθυρα. Χρησιμοποίησα το textEdit στο MAC και έκανα κλικ στο "Format"-> "Make Plain Text".

Η πρώτη γραμμή του αρχείου.csv είναι η κεφαλίδα που μπορείτε να αγνοήσετε. Λίστα; Περιγραφή; Οθόνη τίτλου; Εξαγωνικό αρχείο

Η δεύτερη γραμμή δείχνει το αρχείο γραφικής εικόνας (πρέπει να είναι 128x64 pixel σε μορφή αρχείου png) για την οθόνη του μενού του φορτωτή εκκίνησης. 0; Bootloader; arduboy_loader.png;;;

Τα παιχνίδια διαμορφώνονται ξεκινώντας από την τρίτη γραμμή. Τα παιχνίδια οργανώνονται σε ομάδες στο μενού του bootloader που ονομάζονται κατηγορίες. Αυτή η γραμμή είναι ο τίτλος ομάδας της λίστας παιχνιδιών για αυτήν την ομάδα π.χ. Παιχνίδι Δράσης. Υποδεικνύει επίσης το αρχείο γραφικής εικόνας για την ομάδα παιχνιδιών. Το "1" στην αρχή δηλώνει τον αριθμό της ομάδας 1. Όλα τα παιχνίδια που ακολουθούν αυτήν την ομάδα θα ξεκινήσουν με αυτόν τον αριθμό. 1; Παιχνίδια Δράσης; Οθόνες κατηγορίας / Action.png;;;

Στη συνέχεια, προσθέτετε μία γραμμή για κάθε παιχνίδι εντός αυτής της ομάδας. Ξεκινώντας με τον αριθμό ομάδας 1, το όνομα του παιχνιδιού και τη διαδρομή του αρχείου γραφικών για ένα στιγμιότυπο της οθόνης και τη διαδρομή του δεκαεξαδικού αρχείου. Όλα χωρίζονται με ";". Προσθέστε ένα ακόμη ";" για να παραλείψετε την παράμετρο για το αρχείο αποθήκευσης. 1; 1943; Arcade/Nineteen43.png; Arcade/Nineteen43.hex;; 1; 2048; Arcade/2048.png; Arcade/2048.hex;;

Αφού τελειώσετε την πρώτη ομάδα παιχνιδιών, μπορείτε να προσθέσετε τη δεύτερη ομάδα παιχνιδιών και ούτω καθεξής. π.χ.

9; Demo & Test; demos/demotest.png;;; 9; Ζεστό βούτυρο; demos/HotButter_AB.png; demos/HotButter_AB.hex;; 9; Flashcart test; demos/flashcart-test/flashcart-test-title.png; demos/flashcart-test/flashcart-test.hex; demos/flashcart-test/badapple-frames.bin;

Η τελευταία γραμμή έχει ένα αρχείο αποθήκευσης στην παράμετρο που είναι μια ταινία κινουμένων σχεδίων.

3. Για να δημιουργήσετε το ενοποιημένο αρχείο εικόνας παιχνιδιού, πληκτρολογήστε την εντολή, όπου το games.csv είναι το αρχείο ευρετηρίου του παιχνιδιού σας.

python flashcart-builder.py games.csv

Αυτό θα δημιουργήσει ένα αρχείο με το όνομα games-image.bin

4. Γράψτε το ενοποιημένο αρχείο εικόνας παιχνιδιού στο Arduboy.

Χρησιμοποιούμε το σενάριο flashcart-writer.py του MR. Blinky για να γράψουμε το ενοποιημένο αρχείο εικόνας παιχνιδιού στη σειριακή μνήμη flash του Arduboy.

Εάν χρησιμοποιείτε το δείγμα αρχείου games-image.bin, μπορείτε να πληκτρολογήσετε αυτήν την εντολή.

python flashcart-writer.py games-image.bin

Εάν χρησιμοποιείτε οθόνη SSD1309 OLED αντί για SSD1306 OLED στην τυπική κατασκευή, μπορείτε να επιδιορθώσετε το πρόγραμμα οδήγησης οθόνης εν κινήσει. Για να εφαρμόσετε αυτόματα την ενημερωμένη έκδοση κώδικα SSD1309 στη μεταφορτωμένη εικόνα, δημιουργήστε ένα αντίγραφο του flashcart-writer.py και μετονομάστε το σε flashcart-writer-1309.py. Στη συνέχεια πληκτρολογήστε

python flashcart-writer-1309.py games-image.bin

Βήμα 10: Παίξτε Παιχνίδια από Serial Flash

Για να παίξετε παιχνίδια από σειριακό φλας, ενεργοποιήστε το Arduboy.

Εάν έχετε ήδη φορτώσει ένα παιχνίδι, το παιχνίδι θα ξεκινήσει αυτόματα. Πατήστε το κουμπί επαναφοράς στο επάνω μέρος του Ardubaby μία φορά για να μεταβείτε στο μενού του bootloader.

Θα εμφανιστεί το μενού του bootloader. Το LED RGB θα ανάψει με τη σειρά.

Αν εμφανιστεί ένα εικονίδιο που μοιάζει με θύρα USB, αυτό σημαίνει ότι το τσιπ σειριακής μνήμης flash δεν λειτουργεί. Παρακαλώ ελέγξτε την καλωδίωση.

Εάν δεν πατήσετε κανένα πλήκτρο εντός 12 δευτερολέπτων, το παιχνίδι που είναι ήδη αποθηκευμένο στην εσωτερική μνήμη flash του ATMega32U4 θα εκτελεστεί.

Για να επιστρέψετε από ένα παιχνίδι στο μενού του bootloader, απλώς πατήστε το κουμπί Reset μία φορά.

Μπορείτε να πατήσετε το αριστερό ή το δεξί κουμπί για να μετακινηθείτε στη διαφορετική κατηγορία (ομάδα) παιχνιδιών. Πατήστε το κουμπί κάτω ή πάνω για κύλιση στα παιχνίδια σε μια κατηγορία (ομάδα). Πατήστε το κουμπί "B" για να αντιγράψετε το παιχνίδι από τη σειριακή μνήμη flash στην εσωτερική μνήμη Flash του ATMega32U4. Το παιχνίδι θα ξεκινήσει μέσα σε ένα δευτερόλεπτο.

Τώρα έχετε μια μικρή κονσόλα παιχνιδιών που μπορείτε να παίξετε στο δρόμο.

Σας προκαλώ να συλλέξετε και να φορτώσετε το 16M Serial flash με 500 παιχνίδια. Δεν έχω δει κανέναν που να το έχει κάνει για να γεμίσει το σειριακό φλας. Εάν μπορείτε να το κάνετε αυτό, μοιραστείτε αυτό το ενοποιημένο αρχείο παιχνιδιού μαζί μας.

Συνιστάται: