Forum: Mikrocontroller und Digitale Elektronik USB-IDE Adapter für µC verwenden


von Stefan (Gast)


Lesenswert?

Hallo,

es gibt ja recht günstig externe USB-Festplattengehäuse.
Ich frage mich schon seit Längerem ob es möglich ist,
anstatt der Festplatte, einen µC anzuschließen.
Hat sowas schon mal jemand gemacht?
Wie könnte eine Ansteuerung unter Windows aussehen? Lib-USB?
Wie siehts mit der Taktrate an der IDE-Schnittstelle aus?
Wer gibt den Takt vor? So ein Atmega kann ja allerhöchsten ein paar
MHz.

Gruß
Stefan

von Jadeclaw D. (jadeclaw)


Lesenswert?

Sicherlich geht das. Nur muss der Controller dann eine IDE-Platte
komplett emulieren, inklusive ATA/EIDE-Commandset und 16Bit-Zugriff
etc. Das Ganze erscheint dann als Laufwerk auf dem PC. Mein Rat: Lass
es. Erspart dir graue Haare und Magengeschwüre. Es geht nämlich auch
einfacher: Parallel: FT245R, Seriell: FT232R. Kosten 5 bis 7 Euro das
Stück und nehmen dir den ganzen Aufwand ab. Und freie Treiber gibt es
auch. Schaue hier:
http://www.ftdichip.com/FTProducts.htm

Gruss
Jadeclaw.

von Thomas P. (pototschnig)


Lesenswert?

Das geht tatsächlich. Der IDE war ursprünglich zu DOS und ISA Zeiten
nicht wesentlich mehr als ein ausdekodierter ISA-Bus mit 16Bit, zwei
Adressbereichen, 8 Adressen pro Bereich. Seit damals hat sich am
IDE-Bus nichts geändert, auch wenn er später eigentlich am PCI-Bus
hing. Ich hatte damals mal damit experimentiert und konnte wesentlich
höhere Datenraten erreichen als über den ISA-Bus. Da gabs nur ein
Problem: Auf einem Computer konnte man im Bios UDMA2/PIO4 einstellen
und die Einstellungen wurden trotz Fehlen einer richtigen Festplatte
nicht zurückgesetzt. Andere Boards haben das aber gemacht. Ich hatte
das nie hingekriegt das es auf allen Boards geht. Man hätte den DMA
Handshake emulieren müssen, das konnte aber die Logik nicht (ohne µC,
sondern nur HDL (ist kein VHDL) in CPLDs) - ich hatte damals zuwenig
Wissen und konnte es nicht umsetzen. Zumindest PIO0 ging aber immer -
allerdings halt nicht schnell genug :-)

Unter Windows wird das vermutlich jetzt garnicht mehr gehen, weil dich
Windows auf keinen Fall an die IDE Schnittstelle ranlässt - auch nicht
über Tools wie "CrackNT", die direkte Portzugriffe wieder
freischalten.

Falls du es trotzdem versuchen willst: Neuere IDE Schnittstellen (mit
neuer meine ich ~10Jahre alt g) lassen wirklich nur die Bits per
Adresse durch, die wirklich von IDE-Laufwerken verwendet werden.
Schreiben auf andere Bits hat keinen Effekt.

Mfg
Thomas Pototschnig

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.