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

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

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

Βίντεο: Βασικός υπολογιστής Arduino με έξοδο VGA: 5 βήματα (με εικόνες)
Βίντεο: Η τεχνολογία arduino στις κατασκευές μας. 2024, Ιούλιος
Anonim
Image
Image
Βασικός υπολογιστής Arduino με έξοδο VGA
Βασικός υπολογιστής Arduino με έξοδο VGA
Βασικός υπολογιστής Arduino με έξοδο VGA
Βασικός υπολογιστής Arduino με έξοδο VGA

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

Τώρα θα δείξω πώς να φτιάξω τον ίδιο υπολογιστή, αλλά με έγχρωμο σήμα εξόδου για οθόνη VGA!

Μπορείτε να εισαγάγετε τις μεταβλητές και το πρόγραμμα BASIC με ένα πληκτρολόγιο PS2 και παράγει την έξοδο για μια οθόνη VGA με ανάλυση κειμένου 24 στηλών x 10 σειρές χαρακτήρων 5x6 pixel, σε τέσσερα χρώματα. Μπορείτε να το δείτε σε δράση στο επάνω βίντεο. Το πρόγραμμα μπορεί στη συνέχεια να αποθηκευτεί στο Arduino EEPROM και μπορείτε ακόμα να ελέγξετε τις ακίδες εισόδου/εξόδου απευθείας μέσω βασικών ειδικών εντολών.

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

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

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

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

Το TinyBasic Plus και η βιβλιοθήκη VGAx λειτουργούν για το Arduino IDE 1.6.4.

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

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

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

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

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

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

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

Εδώ μπορείτε ήδη να δοκιμάσετε κάποιο πρόγραμμα στο 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: Ανεβάστε τη βιβλιοθήκη και τον κώδικα VGAx στο δεύτερο Arduino και βάλτε τα πάντα μαζί

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

Κατεβάστε πρώτα τον κώδικα VGAx-PC.ino στο κάτω μέρος αυτής της σελίδας και αντιγράψτε τον στον υπολογιστή σας σε έναν κατάλογο με το ίδιο όνομα.

Κατεβάστε τη βιβλιοθήκη VGAx από αυτόν τον σύνδεσμο στο GitHub. Ο ευκολότερος τρόπος είναι να το αντιγράψετε στον υποφάκελο λογισμικού Arduino που ονομάζεται "βιβλιοθήκες", για να αναγνωριστεί αμέσως.

ΣΗΜΑΝΤΙΚΟ: αυτή η βιβλιοθήκη λειτουργεί για το Arduno IDE 1.6.4 αλλά δεν είναι πλήρως συμβατή με παλαιότερες ή νεότερες εκδόσεις.

Ανεβάστε το VGAx-PC.ino στον δεύτερο πίνακα Arduino (το δοκίμασα για την έκδοση Nano, αλλά το Uno πρέπει επίσης να λειτουργεί).

Η προειδοποίηση για χαμηλή διαθέσιμη μνήμη είναι φυσιολογική. Εάν δεν έχετε άλλα σφάλματα, όλα είναι εντάξει και μπορείτε να ξεκινήσετε αμέσως να δημιουργείτε τον δικό σας υπολογιστή 8-bit.

Για αυτό χρειάζεστε:

  • δύο Arduino Uno Rev. 3 ή δύο Arduino Nano 3.x (ATmega328)
  • έναν συνδετήρα DSUB15, δηλαδή έναν θηλυκό σύνδεσμο VGA ή ένα καλώδιο VGA που πρόκειται να κοπεί.
  • αντιστάσεις: 2 x 68 Ohm και 2 x 470 Ohm
  • θηλυκό βύσμα PS2
  • καλώδια
  • προαιρετικό: ένα breadboard ή ένα strip board

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

Το ίδιο σχηματικό, με υψηλότερη ανάλυση, αναφέρεται σε ένα συμπιεσμένο αρχείο στο κάτω μέρος αυτού του βήματος.

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

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

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

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

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

Η κύρια γνώση μου πηγαίνει στον Sandro Maffiodo aka Smaffer, τον δημιουργό της φοβερής βιβλιοθήκης VGAx.

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

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

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

Σε όλους τους ανθρώπους που ενδιαφέρονται για αυτό το έργο: εάν έχετε προβλήματα, μη διστάσετε να ζητήσετε προτάσεις στα σχόλια.

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

Συνιστάται: