Re: Frage zur SPI Schnittstelle Kategorie: IDE (von tomsfinest - 15.08.2011 13:28) | ||
Als Antwort auf Re: Frage zur SPI Schnittstelle von Blackdragon - 2.01.2011 1:36 | ||
| ||
> > Hallo, > > ich habe mal eine Frage zur SPI-Schnittstelle. > > Ich habe ein SPI Gerät das ich erst init. muss. > > Nun muss ich diesem Gerät mehre Steuerbytes senden. > > Mein Problem ist jetzt, dass das erste Senden von einem Byte noch klappt. > > Beim 2. Byte hängt sich der Controller auf. Das ist das selbe Ergebnis, als wäre kein Gerät > > an den SPI-Schnittstellenspins angeschlossen. Man kann dieses Problem mit dem simplen Programm > > ohne SPI Gerät nachvollziehen. Im Ausgabefenster beim Debugen kommt man nur bis SPI_Write 2. > > Das passiert mit der IDE 2.1 bzw. mit der neuen 2.12.08 auch. > > > > Kann es sein, dass man irgend ein ACK als Rückantwort braucht ?? > > > > void main(void) > > { > > byte a; > > Msg_WriteText("SPI_Enable"); > > SPI_Enable(80); > > Msg_WriteText("SPI_Write 1"); > > a = 1; > > SPI_Write(a); > > Msg_WriteText("SPI_Write 2"); > > a = 2; > > SPI_Write(a); > > Msg_WriteText("SPI_Write 3"); > > a = 3; > > SPI_Write(a); > > Msg_WriteText("SPI_Read"); > > a = SPI_Read(); > > } > > > > > > Gesundes Neues Jahr an alle.. > > > > Gruss Blackdragon > > Hallo, > > nach langem Suchen in anderen Foren bin ich auf die auf folgende Lösung gestossen. > Dort stand, dass man den SS vor dem SPI-Enable einfach als Ausgang definieren soll. > Dann beachte die SPI im Mastermode den SS nicht mehr. > > Das habe ich gemacht, und siehe da, der Controller hängt sich nicht mehr auf. > > Port_DataDirBit(8,1) 'PortB.0 = als Ausgang SPI - SS disable > Port_WriteBit(8,0) 'PortB.0 = als Ausgang SPI - SS disable > > Ist bloss schade, dass man sowas nicht in der Doku findet. > > Gruss Blackdragon Es ist überhaupt schade, dass die SPI-Schnittstelle so miserabel dokumentiert ist. Ich hatte das gleiche Problem mit einem Display (EA-DOGM 132) an der Mega 32 und dein Tipp war Gold wert. Danke Tom | ||
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum