Πώς να αναδημιουργήσετε το παιχνίδι Classic Pong χρησιμοποιώντας το Arduino

Το Pong ήταν το πρώτο βιντεοπαιχνίδι που έφτασε στη μαζική αγορά. Για πρώτη φορά στην ιστορία, η έννοια ενός βιντεοπαιχνιδιού μεταφέρθηκε στο σπίτι της οικογένειας χάρη στο Atari 2600 - γι 'αυτό είναι σωστό να δώσουμε ένα μικρό αφιέρωμα σε αυτό το ιστορικό στολίδι.

Το Pong ήταν το πρώτο βιντεοπαιχνίδι που έφτασε στη μαζική αγορά.  Για πρώτη φορά στην ιστορία, η έννοια ενός βιντεοπαιχνιδιού μεταφέρθηκε στο σπίτι της οικογένειας χάρη στο Atari 2600 - γι 'αυτό είναι σωστό να δώσουμε ένα μικρό αφιέρωμα σε αυτό το ιστορικό στολίδι.
Διαφήμιση

arduino πονγκ Το Pong ήταν το πρώτο βιντεοπαιχνίδι που έφτασε στη μαζική αγορά. Για πρώτη φορά στην ιστορία, η έννοια ενός "βιντεοπαιχνιδιού" εισήχθη στο οικογενειακό σπίτι, χάρη στο Atari 2600 - έτσι είναι σωστό να δώσουμε ένα μικρό αφιέρωμα σε αυτό το ιστορικό στολίδι. Τώρα, μπορείτε να ζήσετε ξανά αυτό (βεβαίως κάπως βαρετό gameplay) χρησιμοποιώντας ένα Arduino και μερικά κοινά στοιχεία.

Δεν θα ψέψω - είναι απίθανο η κόρη σας να παραιτηθεί από το Nintendo DS και αυτό δεν πρόκειται να προσφέρει ώρες διασκέδασης για όλη την οικογένεια - αλλά είναι ένα φοβερό και εύκολο έργο για να βελτιώσετε την κωδικοποίησή σας από το Arduino. Και αν ξεκινάτε μόνο, μην ξεχάσετε να δείτε τον οδηγό Arduino του αρχαρίου μας.

Θα δημιουργήσουμε δύο βασικούς ελεγκτές και το βίντεο θα βγει στην τηλεόρασή σας μέσω ενός συμβατικού καλωδίου σύνθετου βίντεο.

Απαιτήσεις για το Arduino Pong

  • Αντίσταση 470 ohm x1
  • 1k ohm αντίσταση x1
  • 10k ohm Ποτενσιόμετρο ( twiddly μεταβλητή αντίσταση) x2
  • Arduino x1 (οποιαδήποτε έκδοση)
  • RCA plug x1 (αν έχετε περισσότερα από ένα, μπορείτε να συνδέσετε τον ήχο πολύ. Ένα για το βίντεο είναι ένα ελάχιστο ελάχιστο)
  • Διακόπτης κουμπιού x1
  • 10k ohm αντίσταση x1

arduino πονγκ

Επίσης, θα κατεβάσετε τη βιβλιοθήκη TV Out Arduino από εδώ - λάβετε το TVoutBeta1.zip, την πιο πρόσφατη έκδοση. Τοποθετήστε όλους τους φακέλους που προκύπτουν στον κατάλογο / arduino / libraries και επανεκκινήστε το ID του Arduino αν είναι ήδη ανοικτό.

Δοκιμάζοντας την τηλεόραση

Πάρτε το βύσμα RCA και απογυμνώστε το εξωτερικό στρώμα. Συγκεντρώστε τη θωράκιση, στρίψτε και αποθέστε τη μία πλευρά. Αυτό είναι το λόγο σας. Στο κέντρο θα πρέπει να είναι ένα άλλο καλώδιο με πλαστική θωράκιση - και πάλι, απογυμνώστε το έτσι ώστε να έχετε τη γραμμή σήματος.

παιχνίδι arduino pong

Συνδέστε και τις δύο αντιστάσεις 470 ohm και 1k ohm στην κεντρική γραμμή σήματος του βύσματος RCA - αυτό παρέχει ένα σήμα συγχρονισμού και το πραγματικό σήμα βίντεο, σε συνδυασμό για την παραγωγή της αναλογικής εισόδου βίντεο. Η αντίσταση 470 ohm θα πρέπει να διαθέτει υποδοχή στην ψηφιακή πύλη IO D07, ενώ η αντίσταση 1k ohm πηγαίνει στον ακροδέκτη D09.

Αυτές οι καρφίτσες καθορίζονται από τη βιβλιοθήκη που εισάγουμε, επομένως δεν μπορείτε να τις αλλάξετε. Ένας από τους ακροδέκτες σας Arduino GND πρέπει να πάει στην θωράκιση (έξω) του RCA.

παιχνίδι arduino pong

Τώρα μπορείτε να προχωρήσετε και να φορτώσετε σε ένα παράδειγμα. παρόλο που παρέχονται και τα δύο PAL και NTSC, δεν θα έπρεπε να έχει σημασία με τις σύγχρονες ψηφιακές τηλεοράσεις - το demo του NTSC λειτούργησε καλά για μένα παρά το γεγονός ότι βρισκόταν στο Ηνωμένο Βασίλειο. Συνδέστε την τηλεόρασή σας και θα πρέπει να πάρετε έναν όμορφο ρετρό 3D κύβο. Oooooh ναι - είσαι ενθουσιασμένος ακόμα; Εγω ειμαι.

παιχνίδι arduino pong

Ελέγξτε τις εισόδους αναλογικού δυναμικού

Εντάξει, έχουμε την έξοδο της τηλεόρασης, τώρα ας πάμε με τους ελεγκτές. Η καλωδίωση των "δοχείων" δεν είναι τόσο κρίσιμη - ο καθένας πρέπει να έχει 3 ακίδες, και ο κεντρικός σχεδόν πάντα παράγει το σήμα εξόδου. Σύρετε το σε A0 και A1 (ένα για κάθε κατσαρόλα). Σε μία από τις πλευρικές καρφίτσες - δεν έχει σημασία ποιο - σύρμα επάνω + 5V. Ο άλλος πείρος στην άλλη πλευρά πρέπει να πάει στο έδαφος.

Εδώ έχω βάλει και τους δύο που αντιμετωπίζει το καθένα σε ενιαίο breadboard, επειδή έχω μόνο σύντομα καλώδια. Για ένα γυαλισμένο προϊόν, θα χρειαστεί να χρησιμοποιήσετε κάποιο παλιό καλώδιο δικτύωσης για να σας δώσω μια μικρή απόσταση (ώστε να μπορείτε πραγματικά να καθίσετε στον καναπέ για να παίξετε).

arduino pong project

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

Δεν δοκιμάζει το άλλο ποτ Α1, αλλά αν έχετε A0 καλωδιωμένο σωστά τότε δεν μπορώ να δω πώς θα κάνατε ένα λάθος στο A1, οπότε ας υποθέσουμε ότι όλα είναι καλά και να προχωρήσουμε.

Προσθέστε ένα διακόπτη έναρξης

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

arduino pong project

Ο κώδικας πονγκ

Χρησιμοποιούμε κάποιο κώδικα που γράφτηκε αρχικά από τη Lamonica, τροποποιήθηκε από duboisvb για δύο παίκτες και ενημερώθηκε από τον εαυτό μου για να χρησιμοποιήσω την πιο πρόσφατη έκδοση beta της τηλεοπτικής βιβλιοθήκης. Μπορείτε να δείτε και να κατεβάσετε τον κώδικα από αυτό το πακέτο.

Είναι πολύ μακρύς αλλά απλός κώδικας που δεν πρέπει να απαιτεί εξηγήσεις από μένα. Όπως και τα περισσότερα παιχνίδια, βασίζεται σε κατάσταση παιχνιδιού (μενού, εντός παιχνιδιού, παιχνιδιού) και διαβάζει τις τιμές εισόδου και των δύο ελεγκτών και την αλλαγή κάθε επανάληψης του βρόχου. Πέρα από αυτές είναι οι μέθοδοι για την σχεδίαση της οθόνης, της μπάλας, των πελμάτων και της λογικής του παιχνιδιού.

arduino pong project

Σημειώστε ότι ο κώδικας περιλαμβάνει και την έξοδο ήχου : Δεν μπορούσα να βρω κανένα άλλο βύσμα RCA για να το δοκιμάσω αυτό, αλλά αν έχετε κάποια, τότε σύρετε τον ακροδέκτη σήματος κατευθείαν στο D11 και θα πρέπει να πάρετε μερικές ευχάριστες ρετρό τόνους.

arduino πονγκ

Για να είμαι ειλικρινής, δεν ήξερα ότι ο Arduino θα μπορούσε να βγάλει τηλεόραση χωρίς κάποια πολύπλοκη κωδικοποίηση. η τηλεοπτική βιβλιοθήκη είναι πολύ εύκολη. Ακόμα κι αν δεν είστε στο ρετρό παιχνίδια, χρησιμοποιώντας αυτό το βασικό TV out είναι ένας πολύ καλός τρόπος για να χρησιμοποιήσετε τον υπάρχοντα εξοπλισμό ως μια φτηνή συσκευή οθόνης. Μπορείτε φυσικά να εξάγετε και το χρώμα.

Πιστεύετε ότι θα πάτε στο Arduino Pong, ή ίσως να φτιάξετε το δικό σας ρετρό video game; Πείτε μας στα σχόλια αν έχετε!

In this article