mikrocontroller.net

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


Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Jadeclaw Dinosaur (jadeclaw)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Thomas Pototschnig (pototschnig)
Datum:

Bewertung
0 lesenswert
nicht 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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.