Inhaltsverzeichnis:

ESP32/VGA32-Terminal für Z80-MBC2 verwenden - Gunook
ESP32/VGA32-Terminal für Z80-MBC2 verwenden - Gunook
Anonim
Verwenden des ESP32/VGA32-Terminals für Z80-MBC2
Verwenden des ESP32/VGA32-Terminals für Z80-MBC2
Verwenden des ESP32/VGA32-Terminals für Z80-MBC2
Verwenden des ESP32/VGA32-Terminals für Z80-MBC2

So erstellen und installieren Sie die ANSI-Terminal-Software auf einem ESP32/VGA32-Board.

Verbinden Sie es dann mit einem Z80-MBC2-Board.

Lieferungen

Sie benötigen einen VGA32 V1.4-Controller. Erhältlich bei Anbietern wie Ebay etc.

Arduino IDE, esp32-Unterstützung und FABGL-Bibliothek (siehe Anweisungen unten)

Ein PC, auf dem der Compiler ausgeführt wird. Jedes Linux/Mac OSX/Windows sollte in Ordnung sein.

Schritt 1: Software-Grundlagen

Software-Grundlagen
Software-Grundlagen

1, Installieren Sie die Arduino-IDE

Download von:

2. Fügen Sie das ESP32-Supportpaket hinzu.

Die Expressif-Anleitung finden Sie hier:

Sie können auch nach Begriffen wie „add esp32 to Arduino“oder „Using esp32 with Arduino“suchen und finden viele Informationen dazu.

Schritt 2: Hinzufügen von Software, der FABGL-Bibliothek

Hinzufügen von Software, der FABGL-Bibliothek
Hinzufügen von Software, der FABGL-Bibliothek
Hinzufügen von Software, der FABGL-Bibliothek
Hinzufügen von Software, der FABGL-Bibliothek

Fügen Sie die FABGL-Bibliothek hinzu.

1, Sie müssen auf den Bibliotheksmanager zugreifen, um diese Bibliothek hinzuzufügen. Der einfachste Weg, den ich gefunden habe, besteht darin, ein neues leeres Projekt zu erstellen (Sie können es verwerfen, nachdem Sie diesen Schritt abgeschlossen haben). Verwenden Sie dann das Menü Extras Boards: Option. Stellen Sie Ihren ESP32-Kartentyp und den seriellen Anschluss usw. ein. Wenn Sie sich bei der Auswahl der Karte nicht sicher sind, können Sie für diesen Schritt einen der generischen Typen verwenden, da Sie dieses Dummy-Projekt nicht erneut verwenden.

2, Verwenden Sie das Skizzenmenü, um "Bibliothek einschließen" auszuwählen, und wählen Sie dann "Bibliotheksmanager". Dadurch gelangen Sie zum Bildschirm des Bibliotheksmanagers.

Geben Sie im Suchbereich (obere Reihe, rechte Seite) FABGL ein, nach einigen Sekunden zeigt der Bildschirm die Bibliothek an, und wählen Sie dann Installieren.

Sobald dies erledigt ist, können Sie die Dummy-Skizze verwerfen.

Schritt 3: Laden der ANSI-Terminalskizze

Laden der ANSI-Terminalskizze
Laden der ANSI-Terminalskizze

Erstellen Sie die Ansi-Terminal-Skizze

1, Verwenden Sie das Menü Datei, Beispiel. Navigieren Sie zu FABGL, VGA, ANSI Terminal-Beispiel.

2, Sie können testen, ob es richtig eingerichtet ist, indem Sie es kompilieren - verwenden Sie das Häkchen-Symbol. Es sollte zu diesem Zeitpunkt ok kompilieren, dauert eine Weile, bis es fertig ist.

Schritt 4: Laden Sie die Skizze hoch

Auf das VGA32-Modul hochladen

Sie können alle Standardeinstellungen verwenden, um das Board zum Laufen zu bringen. Zu einem bestimmten Zeitpunkt können Sie verschiedene Pins für die TX / RX-Anschlüsse wählen, wenn Sie möchten. Sehen Sie sich die Beispielskizze an, um zu sehen, was Sie tun können.

Verwenden Sie das -> Symbol, um die Skizze zu kompilieren und hochzuladen.

Wenn Sie einen VGA-Monitor angeschlossen haben, sollten nach dem Zurücksetzen des Boards ein Menü und Informationen auf dem Bildschirm angezeigt werden. Wenn Sie eine Tastatur angeschlossen haben, drücken Sie erneut F12, um Ihr neues Terminal zu konfigurieren.

(Manchmal müssen Sie das Board zurücksetzen, damit die Tastatur funktioniert, insbesondere wenn Sie sie nach dem Hochladen der Skizze eingesteckt haben)

Schritt 5: Anschließen an den MBC2

Verbinden Sie sich mit Ihrem MBC2

An dieser Stelle gehe ich davon aus, dass Sie bereits eine Methode zum Anschluss an das VGA32-Board entwickelt haben. In meinem Fall habe ich einen Header gelötet, um den Anschluss an eine Brotplatine zu ermöglichen.

Schauen Sie sich den Siebdruck-Pin I / O der Platine genau an - wählen Sie die richtigen IO-Pins aus, sollte IO34 = RX IO2 = TX GND = GND sein.

Achtung: bei meinem Board war der Siebdruck verkehrt herum auf die Unterseite des Boards gedruckt. Die Textzeile bezog sich also am nächsten auf die Pins und nicht wie erwartet auf die entsprechende Zeile. Dies bedeutete, dass die Siebdruckreihe am weitesten von den Pins entfernt war, bezogen auf den am weitesten entfernten Satz von Pins. Eine Art 1-2-2-1 Muster anstelle des 1-2-1-2. Sehr verwirrend.

Schritt 6: Logikebenen und Verbindungen

Logikebenen und Verbindungen
Logikebenen und Verbindungen

Verbinden Sie den TX-Pin von der VGA32-Platine direkt mit dem MBC2, der von 3,3 V -> 5 V ist, ohne dass ein Konverter erforderlich ist.

Verbinden Sie GND mit GND

An diesem Punkt benutzte ich ein Brotbrett, um die beiden Widerstände auf der obigen Schaltung zu halten. In der endgültigen Version können Sie diese Widerstände auf einem kleinen Vero-Board platzieren.

Verbinden Sie RX mit dem mit 3.3V gekennzeichneten Punkt (oben) und verbinden Sie dann den mit 5V gekennzeichneten Punkt mit dem MBC2

HINWEIS Es scheint auf meinem MBC2 zu sein, dass die Pins markiert sind, um anzuzeigen, was sie auch an einem normalen USB / seriellen Adapter anschließen und nicht, was die Pins funktionieren. Dies ist das Gegenteil von dem, was Sie erwarten können, also enden die Verbindungen wie folgt:

VGA32. MBC2

TX. -> TX-GND. -> GND RX -> Widerstände -> RX

Das ist es, Sie sollten gut gehen.

Schritt 7: Weitere Infoseite

Weitere Info-Seite
Weitere Info-Seite

Die Pinbelegung und Namenskonventionen verschiedener Geräte (in diesem Fall der z80-mbc2 und der tvga-Karte) können sehr verwirrend sein.

Zum Beispiel haben einige Kits Markierungen, die angeben, an welchen Pin Sie diesen anschließen sollten. Für mich ist dies das Gegenteil der Konvention, Pins zu beschriften, was sie sind, dh was mit ihnen verbunden ist.

Der beste Weg, dies zu klären (hoffe ich), besteht darin, die Spannung am fraglichen Pin zu messen, da das serielle Protokoll hoch ist, es ist im Ruhezustand - wenn Sie eine "hohe" Spannung (3,3 V oder 5 V) messen, dann Dies ist der TX-Pin. woher das Signal kommt.

Und wenn die Spannung niedrig ist (weniger als 1 V und wahrscheinlich leicht schwankt), würde dies einen Eingang (RX) anzeigen, an den die Daten gehen.

Also habe ich den Siebdruck, die Softwarebibliotheksnamen usw. komplett ignoriert und oben gemessen, das Ergebnis ist das handgezeichnete Diagramm oben. Und es funktioniert bei mir (einige der älteren TVGA-Karten verwenden möglicherweise andere IO-Pins)

Empfohlen: