IDE-Interface am ATmega16

Gast #776125
Lesenswert?

Salut,

seit ein paar Tagen versuche ich vergebens, ein CD-ROM-Laufwerk bzw. 
eine Festplatte an den ATmega16 anzuschließen. Dazu hab ich mir bereits 
allerhand Dokumentation inklusive Beispielprojekten besorgt.

Aktueller Stand:
* ATmega16, per IDE-Kabel ans Laufwerk angeschlossen (Pins sind korrekt, 
alle durchgemessen)
* Takt: 1MHz vom internen RC
* Ja, das JTAG am PORTC hab ich abgestellt :-)
* Prozessor läuft, Programmieren usw. geht klar
* Laufwerk läuft auch, ist neuwertig

Jetzt zum Problem:
Den Quelltext (Pinbelegung steht drinne) hab ich mal hierher geladen 
(Anhang)

Prinzipiell soll dieser Code die primäre Festplatte auswählen (Z-216) 
und dann rekalibrieren (Z-221). Anschließend soll die LED ausgeschaltet 
werden, zur Kontrolle, dass es fuktioniert hat.

Lade ich das Programm aber in den Controller und starte das Gerümpel, 
bleibt die LED eingeschaltet. Ich konnte den Fehler auf die 
ata_wait_busy-Routine eingrenzen; dort verharrt der Controller und 
wartet ewig darauf, dass das Laufwerk sein BUSY-Flag löscht, was aber 
scheinbar nicht passiert. Ich denke aber eher, es gibt Probleme bei der 
Datenübertragung.

Ich hoffe, irgendwer kann mir da weiterhelfen...in diesem Sinne, Danke 
für alle Antworten.

Viele Grüße, Haku
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren