ATmega128 SPI nach einigerzeit auf 2.2V?

Gast #2543209
Lesenswert?

Hi,

ich hab einen Atmega128A über SPI an einen AD9954 DDS angeschlossen.
Anscheinend hab ich auch richtig programmiert, denn direkt nachdem ich 
die Schaltung anschmeisse und einen Befehl sende kommt ein Signal aus 
dem DDS.

Allerdings hab ich jetzt das Problem, dass nach einigen 100ms nichts 
mehr geht. MOSI und SCK sind auf 2.19V und mein Programm hängt sich in 
der Warteschleife, die wartet, dass das SPI Datenregister geleert wird 
auf. Ich kann also nichts mehr über SPI senden, aber ich verstehe nicht 
warum.

Wie kann es sein, dass MOSI und SCK nach einiger Zeit 2.19V sind und 
nicht die ganze Zeit?
Angehängte Dateien:
Moderator Persönliche Seite #2543224
Lesenswert?

/SS nicht beschaltet ... dein SPI wird irgendwann in den Slave-Mode
gezogen.

Das sinnvollste ist es allemal, /SS für das chip select deines Slaves
gleich zu nutzen.  Damit ist es zwangsweise ein  Ausgang, und obiges
kann dir nicht passieren.

Du musst aber die Schaltung nicht unbedingt ändern; es genügt völlig,
wenn du PB0 zum Ausgang machst und dann nie wieder anfasst.

Es ist übrigens sinnvoll, unbenutzte Pins bei der Initialisierung
entweder als Ausgang festzulegen oder aber deren Pullups zu aktivieren,
damit sie nicht floaten können. Ein Eingang, der in der Nähe seiner
Schaltschwelle floatet, kann u. U. laufend hin und her schalten, wobei
er einiges an Strom zieht (durch das interne Umladen der Kapazitäten,
die dahinter dranhängen).
#2543258
Lesenswert?

@Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite

>damit sie nicht floaten können. Ein Eingang, der in der Nähe seiner
>Schaltschwelle floatet, kann u. U. laufend hin und her schalten, wobei
>er einiges an Strom zieht (durch das interne Umladen der Kapazitäten,
>die dahinter dranhängen).

Wenn es mal nur das wäre. Viel stromhungriger ist der Querstrom, den die 
Gatter nahe der Schaltschwelle ziehen. Auch wenn CMOS hier eher gutmütig 
ist.

@  rubbellos (Gast)

>Grad getestet das wars! Wie soll man da von alleine drauf kommen!

Das Datenblatt GENAU lesen und auch einhalten.

MfG
Falk

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