Forum: Mikrocontroller und Digitale Elektronik SPI hängt


von Rupplyn (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

habe folgendes Problem:

möchte ne led-matrix über den max7219 mit spi ansteuern. funktioniert
eigentlich auch, allerdings spinnt die spi rum.
wenn ich den atmega48 via reset-knopf am stk500 resete, wird bei der 2.
spi-übertragung das SPIF-flag nicht mehr gesetzt und er bleibt in der
while-schleife hängen. wenn ich die spannung ganz ausschalte, kurz
warte und wieder einschaltet, tritt dieses problem erst bei späteren
befehlen auf (Anzahl der befehle / spi-übertragungen stark
unterschiedlich).

hab ich da irgendwo vergessen noch n bit zu setzen?!?
könnt ja mal drüber schaun...

von Stephan H. (stephan-)


Lesenswert?

hier ist die Codesammlung. Hier ist Code, der definitiv funzt.
Versuch´s im Bereich uC und Elektronik.

von Andreas W. (Gast)


Lesenswert?

Der SS-Pin muss entweder als Ausgang oder als Eingang mit PullUp
geschaltet werden.

von Rupplyn (Gast)


Lesenswert?

Bin grad nicht daheim und kann's daher nicht testen. meist du das macht
nen unterschied? der max7219 ist ohnehin nur beschränkt spi-fähig. cs
hat er nicht... sein serielles protokoll entspricht aber dem vom
spi-bus.

von Andreas W. (Gast)


Lesenswert?

Japp, lies mal im Datenblatt des AVR nach.
Wenn SS (als Eingang geschaltet) low ist, dann denkt der AVR ein
anderer SPI-Master will senden und schaltet in den Slave-Modus.

von Rupplyn (Gast)


Angehängte Dateien:

Lesenswert?

dankeschön,
daran lags...
jetzt funktionierts problemlos...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.