Atmega8, SPI

OP #1485843
Hallo an alle!

Habe ein kleines Problem mit dem SPI-Bus auf genanntem uC, bin neu was 
die Programmierung von Datenbus angeht und komme hier einfach nicht 
weiter.

Habe am SPI des Atmega zwei Schieberegister hängen, einmal einen ADG738 
(Analog Devices) einmal einen A6278 (Allegro). Die zwei hängen parallel 
am SPI, bekommen also extra MOSI, SCK und jeweils einen eigenen SS. MISO 
ist bei keinem verbunden (weil keine Rückmeldung und kein daisy chain).
Der Unterschied zwischen den ICs besteht aber im SPI-Mode auf den sie 
hören: A6278 braucht CPHA=0, ADG738 aber CPHA=1, CPOL=0 für beide 
gleich.

Ich habe jetzt folgendes Problem:
Der A6278 lässt sich ansteuern und macht was er soll, wenn ich aber den 
ADG738 was schicke, flippen die Ports des A6278 genauso wie die des 
ADG738. SS ist aber bei A6278 auf 1 und bei ADG738 auf 0.

Im Anhang habe ich ein paar Codebrocken aus meinem Programm 
zusammengefasst die den Bus betreffen.

Hab übrigens auch versucht mich an die Application Note "AVR151" von 
Atmel zu halten, die mir fürs Einrichten vom SPI recht hilfreich 
erschien.

Danke schonmal für jede Hilfe!
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.