Problem mit MIKROFAT16 und Zuordnung der SPI Anschlüsse

Gast #1147364
Lesenswert?
• ▲
▼
Hallo

ich möchte mit einem ATMega??? eine SD Karte beschreiben. Dazu habe ich 
mit die Bibliothek MIKROFAT16 von www.mikro-control.de heruntergeladen 
und die entsprechende Harware aufgebaut. Letztere scheint zu 
funktionieren, die SD-Karten Software von Ulrich Radig läuft damit (und 
einem ATMega32).

Da MIKROFAT16 ursprünglich für einen ATMEGA644 geschrieben ist, ich aber 
"nur" einen ATMEGA644p habe, habe ich die "#if defined 
(_AVR_ATmega644_)" in "#if defined (_AVR_ATmega644P_)" geändert.

Bitte belehrt (und schlagt mich nicht:-) mich, wenn das so nicht geht. 
Ich dachte, da wäre kein relevanter Unterschied zwischen den beiden.

Dann lies sich alles schon mal in AVR Studio compilieren und auf den 
ATMega644p meines STK500 schieben. Auf die Karte schreib es aber 
nichts...

Ich habe mich nun Schritt für Schritt durch den Programmablauf gehangelt 
und div. Kontrollausgaben (über das UART, funktioniert) eingebaut. Dabei 
hänge ich gerade bei der Initialiesierung der SD Karte bzw. schon einem 
Schritt vorher beim init der SPI.

In der headerdatei steht:
#if defined (_AVR_ATmega32_)
  #define SPI_DI        6
  #define SPI_DO        5
  #define SPI_Clock      7
  #define MMC_Chip_Select    3
  #define SPI_SS        4
#endif


#if defined (_AVR_ATmega644P_) // das "P" stammt wie o.g. von mir
  #define SPI_DI        6
  #define SPI_DO        5
  #define SPI_Clock      7
  #define MMC_Chip_Select    4
  #define SPI_SS        3
#endif

Also die letzten beiden Zeilen sind beim ATMega32 bzw. ATMega644(p) 
vertauscht.

Wenn ich aber in die Datenblätter von ATMega32 bzw. ATMega644(p) schaue, 
liegt dort (SPI_)SS bei beiden auf PB4. So ist auch meine Hardware 
verdrahtet.

Kann mir jemand weiterhelfen?

Gruß
Ralf
Gast #1147393
Lesenswert?
• ▲
▼
>> Probiers mal dort die für deine Hardware passenden
>> Pinnummer einzutragen und dann neu zu kompilieren.

CS der Karte (Pin 1 bei SD Karten) liegt (über Pegelwandler) an PP4. 
Habe schon beide (siehe oben) Arten des defines probiert. Die Karte 
(auch schon mehrere versucht) wird nicht initialiesiert...

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