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

Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης: 5 βήματα (με εικόνες)
Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης: 5 βήματα (με εικόνες)

Βίντεο: Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης: 5 βήματα (με εικόνες)

Βίντεο: Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης: 5 βήματα (με εικόνες)
Βίντεο: Using Digispark Attiny85 Mini Arduino boards: Lesson 108 2024, Νοέμβριος
Anonim
Image
Image
Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης
Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης
Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης
Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης
Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης
Βασικός υπολογιστής Arduino με έξοδο τηλεόρασης

Σε αυτό το Instructables θα δείξω πώς να φτιάξετε έναν ρετρό υπολογιστή 8-bit που λειτουργεί BASIC, μέσω δύο Arduino και μερικών άλλων εξαρτημάτων.

Μπορείτε να εισαγάγετε τις μεταβλητές και το πρόγραμμα BASIC με ένα πληκτρολόγιο PS2 και η έξοδος εμφανίζεται σε μια οθόνη με κείμενο 47 στήλες x 29 σειρές χαρακτήρων 8x8 pixel (B&W), ανάλυση παρόμοια ή καλύτερη από το Commodore 64, ίση με 40 x 25 χαρακτήρες.

Μπορείτε να το δείτε σε δράση στο επάνω βίντεο.

Το πρόγραμμα μπορεί στη συνέχεια να αποθηκευτεί στο Arduino EEPROM και μπορείτε ακόμα να ελέγξετε τις ακίδες εισόδου/εξόδου απευθείας μέσω βασικών ειδικών εντολών.

Το ένα Arduino είναι το "master" και τρέχει το Tiny Basic Plus, μια εφαρμογή C του Tiny Basic, με έμφαση στην υποστήριξη του Arduino. Επίσης, ελέγχει ένα πληκτρολόγιο PS2. Στη συνέχεια, η έξοδος αποστέλλεται μέσω της σειριακής θύρας στο δεύτερο Arduino, το οποίο δημιουργεί την έξοδο βίντεο χάρη στην υπέροχη βιβλιοθήκη MRETV.

Η ιδέα να χρησιμοποιήσετε ένα ή περισσότερα Arduino για να δημιουργήσετε έναν υπολογιστή παλιού στυλ με διάλεκτο Basic δεν είναι καινούργια, αλλά μέχρι στιγμής υπάρχουν ορισμένοι ισχυροί περιορισμοί στην ανάλυση εξόδου. Σε ορισμένα έργα που διατίθενται στο διαδίκτυο, οι άνθρωποι χρησιμοποιούσαν οθόνες LCD, ενώ σε άλλες, για να επιτρέψουν τη χρήση οθονών, χρησιμοποιήθηκε η βιβλιοθήκη TVout, η οποία έχει πολύ χαμηλότερη ανάλυση. Επιπλέον, σε πολλά από αυτά τα έργα πρέπει να κατασκευαστούν ειδικές ασπίδες ή υλικό.

Εδώ χρειάζεστε μόνο δύο Arduino, μερικές διόδους, λίγες αντιστάσεις και τη σύνδεση για το πληκτρολόγιο PS2 και την οθόνη, όπως φαίνεται στην παραπάνω εικόνα.

Βήμα 1: Δημιουργήστε το Arduino Master με το πληκτρολόγιο TinyBasic και PS2

Το TinyBasic Plus και το MRETV λειτουργούν για μεγαλύτερους - και διαφορετικούς - Arduino IDE.

Πρώτα κατεβάστε το IDE 1.6.4 από την επίσημη ιστοσελίδα του Arduino. Εάν έχετε νεότερες εκδόσεις στον υπολογιστή σας, το καλύτερο είναι να το κατεβάσετε σε μορφή.zip και να τις αποσυμπιέσετε στον υπολογιστή σας. Κάντε κλικ σε αυτόν τον σύνδεσμο για λήψη της έκδοσης των Windows.

Στη συνέχεια, χρειάζεστε τη βιβλιοθήκη του πληκτρολογίου PS2. Μπορείτε να το βρείτε στο κάτω μέρος αυτής της σελίδας. Απλώς αποσυμπιέστε το και αντιγράψτε τον φάκελο του πληκτρολογίου PS2 σε: arduino-1.6.4 / βιβλιοθήκες

Τέλος, σε αυτήν τη σελίδα, κατεβάστε το αρχείο: TinyBasicPlus_PS2.ino, αποσυμπιέστε και ανεβάστε το στο Arduino σας.

Αυτή είναι μια παραλλαγή του τυπικού TinyBasic Plus όπου έχω προσθέσει τη βιβλιοθήκη PS2 και έχω τροποποιήσει τον κώδικα για να δεχτώ τη μεταβλητή από αυτήν.

Περισσότερες λεπτομέρειες για το TiniBasic Plus και τα σεμινάρια μπορείτε να βρείτε σε αυτόν τον σύνδεσμο.

Εάν δεν υπάρχουν προβλήματα και προβλήματα συμβατότητας, το Tiny Basic εκτελείται ήδη. Μπορείτε να το δοκιμάσετε μέσω σειριακής οθόνης στον υπολογιστή σας. Για το σκοπό αυτό χρησιμοποιώ το PuTTY, αλλά είναι διαθέσιμα πολλά άλλα προγράμματα.

Πρέπει να ορίσετε τη σωστή θύρα COM (είναι η ίδια που βρίσκετε στο Arduino IDE) και ρυθμός baud = 2400

Εδώ μπορείτε ήδη να δοκιμάσετε κάποιο πρόγραμμα στο Basic απλώς πληκτρολογώντας το με το πληκτρολόγιο του υπολογιστή σας (ΣΗΜΕΙΩΣΗ αργότερα θα δείξω πώς να συνδέσετε το πληκτρολόγιο PS2 απευθείας στο Arduino).

Δοκιμάστε για παράδειγμα:

10 ΕΚΤΥΠΩΣΗ "Hello, World!"

20 GOTO 10

ΤΡΕΞΙΜΟ

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

Στο επόμενο βήμα θα δείξω πώς να συνδέσετε το πληκτρολόγιο PS2 στο Arduino.

Βήμα 2: Συνδέστε το πληκτρολόγιο PS2 στο Master Arduino

Συνδέστε το πληκτρολόγιο PS2 στο Master Arduino
Συνδέστε το πληκτρολόγιο PS2 στο Master Arduino

Πήρα όλες τις πληροφορίες και τη βιβλιοθήκη από αυτό το Instructable.

Ουσιαστικά πρέπει να συνδέσετε τις ακόλουθες τέσσερις ακίδες:

  • πληκτρολόγιο Δεδομένα στο Arduino pin 8,
  • πληκτρολόγιο IRQ (ρολόι) στο Arduino pin 3.
  • φυσικά πρέπει να συνδέσετε GND και +5V επίσης.

Πήρα έναν παλιό θηλυκό σύνδεσμο PS2 από μια σπασμένη μητρική πλακέτα υπολογιστή. Μπορείτε απλά να το ξεπουλήσετε με ένα θερμικό όπλο.

Στην εικόνα που εμφανίζεται σε αυτό το βήμα, μπορείτε να βρείτε τη λειτουργία των απαιτούμενων ακίδων του συνδετήρα PS2.

Βήμα 3: Ανεβάστε τη βιβλιοθήκη MRETV στο δεύτερο Arduino και βάλτε τα πάντα μαζί

Ανεβάστε τη βιβλιοθήκη MRETV στο δεύτερο Arduino και βάλτε τα πάντα μαζί
Ανεβάστε τη βιβλιοθήκη MRETV στο δεύτερο Arduino και βάλτε τα πάντα μαζί

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

Χρησιμοποιεί μόνο δύο αντιστάσεις και δύο διόδους για τη δημιουργία βίντεο πλήρους οθόνης, με ανάλυση κειμένου 47 x 29 των 8x8 χαρακτήρων. Όπως λέει στην εισαγωγή, "η δημιουργία βίντεο έχει γίνει στο παρελθόν, αλλά όχι έτσι. Το πλήρες σίριαλ FULL DUPLEX εξακολουθεί να είναι διαθέσιμο κατά τη δημιουργία βίντεο". Αυτό σας επιτρέπει να λάβετε τα δεδομένα από το "κύριο" Arduino και να τα εμφανίσετε στην οθόνη. Στην πράξη, αυτό το δεύτερο "σκλάβο" Arduino χρησιμοποιείται ως γραφικό περιβάλλον!

Επειδή το MRETV λειτουργεί για το IDE 1.6.6, κατεβάστε το από την επίσημη ιστοσελίδα του Arduino. Και πάλι, το καλύτερο είναι να το κατεβάσετε σε μορφή.zip και να τα αποσυμπιέσετε στον υπολογιστή σας. Κάντε κλικ σε αυτόν τον σύνδεσμο για λήψη της έκδοσης των Windows.

Κατεβάστε στη συνέχεια τη βιβλιοθήκη MRETV από αυτόν τον σύνδεσμο.

Αποσυμπιέστε το και αποθηκεύστε το φάκελο "MRETV" σε: arduino-1.6.6 / βιβλιοθήκες

Τέλος, κατεβάστε το TVtext_slave.rar στο κάτω μέρος αυτής της σελίδας, αποσυμπιέστε το και ανεβάστε το στο βοηθό Arduino.

Εάν δεν υπάρχει μήνυμα σφάλματος, μπορείτε να συνδέσετε την υποδοχή RCA. Χρειάζεστε τις δύο διόδους και τις αντιστάσεις 1 kOhm και 300 Ohm, όπως φαίνεται στο σχηματικό σχήμα αυτής της σελίδας.

Σε αυτό το σημείο μπορείτε να συνδέσετε τα πάντα μαζί.

Ο πλήρης κατάλογος των υλικών είναι:

  • δύο Arduino Uno Rev. 3 ή δύο Arduino Nano 3.x (ATmega328)
  • δύο αντιστάσεις 1 kOhm
  • μία αντίσταση 300 Ohm
  • δύο διόδους 1n4148 (x2) ή παρόμοια δίοδο μεταγωγής πυριτίου
  • δύο θηλυκά βύσματα RCA (ένα για βίντεο, ένα - προαιρετικό - για ήχο)
  • θηλυκό βύσμα PS2
  • ένα breadboard και σύρματα

Ο κύριος Arduino στέλνει τα δεδομένα στη σκλάβη μέσω του πορτοκαλί καλωδίου, δηλαδή τον κύριο πείρο 1 (Tx) στον ακροδέκτη 2 (Rx). Εάν πρέπει να ανεβάσετε ξανά κάποιον κώδικα, θα πρέπει πρώτα να αποσυνδέσετε αυτό το καλώδιο.

Συνδέστε το slave arduino σε τροφοδοτικό 5V, το καλώδιο RCA στην τηλεόραση και το πληκτρολόγιο στο PS2 και τώρα θα πρέπει να δείτε τον κωδικό στην τηλεόρασή σας!

Οι λειτουργίες αυτής της βασικής διαλέκτου περιγράφονται λεπτομερώς στην αρχική της σελίδα (δείτε σύνδεσμο στο βήμα 2). Με τις εντολές "esave" και "eload" μπορείτε να αποθηκεύσετε ένα βασικό πρόγραμμα στο EEPROM. Αυτό το πρόγραμμα εκτελείται από προεπιλογή κάθε φορά που κάνετε επαναφορά του κύριου Arduino. Για να το διαγράψετε, μπορείτε να χρησιμοποιήσετε την εντολή "eformat".

Ένα από τα πιο σημαντικά χαρακτηριστικά αυτού του προγράμματος είναι ότι μπορείτε ακόμα να οδηγήσετε την κύρια είσοδο/έξοδο Arduino με αποκλειστικές βασικές εντολές, όπως

  • DWRITE pin, value - set pin with a value (HIGH, HI, LOW, LO)
  • AWRITE pin, value - set pin with analog value (pwm) 0..255
  • DREAD (καρφίτσα) - λάβετε την τιμή του πείρου
  • AREAD (analogPin) - λάβετε την τιμή του αναλογικού πείρου

Έτσι, μπορείτε να γράψετε ένα πρόγραμμα στο Basic που οδηγεί κάποιο υλικό, να το αποθηκεύσετε στο EEPROM και στη συνέχεια να το εκτελέσετε αυτόματα απλώς επαναφέροντας το Arduino.

Βήμα 4: Προαιρετικό: Χρήση PCB

Προαιρετικά: Χρήση PCB
Προαιρετικά: Χρήση PCB
Προαιρετικά: Χρήση PCB
Προαιρετικά: Χρήση PCB
Προαιρετικά: Χρήση PCB
Προαιρετικά: Χρήση PCB

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

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

Πρόσθεσα επίσης στο κέντρο τις υπόλοιπες λωρίδες, η μία συνδεδεμένη με 5 V και η άλλη για GND.

Τέλος, στο αρχείο.rar, μπορείτε να βρείτε τις μάσκες για να χαράξετε ένα χαρτόνι.

Βήμα 5: Τελικά σχόλια και ευχαριστίες

Αυτό το έργο δεν θα μπορούσε να γίνει χωρίς τη βιβλιοθήκη MRETV. Έτσι, η κύρια αναγνώρισή μου πηγαίνει στον συγγραφέα του, ο οποίος χρησιμοποιεί το ακρωνύμιο Mr E.

Ευχαριστούμε επίσης τους συγγραφείς του TinyBasic Plus:

  • Tiny Basic 68k - Gordon Brandly
  • Arduino Basic / Tiny Basic C - Michael Field
  • Tiny Basic Plus - Scott Lawrence

Ευχαριστώ επίσης τον "djsadeepa", τον συγγραφέα του Instructable για τη σύνδεση του πληκτρολογίου PS2.

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

Εάν πετύχετε, γράψτε επίσης ένα σχόλιο ή μοιραστείτε μια εικόνα της συσκευής που κατασκευάζετε.

Συνιστάται: