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

ESP32 Basic PC με έξοδο VGA: 7 βήματα
ESP32 Basic PC με έξοδο VGA: 7 βήματα

Βίντεο: ESP32 Basic PC με έξοδο VGA: 7 βήματα

Βίντεο: ESP32 Basic PC με έξοδο VGA: 7 βήματα
Βίντεο: ESP32 Tutorial 7 - Using Array with ESP32 Arduino Programming-SunFounder's ESP32 IoT Learnig kit 2024, Ιούλιος
Anonim
Image
Image
Πίνακες ESP32, Arduino IDE Installation και VGA Library Configuration
Πίνακες ESP32, Arduino IDE Installation και VGA Library Configuration

Σε αυτό το Instructable θα δείξω πώς να φτιάξετε έναν απλό υπολογιστή ρετρό στυλ που γίνεται με ένα μόνο ESP32 και μερικά άλλα εξαρτήματα.

Αυτός ο υπολογιστής τρέχει το Tiny Basic, μια απλοποιημένη διάλεκτο του BASIC και παράγει την έξοδο για μια οθόνη VGA.

Η ανάλυση είναι 640x350 pixels, επιτρέποντας 80x25 asci χαρακτήρες σε 8 χρώματα. Ένα πληκτρολόγιο PS2 μπορεί να συνδεθεί και να χρησιμοποιηθεί για την εγγραφή του κώδικα, επιτρέποντας έως και 14059 byte μνήμης.

Οι ακίδες εισόδου/εξόδου ESP32 μπορούν να οδηγηθούν απευθείας από αποκλειστικές βασικές εντολές.

Αυτό το έργο καθίσταται δυνατό χάρη στη φοβερή βιβλιοθήκη ESP32 VGA που γράφτηκε από τον Fabrizio Di Vittorio. Δείτε εδώ για περισσότερες λεπτομέρειες.

Βήμα 1: Πίνακες ESP32, Arduino IDE Installation και VGA Library Configuration

Πίνακες ESP32, Arduino IDE Installation και VGA Library Configuration
Πίνακες ESP32, Arduino IDE Installation και VGA Library Configuration
Πίνακες ESP32, Arduino IDE Installation και VGA Library Configuration
Πίνακες ESP32, Arduino IDE Installation και VGA Library Configuration

Πρώτα απ 'όλα πρέπει να αγοράσετε μια αναθεώρηση ESP32 1 ή επάνω. Υπάρχουν πολλές διαθέσιμες εκδόσεις, αλλά προτείνω να επιλέξετε μία με πολλές καρφίτσες. Χρησιμοποιώ αυτήν την έκδοση, αλλά νομίζω ότι πολλές άλλες είναι επίσης καλές. Για παράδειγμα, στην περιγραφή αυτού του βίντεο, μπορείτε να βρείτε άλλα τρία μοντέλα που είναι κάτω από 5 δολάρια.

Μόλις αποκτήσετε τον πίνακα, πρέπει να προχωρήσετε στα ακόλουθα τρία υπο-βήματα:

  1. Εγκαταστήστε το τελευταίο Arduino IDE
  2. Διαμορφώστε το ESP32 στο IDE και
  3. Εγκαταστήστε τη βιβλιοθήκη VGA

Υπο-βήμα 1.

Υπάρχουν διάφορες μέθοδοι για τον προγραμματισμό του ESP32, αλλά εδώ πρέπει να χρησιμοποιήσετε το πιο πρόσφατο Arduino IDE (χρησιμοποιώ την έκδοση 1.8.9). Για να το εγκαταστήσετε, μπορείτε να μεταβείτε στη σελίδα Arduino IDE και να ακολουθήσετε τις οδηγίες.

Υπο-βήμα 2

Μόλις ολοκληρωθεί η προηγούμενη λειτουργία, πρέπει να διαμορφώσετε το ESP32 στο Arduino IDE. Αυτό δεν είναι ασήμαντο, αφού το ESP32 δεν είναι (ακόμα;) εγγενές σε αυτό. Μπορείτε να ακολουθήσετε αυτό το σεμινάριο ή τα ακόλουθα βήματα.

1) ανοίξτε το Arduino IDE

2) ανοίξτε το παράθυρο προτιμήσεων, Αρχείο/Προτίμηση, εναλλακτικά πατήστε "Ctrl+κόμμα"

3) μεταβείτε στις "Πρόσθετες διευθύνσεις URL διαχειριστή πίνακα", αντιγράψτε και επικολλήστε το ακόλουθο κείμενο:

https://dl.espressif.com/dl/package_esp32_index.json

και κάντε κλικ στο κουμπί OK.

4) Άνοιγμα διαχειριστή πινάκων. Μεταβείτε στο Tools/Board/Boards Manager…

5) Αναζητήστε το ESP32 και πατήστε το κουμπί εγκατάστασης για το "ESP32 by Espressif Systems":

6) Σε αυτό το σημείο, όταν συνδέετε για πρώτη φορά το ESP32 σας, θα πρέπει να επιλέξετε το σωστό μοντέλο στη μεγάλη λίστα των διαθέσιμων πλακετών ESP32 (δείτε την εικόνα σε αυτό το βήμα). Σε περίπτωση αμφιβολιών για το μοντέλο, απλώς επιλέξτε το γενικό, δηλαδή το πρώτο. Μου κάνει.

7) το σύστημα θα πρέπει επίσης να επιλέξει τη σωστή θύρα USB και την ταχύτητα μεταφόρτωσης (συνήθως 921600). Σε αυτό το σημείο θα πρέπει να δημιουργηθεί η σύνδεση μεταξύ του υπολογιστή σας και της πλακέτας ESP32.

Υπο-βήμα 3

Τέλος, πρέπει να εγκαταστήσετε τη βιβλιοθήκη FabGL VGA. [ενημέρωση Ιούλιος 2019] Χρειάζεστε και παλιά έκδοση αυτού του libray: μπορείτε να κατεβάσετε το αρχείο zip src.old.zip στο κάτω μέρος αυτού του βήματος, να αποσυμπιέσετε και να μετονομάσετε το φάκελο σε "src" στο

Φάκελο "… / arduino-1.8.9 / βιβλιοθήκες".

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

Βήμα 2: Μεταφόρτωση του Tiny Basic Code στο ESP32

Μεταφόρτωση Tiny Basic Code στο ESP32
Μεταφόρτωση Tiny Basic Code στο ESP32
Μεταφόρτωση Tiny Basic Code στο ESP32
Μεταφόρτωση Tiny Basic Code στο ESP32

Κάντε λήψη του ESP32_TinyBasicPlus_PS2_FabLab_beta.ino στο κάτω μέρος αυτού του βήματος.

Ανοίξτε το με το Arduino IDE και ανεβάστε το στο ακατέργαστο ESP32.

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

Προαιρετικό βήμα: εάν θέλετε να δοκιμάσετε το TinyBasic πριν συνδέσετε το πληκτρολόγιο VGA και PS2, μπορείτε ήδη να το κάνετε με έναν πελάτη SSH και telnet. Χρησιμοποιώ το PuTTY.

Μπορείτε να δείτε πώς φαίνεται στις εικόνες σε αυτό το βήμα.

Βήμα 3: Σύνδεση της θύρας VGA

Σύνδεση της θύρας VGA
Σύνδεση της θύρας VGA

Χρειάζεστε τα ακόλουθα μέρη:

  • έναν συνδετήρα DSUB15, δηλαδή έναν θηλυκό σύνδεσμο VGA ή ένα καλώδιο VGA που πρόκειται να κοπεί.
  • τρεις αντιστάσεις 270 Ohm.

Συνδέστε τον ακροδέκτη ESP32 GPIO 2, 15 και 21 στο VGA Red, Green και Blue αντίστοιχα, μέσω των αντιστάσεων 270 Ohm.

Συνδέστε τα VGA Hsync και Vsync στις καρφίτσες ESP32 GPIO 17 και 4 αντίστοιχα.

Συνδέστε τους ακροδέκτες σύνδεσης DSUB15 5, 6, 7, 8 και 10 στο ESP32 GND.

Για τον ορισμό των ακίδων σύνδεσης VGA DSUB15, δείτε την εικόνα σε αυτό το βήμα. Σημείωση, αυτή είναι η πλευρά συγκόλλησης του θηλυκού συνδετήρα.

Βήμα 4: Σύνδεση της θύρας PS2

Σύνδεση της θύρας PS2
Σύνδεση της θύρας PS2

Χρειάζεστε μια θηλυκή υποδοχή πληκτρολογίου PS2.

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

Η σύνδεση είναι:

  • Δεδομένα πληκτρολογίου στο ESP32 GPIO pin 32
  • Πληκτρολόγιο IRQ (ρολόι) στο ESP32 GPIO pin 33
  • Πρέπει επίσης να συνδέσετε τον πείρο 5V και τον GND.

Βήμα 5: Προγραμματισμός με το Tiny Basic

Προγραμματισμός με το Tiny Basic
Προγραμματισμός με το Tiny Basic
Προγραμματισμός με το Tiny Basic
Προγραμματισμός με το Tiny Basic

Σε αυτό το σημείο, εάν μπορείτε να συνδέσετε την οθόνη VGA και το πληκτρολόγιο PS2 και το ESP32 στην τροφοδοσία.

Η εικόνα που εμφανίζεται εδώ θα πρέπει να εμφανίζεται στην οθόνη. Τώρα μπορείτε να παίξετε λίγο με τις εντολές Tiny Basic.

Δοκιμάστε, για παράδειγμα, το υποχρεωτικό Hello, Word! άπειρος βρόχος:

10 εκτύπωση "Hello, World!"

20 πήρα 10

τρέξιμο

Μπορείτε να αλλάξετε σε τέσσερα διαφορετικά χρώματα πατώντας το κουμπί esc και να σταματήσετε τον βρόχο με ctrl+c

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

Τώρα μπορείτε να δοκιμάσετε κάτι πιο περίπλοκο, όπως να οδηγήσετε την αναλαμπή ενός LED με ένα βασικό πρόγραμμα. Συνδέστε, για παράδειγμα, την άνοδο LED (το μακρύ πόδι) στον ακροδέκτη 13 ESP32 GPIO και την κάθοδο στο GND.

Μετά γράψε:

νέος

10 i = 1000

20 εκτύπωση i

30 καθυστέρηση i

40 dwrite 13, ύψος

50 καθυστέρηση i

60 dwrite 13, χαμηλά

70 i = i*9/10

80 αν> 0 φτάνω στο 20

Τέλος 90

τρέξιμο

Μπορείτε να δείτε το αποτέλεσμα στο βίντεο που είναι ενσωματωμένο σε αυτό το Instructable.

Βήμα 6: Σύνδεση κάρτας μνήμης SD

Σύνδεση κάρτας μνήμης SD
Σύνδεση κάρτας μνήμης SD
Σύνδεση κάρτας μνήμης SD
Σύνδεση κάρτας μνήμης SD

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

Σε αυτό το βήμα θα δείξω πώς να συνδέσετε μια κάρτα μνήμης SD, αλλά δυστυχώς, προς το παρόν (ελπίζω μόνο προς το παρόν), η αποθήκευση προγραμμάτων δεν λειτουργεί!

BTW, χρησιμοποίησα προσαρμογέα κάρτας microSD σε κάρτα SD και κόλλησα 8 ακίδες σχήματος L όπως φαίνεται στην εικόνα σε αυτό το βήμα.

Στη συνέχεια, συνέδεσα τις καρφίτσες των προσαρμογέων SD στο ESP32 σύμφωνα με τη δεύτερη εικόνα, δηλαδή ένωσα τις καρφίτσες ESP32 GPIO 5, 18, 19, 23 σε SC, ρολόι, MISO, MOSO αντίστοιχα, συν 3,3V και δύο GND.

Ακολούθησα επίσης τις οδηγίες και τα παραδείγματα που βρέθηκαν εδώ, και με το παράδειγμα κωδικού SD_test.ino, μπορώ να γράψω στην κάρτα microSD 2 GBytes μου.

Έτσι, αν κάποιος βρει μια λύση, παρακαλώ ενημερώστε με το συντομότερο στο email μου [email protected] και θα ολοκληρώσω αυτό το Instructable.

Βήμα 7: Ευχαριστίες

Ευχαριστίες
Ευχαριστίες

Θα ήθελα να εκφράσω τις δεξαμενές μου στον Fabrizio Di Vittorio για τη φοβερή βιβλιοθήκη ESP32 VGA. Για περισσότερες λεπτομέρειες, παραδείγματα και… Space Invaders, επισκεφθείτε τον ιστότοπό του εδώ.

επίσης ευχαριστώ πολύ τους συντάκτες του Tiny Basic:

  • Μάικ Φιλντ
  • Σκοτ Λόρενς
  • Μπράιαν Ο 'Ντελ

Τέλος, αν σας αρέσει αυτό το έργο, γράψτε ένα σχόλιο ή μοιραστείτε μια εικόνα της συσκευής που κατασκευάζετε … και, πάνω απ 'όλα, ψηφίστε την στο διαγωνισμό Arduino!

Συνιστάται: