2 PIC18F4620 über SPI verbunden, Probleme

Gast #2202874
Lesenswert?
• ▲
▼
Hi,
ich habe 2 PIC18F4620 per SPI mit 100 KHz verbunden, ein Master, einen 
Slave.
Daten vom Master zum Slave funktioniert.
Aber die Daten vom Slave zum Master sind immer um 1 Bit verschoben !
Beider PICs laufen im gleichen SPI Modus, Clock Polarity und Clock Edge 
= 0.
Slave sendet z.B. Zahl 4, empfangen wird vom Master aber Zahl 2.
Also 1 Bit immer geht verloren.

Gruß Dirk
Gast #2208446
Lesenswert?
• ▲
▼
Hallo, wahrscheinlich habe ich die Ursache für das Problem gefunden, 
habe aber dafür ein noch größeres an der Backe…..

In meinem System sitzen mehrere verschiedene SPI slaves an dem Master.
Leider arbeiten die Slaves in verschiedenen Modi, es muss also die Clock 
Polatität und der Clock Ruhezustandspegel für jeden Slave angepasst 
werden.
Wenn ich jetzt zyklisch die Slaves anspreche, und jedes Mal vorher den 
SPI disable, CKE und CPE anpasse, dann wieder SPI enable, passiert 
folgender Efekt:
Habe ein Oszi an die Clock Leitung angeschlossen.
Der erste der 8 Clock Impulse ist deutlich kürzer (Zeit) als die anderen 
7.
Er verändert auch ständig seine Impulszeit, manchmal ist es nur ein 
Nadelimpuls. ?????
Deshalb wird das Datenbyte um 1 Bit verschoben, weil der erste Clock 
Impuls vom Slave nicht erkannt wird.

Wenn ich nur einen Slave anspreche, ohne den SPI umzukonfigurieren, ist 
der Fehler weg.
Hat jemand einen Erklärung hierfür ?
Gruß Dirk
Gast #2882116
Lesenswert?
• ▲
▼
Hallo,
also die Probleme sind mittlerweile behoben.
Es lag an einer zu langen verzweigten SPI Clock Leitung.
Wahrscheinlcih traten Reflektionen auf.
Habe die Flankenseilheit durch einen Kondensator am Master reduziert.
LG Dirk

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.