www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme mit SPI (viele Bausteine)


Autor: Stefanie Kirchdorfer (stefanie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich nutze die SPI-Schnittstelle mit 7 verschiedenen Bausteinen.
Der Master ist der Atmega.

Daran hängt
-ein Display
-ein Temp-Sensor
-ein Flash (indirekt über den 74LC als Pegelwandler)
-und noch ein paar weitere Sensoren

Nun kann ich mit dem Oszi messen, das SCK, MOSI und jeweils OK sind, nur 
MISO ist dauerhaft 0V und wenn ein Sensor eine Antwort auf "1" auf die 
MISO-Leitung legt, ist der Pegel nur bei 0,6V

> ich habe alle Sensoren der Reihe nach angesteuert und die MISO-Leitung gemessen. 
Jeder Sensor antwortet (also ist jeder richtig angeschlossen) und die High-Pegel 
in den Antworten gehen nur auf 0,6V. Einer der Sensoren beläst dass Signal auch 
nachdem SS wieder auf 5V ist auf 0,6V.

Nun habe ich mit einem Pullup von 10k die MISO-Leitung auf 5V anheben 
wollen, dass hat aber nichts gebracht, der Pegel bleibt so niedrig.

Mir kommt es vor, als würde ein Baustein die MISO-Leitung auf GND 
ziehen, kann sporadisch auch einen Kurzschluss zwischen GND und MISO 
messen, dann wieder einige MOhm.

Ich habe das Display auserhalb der Schaltung mit einem anderen Atmega 
getestet und dort sieht die MISO-Antwort so aus, dass die Leitung 
dauerhaft auf 2.4V ist und während der Antwort die MISO-Leitung auf GND 
gezogen wird. Enden tut sie wieder mit 2.4V. Einen Sensor habe ich auch 
ausgelötet und getestet, da komm ich auf einen Pegel von 4.5V

Wie gehe ich nun am besten weiter vor?? Soll ich alle SPI-Bausteine der 
Reihe nach auslösten, bis ich den Übeltäter habe, doch bitte nicht!

Die MISO-Leiutng ist als Eingang definiert DDR und PORT = 0

Kann sich von euch wer dieses Verhalten erklären?? Bitte gebt mir einen 
Rat, wie ich weiter vorgehen kann!!!

Autor: Floh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schaltplan.
Ins Blaue geraten würd ich mal auf den Pegelwechsel tippen. Wie wird 
MISO pegelgewechselt?

Autor: Michael H. (morph1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du erwähnst mit keinem Wort die CS-Leitungen. Eventuell hierzu ein paar 
Infos mehr?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie gehe ich nun am besten weiter vor??

Die CS Leitungen der Bausteine richtig ansteuern.

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
holger schrieb:
> Die CS Leitungen der Bausteine richtig ansteuern.

Reicht nicht immer. Manche SPI-Bausteine deaktivieren ihren Ausgang 
nicht wenn CS auf inaktiv gesetzt wird.

Gruß Anja

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachtrag:
ich habe den Pegelwandler im Verdacht.

Gruß Anja

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.