mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SPI ATmega128: Simulator OK, am AVR aber nicht!


Autor: Heinz Suess (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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.

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe die Datenblätter momentan nicht vorliegen...
Könnte es sein, daß Du "SS" auf Low legen mußt? In Deiner
Initialisierung legst Du das auf "1".

Autor: Heinz Suess (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Heinz Suess (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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...

Autor: D. W. (dave) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
M103-Kompatibilitäts-Flag gelöscht?

Autor: Heinz Suess (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hmm...M103-Kompatibilitäts-Flag sagt mir nix??
mal darüber googeln...

Autor: Heinz Suess (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Tja... hab nun mal das Teil ohne Debugger laufen lassen und mit Oszi
gemessen und siehe da...-> Alles läuft so wie es soll!

Also nicht verzweifeln wenn der Debugger bugged :-)

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.