Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
z9001:erweiterungen:sdcard2 [2012/05/16 18:27] – [Die SD-Karte] volkerp | z9001:erweiterungen:sdcard2 [2024/06/05 11:14] (aktuell) – [Die Terminalsoftware] volkerp | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== SD-Karte mit AVR ====== | ====== SD-Karte mit AVR ====== | ||
- | **SD-Karte am Z9001 - die Lösung von Kingstener** | + | **SD-Karte am Z9001 - die Lösung von Kingstener |
- | Von Kingstener habe ich ein fertig aufgebautes SD-CARD-Interface für die KC's bekommen. Zur Nutzung am Z9001 kann man das noch abspecken, benötig wird i.W. nur ein Mikrocontroller ATMEGA32 | + | Dieses kleine Zusatzgerät erlaubt |
- | | http://home.arcor.de/ | + | {{: |
- | Kingsteners Lösung baut auf dem SD-Interface | + | {{: |
+ | |||
+ | Von Kingstener habe ich ein fertig aufgebautes | ||
+ | |||
+ | Benötigt wird i.W. nur ein Mikrocontroller ATMEGA32 und eine SD-CARD-Fassung (s. Bild). Die Hardware wird am User-Port und anstelle des Kassettenrecorders am Tape-Eingang angeschlossen und fungiert als digitaler Kassettenrecorder. Am Z9001 muss nichts verändert werden! Nach RESET wird automatisch ein kleines Terminalprogramm an den Tape-Eingang gesendet, was auf dem Z9001 gestartet wird und die weitere Kommunikation mit der SD-Karte über den USER-Port übernimmt. Das ganze ist wirklich recht schnell und funktioniert sehr gut! | ||
+ | |||
+ | **Das Termninalprogramm SDX** | ||
+ | |||
+ | Das Terminalprogramm ist nur wenige Bytes groß. Die ganze Funktionalität steckt im Mikrocontroller. | ||
- | | {{z9001: | + | {{z9001: |
- | | {{z9001:sdcard2.jpg? | + | |
- | | {{z9001:sdcard3.jpg? | + | |
===== Downloads ===== | ===== Downloads ===== | ||
Zeile 18: | Zeile 24: | ||
* Software {{: | * Software {{: | ||
* Schaltung {{z9001: | * Schaltung {{z9001: | ||
+ | |||
+ | http:// | ||
+ | |||
===== Prinzipbild ===== | ===== Prinzipbild ===== | ||
- | KC ↔ Terminalprogramm zur Byte-Ein- und Ausgabe ↔ User-Port ↔ SDKC-Modul | + | Das Terminal-Programm SDX steuert die Kommunikation zwischen SD-Modul und Computer. |
+ | |||
+ | |||
+ | Nach Einschalten (oder bei Reset des SD-Moduls) tippt man am Computer SDX + Enter. Es erscheint "tape load". Man drückt erneut Enter und das Programm wird geladen, indem die Datei " | ||
+ | Das Terminalprogramm SDX startet nach Ende des Ladeprozesses automatisch. Das SD-Modul | ||
- | KC ↔ Kassettenrekorderanschluss ↔ SDKC-Modul | + | < |
+ | +-----------+ | ||
+ | | SDX | ||
+ | | ||
+ | | ||
+ | +------------------+---+ | ||
+ | | | | ||
+ | | KC87 | | ||
+ | | tape |< | ||
+ | | user-port |< | ||
+ | +----------------------+ | ||
+ | +-----------+ | ||
+ | |||
+ | </ | ||
===== Bedienung ===== | ===== Bedienung ===== | ||
Zeile 35: | Zeile 61: | ||
Das Programm SDX - das Terminalprogramm - startet automatisch. Mit H gibt es eine Hilfe, mit L programmname wird ein Programm eingelesen. So einfach ist das! | Das Programm SDX - das Terminalprogramm - startet automatisch. Mit H gibt es eine Hilfe, mit L programmname wird ein Programm eingelesen. So einfach ist das! | ||
- | :!: Im [[z9001:module: | + | :!: Im [[z9001:module_sonstige: |
===== Schaltung ===== | ===== Schaltung ===== | ||
+ | |||
+ | Kingsteners Lösung baut auf dem SD-Interface von Arne Fitzenreiter http:// | ||
Die Schaltungsunterlagen von Kingstener {{z9001: | Die Schaltungsunterlagen von Kingstener {{z9001: | ||
- | {{: | + | {{: |
===== Programmierung des Controllers ===== | ===== Programmierung des Controllers ===== | ||
- | Initial muss der Controller den Bootloader (bootloader-0x7838434B.hex) einprogrammiert bekommen. Das geht mit einem externen AVR-Programmer oder einer selbstgebauten Lösung, wie etwa unter [[usb|]] beschrieben. Wichtig ist das korrekte Setzen der Fuses: | + | Initial muss der Controller den Bootloader (bootloader-0x7838434B.hex) einprogrammiert bekommen. Das geht mit einem externen AVR-Programmer oder einer selbstgebauten Lösung, wie etwa unter [[elektronik: |
**Fuses**: bootsz1, bootrst, keine crc Kontrolle((manche Brennprogramme bringen durch das nachträgliche Eintragen der CRC einen CRC-Fehler in Bin-File hinein. Wir brauchen aber genau die mit CRCGEN erzeugte CRC oder 00 00)) | **Fuses**: bootsz1, bootrst, keine crc Kontrolle((manche Brennprogramme bringen durch das nachträgliche Eintragen der CRC einen CRC-Fehler in Bin-File hinein. Wir brauchen aber genau die mit CRCGEN erzeugte CRC oder 00 00)) | ||
Zeile 51: | Zeile 79: | ||
BOOTSZ1 = 0 und BOOTSZ0 = 1 (Boot Flash section size 2048 Byte = 1024 Word, Start Address 3C00h) (!!)\\ | BOOTSZ1 = 0 und BOOTSZ0 = 1 (Boot Flash section size 2048 Byte = 1024 Word, Start Address 3C00h) (!!)\\ | ||
BOOTRST = 0: Ein Reset führt direkt zur Ausführung des Boot Loaders\\ | BOOTRST = 0: Ein Reset führt direkt zur Ausführung des Boot Loaders\\ | ||
- | Ext. Quarz (CKSEL = 1111, SUT=11) | + | Ext. Quarz (CKSEL = 1111, SUT=11) (SUT=10 lt. u.a. Angaben, vgl. Bild und Liste) |
- | {{: | + | {{: |
+ | Holgi' | ||
Mein AVR ausgelesen mit Wellon-Programmer VP-280: | Mein AVR ausgelesen mit Wellon-Programmer VP-280: | ||
Zeile 89: | Zeile 118: | ||
===== Die Terminalsoftware ===== | ===== Die Terminalsoftware ===== | ||
- | Ich habe erstmal eine relokatible Version von SDX erstellt, die sich ans vorhandene RAM-Ende stellt. Damit muß man nicht mit verschiedenen Versionen arbeiten. | + | |
+ | Die Verbindung vom Atmega-Port zum User-PIO-Port enthält 1KOhm Schutzwiderstände, | ||
+ | |||
+ | Das File load87 wird immer nach dem Start des Modules automatisch auf der SD-Karte gesucht und als Audio-Tape-File über den Tape-Eingang des KC87/Z9001 eingelesen, nachdem es da mit dem Kommando SDX zum Laden angefordert wurde. Es enthält gleich das komplette Terminalprogramm für den KC87/Z9001. Die weitere Kommunikation erfolgt dann nur noch über den User-PIO-Port. Ein Duplexbetrieb wie bei der V.24-Variante am KC85/2..5 ist hier leider nicht möglich. | ||
+ | |||
+ | VP 2012: Ich habe erstmal eine relokatible Version von SDX erstellt, die sich ans vorhandene RAM-Ende stellt. Damit muß man nicht mit verschiedenen Versionen arbeiten.\\ | ||
+ | Ich will die Software noch ein wenig ausbauen, mit dem Ziel, dass die Systemfunktionen zur Kassettenarbeit komplett auf die SD-Card umgebogen werden, so dass von jedem Programm aus direkt und schnell auf SD-Karte geschrieben und gelesen werden kann. | ||
===== SD2KC ===== | ===== SD2KC ===== |