SPI ATmega128: Simulator OK, am AVR aber nicht!

Gast #266487
Lesenswert?
• ▲
▼
Hallo!

Ich möchte mit einem ATmega128 via SPI Daten empfangen. Wenn ich mit
dem AVR-Simulator vom AVR-Studio (Version 4.12) arbeite, klappt alles
prima. (Das zu sendende Dummy-Byte erscheint kurz, der Clk startet und
schiebt das Byte raus,....)
Wenn ich das Programm aber in den AVR lade und durch-debugge, dann
erscheint das Dummy-Byte nicht im SPI-DataRegister und der
Clk-Generator wird daher nicht gestartet, sondern gleich das SPIF-Flag
gesetzt!

Der Code ist quasi der aus dem Manual vom AVR... siehe Anhang.

Danke
Heinz S.
Angehängte Dateien:
Gast #266489
Lesenswert?
• ▲
▼
Hallo thkais... Danke für die Antwort.

Aber SS = High in der Initialisierung stimmt schon so. SS wird erst vor
dem Datenaustausch auf Low gezogen.
Aber da SS ohnehin als Ausgang definiert ist, beeinflusst das das
SPI-System nicht, ist einfach ein normaler Ausgangs-Pin.

...und wie gesagt, im AVR-Simulator läufts ja einwandfrei.

servus
Heinz S.
Gast #266490
Lesenswert?
• ▲
▼
Jep, hast recht mit dem SS, ich habe gerade nochmal kurz nachgeschaut.
Allerdings wirds nicht automatisch auf Low gezogen, das mußt Du von
Hand machen.

Der Simulator ist nicht das Maß der Dinge, wäre nicht das erste Mal,
daß auf dem Simulator etwas anders als in der Realität funktioniert.

Was ist denn, wenn Du die ganze Geschichte ohne Debugger durchlaufen
läßt? Mit einem Oszi müßte man doch etwas sehen. Evtl. macht auch der
ganze Debugger-Kram Mist.
Gast #266491
Lesenswert?
• ▲
▼
Jo.. SS zieh ich selbst in einer andren Funktion auf LOW...
Hab mir auch schon überlegt bei nächster Gelegenheit mitm Oszi und ohne
Debugger zu testen. Mal sehn ob sich dann da was rührt ;-)

Aber ansonsten bin ich auch ziemlich ratlos...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren