Artikel
Compact-Flash-Interface für Mikrocontroller
...nicht nur für das 89S8252-Flash-Board
Compact-Flash-Karten haben sich bewährt, wenn es darum geht, größere Daten-Mengen mobil zu speichern. Die Daten bleiben über Jahre hinweg ohne Betriebsspannung erhalten. Nach dem Compact-Flash-Drive vom April ‘02 wird nun auch die Brücke zwischen "CF" und "µC" geschlagen. Das Interface ist insbesondere für das beliebte 89S8252-Flash-Board geeignet, das auch im "Basiskurs Mikrocontroller" Verwendung fand.
Diese Interface-Schaltung wurde als Verbindung zwischen dem im Dezember ‘01 veröffentlichten "89S8285-Flash-Board" und der Compact-Flash-Karte entworfen. Das Interface ist grundsätzlich auch für andere Mikrocontroller-Systeme verwendbar, man braucht lediglich ein passendes Adapter-Kabel anzufertigen.
Diese Interface-Schaltung wurde als Verbindung zwischen dem im Dezember ‘01 veröffentlichten "89S8285-Flash-Board" und der Compact-Flash-Karte entworfen. Das Interface ist grundsätzlich auch für andere Mikrocontroller-Systeme verwendbar, man braucht lediglich ein passendes Adapter-Kabel anzufertigen.
Material
Gerber-Datei
Die zu diesem Projekt gehörende Platine steht als Gerber-Datei exklusiv allen GOLD- und GREEN-Mitgliedern zum sofortigen Download zur Verfügung. Mit Gerber-Daten können Sie Platinen selber herstellen oder sie bei einem Platinenhersteller in Auftrag geben.
Elektor empfiehlt den zuverlässigen PCB-Service von Eurocircuits oder von AISLER.
Gerber-Dateien unterliegen der Creative Commons-Lizenz. Creative Commons bietet Urhebern die Möglichkeit, dass ihre Werke frei genutzt und verbreitet werden.
Platine
Extra-Info / Update
Kann es sein, dass im Schaltplan des CF-Interface für Microcontroller (Heft 1/2003) ein Fehler vorliegt? Es ist nämlich nicht nachvollziehbar, wie die Register der CF-Card oberhalb Adresse 0FXX7 anzusteuern sind, da nur die Adressleitungen A0-A2 angeschlossen werden. Im Beispielcode werden auch explizit die Adressen oberhalb 0FXX7 angesprochen! Weiterhin ist nicht beschrieben, in welchem Modus die Karte beschaltet wird.
Michael Herling
Fehler gibt es keinen, die Schaltung funktioniert einwandfrei. Ich verstehe aber, dass es ein bisschen verwirrend wirkt, dass wir die oberen Adressen (x8-xF) auch definiert haben, obwohl sie nicht verwendet werden. Die oberen 8 Register sind (fast) die gleichen Register wie die unteren 8. Der einzige wichtige Unterschied ist, dass das zweite Status-Register das Error-Flag nach dem Lesen des Status-Registers nicht zurücksetzt. Die ganze CF-Karte kann also ohne die oberen 8 Register problemlos angesteuert werden - was am Beispiel der Schaltung "CF-Interface" zu sehen ist...
Die CF-Karte wird hier im PC-Card-Mode betrieben.
Paul Goossens
Michael Herling
Fehler gibt es keinen, die Schaltung funktioniert einwandfrei. Ich verstehe aber, dass es ein bisschen verwirrend wirkt, dass wir die oberen Adressen (x8-xF) auch definiert haben, obwohl sie nicht verwendet werden. Die oberen 8 Register sind (fast) die gleichen Register wie die unteren 8. Der einzige wichtige Unterschied ist, dass das zweite Status-Register das Error-Flag nach dem Lesen des Status-Registers nicht zurücksetzt. Die ganze CF-Karte kann also ohne die oberen 8 Register problemlos angesteuert werden - was am Beispiel der Schaltung "CF-Interface" zu sehen ist...
Die CF-Karte wird hier im PC-Card-Mode betrieben.
Paul Goossens
Stückliste
Widerstände:
R1 = 10 k
Kondensatoren:
C1,C2 = 100 n
C3 = 10 µ/16 V stehend
Halbleiter:
D1 = 1N4148
IC1 = 74HCT20
Außerdem:
K1 = 34-polige zweireihige Stiftleiste
K2 = 50-polige Steckleiste für Compact-Flash-Karte, Raster 0,05", Anschlüsse abgewinkelt (z. B. Farnell, Best.-Nr. 307-8127)
Platine EPS 020133-1 *
Demo-Programm einschl. Quell-Code: EPS 020133-11
R1 = 10 k
Kondensatoren:
C1,C2 = 100 n
C3 = 10 µ/16 V stehend
Halbleiter:
D1 = 1N4148
IC1 = 74HCT20
Außerdem:
K1 = 34-polige zweireihige Stiftleiste
K2 = 50-polige Steckleiste für Compact-Flash-Karte, Raster 0,05", Anschlüsse abgewinkelt (z. B. Farnell, Best.-Nr. 307-8127)
Platine EPS 020133-1 *
Demo-Programm einschl. Quell-Code: EPS 020133-11
Diskussion (0 Kommentare)