Forum: Mikrocontroller und Digitale Elektronik MMC initialisieren


von Clemens (Gast)


Angehängte Dateien:

Lesenswert?

Hallo!

Versuche schon seit 3Stunden vergeblich meine MMC anzusteuern!

Es will einfach nicht klappen! Kann jemand von euch mal den Sourcecode
anschauen und sagen was falsch ist? Ich komme nicht auf den Fehler

Chip ist ATMEGA8L

Taktfrequenz 3,69 MHz

Danke Clemens

von Tobi (Gast)


Lesenswert?


von Clemens (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Tobi danke für die Antwort!

Aber das habe ich schon gemacht! Kannst mir jemand einmal sagen wie ich
den SPI genau einstellen muss?

In dem Code von Uli habe ich folgendes gefunden:


#if SPI_Mode
//Aktiviren des SPI - Bus, Clock = Idel LOW
//SPI Clock teilen durch 128
SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0)|(1<<SPR1);
SPSR = (0<<SPI2X);
#endif


Das heist

SPIE=0;  => kein Interrupt
SPE=1;   => SPI Bus ist aktiviert
DORD=0;  => MSB first
MSTR=1;  => µC ist Master
CPOL=0;  => Das heißt SCK ist Low wenn nichts gesendet wird
CPHA=0;  => Daten werden mit der steigenden Flanke übernommen
SPR0=1;  |
SPR1=1;  |=> f = fosc/64 = 14238281/64 = 222473Hz
SPI2X=1; |

Was ich gesehen habe muss SCK High sein wenn nichts gesendet wird
(siehe Bild im Anhang). Kann das sein, dass das egal ist? Ich meine
dann legt die MMC das erste Bit schon an den Bus, wenn das letzte Bit
vom vorherigen Byte gesendet wurde und der Clk auf low geht. Das wäre
ja kein Problem aber was passiert wenn ich jetzt den CS zweimal toggle?
Liegt es dann immer noch an?

von Clemens (Gast)


Lesenswert?

Hallo miteinander!

Ich habe das Problem jetzt gefunden!

und zwar habe ich nicht gewusst, dass man den MOSI Pin vom ATMEGA8 auch
als Input im Mastermode deklarieren kann. Tja und genau das habe ich
gemacht=> Ich habe der MMC nie was schicken können! Jetzt habe ich ihn
als Output deklariert und es funzt!

Grüße Clemens

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.