Forum: Compiler & IDEs Mega8 bleibt bei SPI-Ausgabe hängen


von Christoph S. (mixer) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe ein Schieberegister 74hc595 am SPI-Port von einem Mega8. An dem 
Schieberegister sind 2x 8 LEDs die jeweils per Transistor gemultiplext 
werden.

Nun gebe ich im Timerinterrupt die jeweiligen Daten aus und schalte den 
richtigen Transistor dafür an.

Mit "manueller" SPI-Ausgabe hat das bis jetzt problemlos geklappt, aber 
jetzt möchte ich es mit Hardware machen. Schaltung sollte somit in 
Ordnung sein.

Das Programm läuft ein paar Sekunden (immer unterschiedlich) und dann 
bleibt es plötzlich stehen.
Habe nun einen Pin(PC0) jeweils vor und nach dem Warten auf das fertige 
Senden geschaltet. Ergebniss:
Er bleibt bei
1
while(!(SPSR&(1<<SPIF)));
hängen!

Habe ich den SPI falsch konfiguriert??

MFG Mixer

von Benedikt K. (benedikt)


Lesenswert?

Setz den SlaveSelect Pin auf Ausgang.

von holger (Gast)


Lesenswert?

>Habe ich den SPI falsch konfiguriert??

Schalte den SS Pin auf Ausgang. Wenn der SS Pin ein Eingang
ist und floatet wird der Master ganz schnell mal wieder
zum Slave.

von Christoph S. (mixer) Benutzerseite


Lesenswert?

Aha.

Danke, jetzt klappts!!

MFG Mixer

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.