Hallo, habe ein Problem mit der SPI Schnittstelle. Ich hab im Forum gesucht und diesen Beispielcode gefunden: http://www.mikrocontroller.net/forum/read-4-64327.html#new Ich hab mir den Code dann auf 2 Atmegas 16 umgeschrieben, aber es passiert nichts. Ich bin jetzt soweit, dass ich glaube, dass der Master immer an dieser Stelle hängen bleibt: while (!(SPSR & (1<<SPIF))); einmal kann diese Stelle passiert werden, dannach bleibt der Atmega stecken. Und beim Slave wird nie das Interrupt ausgelöst. Beide Schaltungen beinhalten einen 16 MHz Quarz. Kann mir jemand helfen, bin am verzweifeln... Gruß Michael
So habs rausgefunden: und zwar muss man den SS-Pin (beim Atmega PB4) beim Master als Ausgang definieren!!!!!!!!! sehr wichtig!!!!!!
Moin, man kann den SS-Pin auch als Eingang definieren und dann per internem oder externem PullUp auf High halten. Wird SS dann auf Low gezogen fühlt sich der Controller als Slave angesprochen und stellt den Master-Betrieb ein. Seht auch alles in Datenblatt auf Seite 138. Gruss, Philip.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.