Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
z9001:module_sonstige:usbmodul [2020/10/05 10:54] – volkerp | z9001:module_sonstige:usbmodul [2025/03/19 15:37] (aktuell) – [USB-Modul mit CH376] volkerp | ||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
Das Modul ist aktuell in Entwicklung. Geplant sind noch 32K RAM (4000-BFFF) und 8K ROM (C000-E7FF) mit USB-OS auf dem Modul. | Das Modul ist aktuell in Entwicklung. Geplant sind noch 32K RAM (4000-BFFF) und 8K ROM (C000-E7FF) mit USB-OS auf dem Modul. | ||
- | FIXME | + | |
+ | **2024: Aktuell wird das [[z9001: | ||
{{: | {{: | ||
+ | |||
+ | **Wer hat Lust und kann mir eine Schaltung und Leiterplatte designen? Portselektion für den CH376 via GAL oder 688er, 32k SRAM 62256 4000-7FFF, 8K ROM C000-DFFF? | ||
+ | Alternativ: in https:// | ||
+ | ===== technische Daten ===== | ||
+ | |||
+ | | Port | 28h..2Fh | | ||
+ | |||
+ | (gilt für Z9001 und Z1013) | ||
===== CH376 ===== | ===== CH376 ===== | ||
- | Der CH376 ist ein Chip zum Lesen und Schreiben von Dateien auf einer USB-Disk oder SD-Karte | + | Der CH376 ist ein Controller für kleine Mikrocomputersysteme |
Der CH376 unterstützt FAT16 und FAT32, allg. das FAT12-Dateisystem mit Unterverzeichnissen und kurzen (8.3)-Dateinamen. | Der CH376 unterstützt FAT16 und FAT32, allg. das FAT12-Dateisystem mit Unterverzeichnissen und kurzen (8.3)-Dateinamen. | ||
Der USB-Gerätemodus von CH376 ist vollständig mit dem CH372-Chip kompatibel, und der USB-Hostmodus von CH376 ist grundsätzlich mit dem CH375-Chip kompatibel. | Der USB-Gerätemodus von CH376 ist vollständig mit dem CH372-Chip kompatibel, und der USB-Hostmodus von CH376 ist grundsätzlich mit dem CH375-Chip kompatibel. | ||
- | Für ca 3 Euro gibt es fertig aufgebaute Module, die per Pfostenstecker mit der eigenen Hardware verbunden werden. | + | Man könnte den Chip direkt verwenden, er kann auch mit +5V betrieben werden, doch für ca 3 Euro gibt es fertig aufgebaute Module, die per Pfostenstecker mit der eigenen Hardware verbunden werden. |
- | + | ||
- | {{:z9001: | + | |
+ | {{: | ||
Bedeutung der Steckverbinder: | Bedeutung der Steckverbinder: | ||
Zeile 26: | Zeile 34: | ||
{{: | {{: | ||
- | Achtung: Es gibt ähnliche | + | **Achtung**: Es gibt ähnliche |
- | Das muss bei der Verdrahtung beachtet werden! | + | Es gibt auch einen Reset-Pin. |
- | Die meisten der bei ebay angebotenen " | + | |
- | {{: | + | {{: |
- | Downloads: | ||
- | Produktseite: | + | < |
+ | Pin-Reihen | ||
- | Anleitung CH376 (engl): ch376ds1.pdf http:// | + | die beiden oberen Reihen: Variante 1 (ohne Reset, mit 6pol. Jumperfeld) |
+ | die beiden unteren Reihen: Variante 2 (mit Reset, mit 3pol. Jumperfeld) | ||
- | Es gibt auch einen zweiten Teil, leider nur in chinesisch: CH376DS2.PDF: | + | Pins spiegelverkehrt zum Modul, das wird ja mit der Leiterseite nach oben |
+ | aufgesteckt. | ||
- | zusätzliche Unterlagen + C-Code f. Microcontroller (8051), leider in chinesisch: | + | WR RD CS A0 INT VCC GND GND |
+ | D7 D6 D5 D4 D3 D2 D1 D0 | ||
+ | 5V GND CS INT RST WR RD A0 | ||
+ | </ | ||
- | http:// | + | ==== Unterlagen ==== |
- | Arduino-Library: https://github.com/djuseeq/Ch376msc | + | * Produktseite: |
+ | * Anleitung CH376 (engl): ch376ds1.pdf http:// | ||
+ | * zusätzliche Unterlagen + C-Code f. Microcontroller (8051), leider in chinesisch: http://www.wch.cn/downloads/CH376EVT_ZIP.html | ||
- | Z80-Anschluss | + | Es gibt auch den zweiten Teil der Anleitung CH376DS2.PDF auf obiger Produktseite, |
+ | |||
+ | **Arduino** | ||
+ | |||
+ | * Arduino-Library: | ||
+ | |||
+ | **Z80-Anschluss** | ||
+ | |||
+ | **Bruce Abbott** hat für seinen Mattel Aquarius ein Micro-Expander-Modul entwickelt. Sein Modul umfasst 32k RAM, 4x16k ROM und obiges CH376-USB-Modul. Auf einer zweiten Leiterplatte ist ein Soundchip AY-3-8910 und ein zweites CH376-USB-Modul. Auf der Webseite gibt es komplette Z80-Assemblerquellen. | ||
+ | |||
+ | * http:// | ||
+ | * archive: https:// | ||
+ | |||
+ | **RookieDrive für MSX** | ||
+ | |||
+ | Ein virtuelles Disketten-Laufwerk für MSX-Computer. Disketten liegen als .DSK image files (720kByte) auf einem USB-Stick. Es kommt obiges CH376-Modul zum Einsatz. | ||
+ | |||
+ | http:// | ||
Zeile 52: | Zeile 83: | ||
- | Das CH376-Modul wird im Parallel-Modus betrieben (JP P_S Stellung P) | + | Das CH376-Modul wird im Parallel-Modus betrieben (JP P_S Stellung P), |
+ | |||
+ | |||
+ | :!: hier noch mit Port 40h aus der frühen Entwicklung | ||
{{: | {{: | ||
Zeile 65: | Zeile 99: | ||
Der GAL selektiert lediglich Port 40h+41h, ansonsten gehen die | Der GAL selektiert lediglich Port 40h+41h, ansonsten gehen die | ||
- | Anschlüsse des Moduls direkt an den BUS. Anstelle eines GALs können auch diskrete TTL-Schaltkreise für die Portaslektion | + | Anschlüsse des Moduls direkt an den BUS. Anstelle eines GAL können auch diskrete TTL-Schaltkreise für die Portselektion |
Mit einfachen I/ | Mit einfachen I/ | ||
Zeile 75: | Zeile 109: | ||
OUT 40 55 | OUT 40 55 | ||
IN 40 --> AA (bit reverse) | IN 40 --> AA (bit reverse) | ||
+ | | ||
+ | GAL-Logik: | ||
+ | |||
+ | CH376 = /IORQ * /RD * /A7 * A6 * /A5 * /A4 * /A3 * /A2 | ||
+ | + /IORQ * /WR * /A7 * A6 * /A5 * /A4 * /A3 * /A2; /IORQ * (/RD + /WR) * Port 40h | ||
+ | | ||
+ | ===== CP/M ===== | ||
+ | |||
+ | Mittlerweile ist das Modul bei den Z80-Fans bekannt und wird auch genutzt. Ich habe zwei interessante Ansätze zum Thema CP/M gefunden: | ||
+ | |||
+ | * https:// | ||
+ | * https:// | ||
+ | |||
+ | |||
+ | |||
| |