Forum: Mikrocontroller und Digitale Elektronik IDE Festplatte mit mikroprozessor ansteuern


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von BlackNoir (Gast)


Lesenswert?

Hmmm,
nach dem der erste Beitrag gfelöscht wurde, nun ein zweites mal:


Ich möchte mit einem Microprozessor eine IDE Festplatte ansprechen,
d.h. Daten auf Ihr speichern und Lesen...

Hat jemand eine Idee oder Link ???


Besten Dank für alle Antworten ...


Christian

von Peter (Gast)


Lesenswert?

Hallo

Such mal in Internet, nach MP3 Player, z.B. http://www.mp3projects.com

Da gibt es Player die eine Festplatte benutzen, vielleicht kannst Du
Dir da anschauen wie es funktionieren könnte...

von Juerg2k (Gast)


Lesenswert?

Will in etwa das gleiche machen nur mit ner Compact Flash..
weiß jemand wie das ungefähr geht?

von Rainer (Gast)


Lesenswert?

@Juerg2k: Gleich, denn die CF lässt sich im True IDE-Modus ansprechen
als wäre sie eine Festplatte.

von Juerg2k (Gast)


Lesenswert?

Und wie geht das in etwa? Ist sowas kompliziert? Kenn mich mit µC gut
aus aber von so Dateisystemen und so hab ich keine ahnung..

von Matthias (Gast)


Lesenswert?

Hi

wenn die CF als reines Datengrab für den µC diehnt und nicht vom PC
eingelesen werden soll ist das einfach. Einfach in einen Sektor der CF
schreiben und wieder auslesen. Dateisystem ist komplizierter geht
lesend aber auch noch einfach da man nicht an der FAT herummanipulieren
muß. Wenns dann aber ans schreiben von Dateien geht wirds häßlich und
der Bedarf an RAM steigt an da man eine Kopie der FAT im RAM des
Controllers halten sollte.

Matthias

von Juerg2k (Gast)


Lesenswert?

Aber genau dass hab ich vor. Allerdings sind die Dateien kleiner als
100kb..
Also ist das nicht so einfach wie ich höre?

von Matthias (Gast)


Lesenswert?

Hi

was heißt kompliziert. MAchbar ist alles. Es stellt sich die Frage von
Aufwand/Nutzen. Ich hatte mal die Aufgabe einen seriellen Datenstrom
auf eine CF zu loggen. Um mir das Erstellen von Dateien zu ersparen hab
ich einfach eine große Datei auf der CF erstellt und in diese dann
hineingeschrieben. Das funktioniert auch ohne viel RAM. IIRC hatte ich
sowas um 700 Bytes verbraucht.

Matthias

von Wolfram (Gast)


Lesenswert?

Hi

Die Ansteuerung der Festplatte oder des Compactflash findet man in der
Compactflashspec.Ist sehr gut dokumentiert.Bei Compactflash solltest du
aber den Memorymapped modus vorziehen,dann kannst du das ganze an den
externen Speicherbus dranhängen.
Wenn du in sowas wie FAT16 schreiben willst dann solltest du moeglichst
nur auf das Hauptverzeichnis zugreifen, dann wird es einfacher und
wesentlich speicherplatzsparender. Versuche nicht einen ganzen Cluster
oder die FAT komplett in den RAM zu bekommen,das kann beim Cluster bis
64K und bei der FAT bis 128K sein.
Eine gute Beschreibung des FAT16 Dateisystems findest du in PC-Intern
3.0.

CU Wolfram

von Jörn (Gast)


Lesenswert?

Hi

@ Wolfram

Könntest du den Artikel zum FAT 16 Dateisystem mal Posten oder mir per
E-Mail zusenden?

Ich habe nämlich vor nen mp3 Player mit CF Card zu bauen und da möchte
ich dann FAT 16 verwenden

Danke schonmal

MFG Jörn

von Matthias (Gast)


Lesenswert?

Hi

FAT16 willst du nicht verwenden. Du willst gleich zu FAT32 greifen.
FAT16 hat ein paar häßliche Eigenschaften die bei FAT32 weggefallen
sind.

Matthias

von Jörn (Gast)


Lesenswert?

FAT 16 soll aber einfacher sein vor allem wenn man nicht über 1 GB oder
so möchte

von Matthias (Gast)


Lesenswert?

Hi

nö. Wenn man einen C-Compiler verwendet ist es einfacher braucht aber
ein bischen mehr Performance da man mit long statt mit int rechnen
muß.

Matthias

von Horst (Gast)


Lesenswert?

Ich möchte von ner Festplatte nur lesen... verwendet man dann den PO
Modus oder DMA? Was geht einfacher?
Als uC ebenfalls ein AVR.

von Horst (Gast)


Lesenswert?

"PIO" muss das heissen... sorry

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Lesenswert?

Man verwendet den PIO-Modus, denn bereits mit dem sind Datenraten
erreichbar, die einen AVR oder auch andern Controller hoffnungslos
überfordern. DMA-Betriebsarten sind vollkommen unnötig.

von Horst (Gast)


Lesenswert?

mein Projekt ist was ganz krasses: ein mp3-Player
ich denke bei diesen bitraten sprich bis 190kbps sollte der AVR doch
mitkommen??

von Horst (Gast)


Lesenswert?

da kann man auch gleich fragen: wieviel kbps schafft der
schnellst-frequentierte AVR?

von Netbandit (Gast)


Lesenswert?

@Horst du schaffst mit einem AVR @16MHz auf einer guten HDD teilweise
10MBit/s (lesen ohne Fatauswertung)

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]
  • [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.