SPI und 2 "Bausteine"

Gast #3624547
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
Angehängte Dateien:
Gast #3624581
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.
Gast #3624714
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
Gast #3625015
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...
Gast #3625028
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

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.