Forum: Mikrocontroller und Digitale Elektronik SPI und 2 "Bausteine"


von Fusel (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

hoffentlich finde ich hier fachkundigen Rat.
Ich habe einen Atmega32 bei 4MHz zum Laufen gebracht *ich weiß ... 
herzlichen Glühstrumpf :P*.
SD-Karte oder ein DOGM-Display von reichelt.de bekomme ich unter LunaAVR 
prima zum Laufen. Nun wollte ich beides zusammenfassen und Display UND 
SD-Karte auf einer Trägerplatine (selbstbau) zum Laufen zu bringen. Aber 
irgendwie stören sich die beiden Baugruppen.

Ich hänge mal sowohl eine assembler-Datei sowie einen Schaltplan der 
Platine bei. Für hilfreiche Tipps oder konstruktive Vorschläge wäre ich 
dankbar.

Gruß
Fusel

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Überlege mal wozu der CS Pin beim LCD und bei der SD Karte da sind.

von Dennis X. (Gast)


Lesenswert?

Du kannst über den CS Pin der beiden Slaves das Display und die SD-Karte 
aktiv schalten. Du spricht zu jedem Zeitpunkt immer nur mit einem Slave. 
Dannach schaltest du wieder HIGH, da der CS Pin meist Low-Active ist.

von Stefan (Gast)


Lesenswert?

Dazu glaube ich nicht dass die SD Karte noch das Display dazu ausgelegt 
sind als "Chain" zu fungieren. Ansonsten versteh ich nicht warum eine 
Leitung zwischen Display und SD-Karte gibt

von Fusel (Gast)


Lesenswert?

Moin.

danke für die Antworten ... aber ich seh immer noch vor lauter Wald die 
Bäume nicht mehr.
Ich habe SCL bzw. SCK (Clock) ... parallel auf beides beschaltet. Miso 
(MasterIn) wird nur von der SD-Karte benötigt und ist auch so 
angeschlossen. Mosi (SlaveIn) geht parallel auf beide. SS (SlaveSelect) 
wählt das Display aus ... für die SD-Karte nehme ich PortB.3. A0 (keine 
Ahnung wofür) geht von PortB.2 direkt zum Display.
Oder liegt es daran, das die beiden "Auswähler"-Leitungen nicht das 
gleiche Level führen? Also SS ist ja eigentlich negiert (Strich über dem 
SS) und beim PortB nicht?
Sonst sehe ich echt keinen möglichen Fehler mehr.

Gruß
Fusel

von Dennis X. (Gast)


Lesenswert?

Fusel schrieb:
> Also SS ist ja eigentlich negiert (Strich über dem
> SS) und beim PortB nicht?

Mit PORTB3 legst du ja in deiner SOFTWARE fest, wann die SD-Karte 
selektiert ist und wann nicht.
Wenn es zuvor funktioniert hat schau lieber mal ob nicht wirklich beide 
zur gleichen Zeit ausgewählt sind und ob die Betriebsspannung deiner 
SD-Karte auch wirklich sauber ist. SD-Karten sind sehr empfindlich 
hier...

von g457 (Gast)


Lesenswert?

> SS (SlaveSelect) wählt das Display aus ...

Ganz schlechte Idee. Datenplatt lesen!

> A0 (keine Ahnung wofür)

∗hüstel∗ das solltest Du dringend in Erfahrung bringen!

> Oder liegt es daran, das die beiden "Auswähler"-Leitungen nicht das
> gleiche Level führen? Also SS ist ja eigentlich negiert (Strich über dem
> SS) und beim PortB nicht?

∗hüstel∗ Datenplätter lesen!

HTH

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.