wie muss ich den avr konfigurieren das auf der spi schnitstelle ein takt rauskommt. mein am avr angelegtes quarz schwingt, aber auf spi kommt kein takt!
habe aber das beispielprogramm von apetech zur ansteuerung eines 6100 displays drauf, aber es kommt kein takt!
welcher Prozessor, welches Programm?? ächz. Kann sein, dass hier einer "das beispielprogramm von apetech zur ansteuerung eines 6100" zur Hand hat - ich werde mich dafür nicht durchs Netz wühlen, und die meisten anderen auch nicht.
bei manchen uCs muss man den select pin (SS), der eigentlich für den Slavebetrieb relevant ist, zwangsweise als eingang konfigurieren und per pullup auf high ziehen. ansonsten wird zur laufzeit auf slavemode umgeschaltet und nix geht mehr.
hab einen mega8... das würde nicht viel bringen wen ich das prg poste, da dieses mit einer eigenen library von ihm funzt! meine nur das das programm gehen müsste da es ja schon mehrere leute getestet haben. wollt nur wissen welche einstellungen ich alle an meinem µC vornehemen muss...
So initialisier ich die SPI. Ist zwar für Atmega 128, dürfte aber auch beim Atmega 8 funktionieren... /* set port b.0 as output (chip select */ DDRB |= _BV(PB0); /* MOSI and SCLK as output */ DDRB |= _BV(PB1); DDRB |= BV(PB2); DDRB &= ~ _BV(PB3); /* set bitrate fclk/16 */ SPCR |= (INT8U)_BV(SPR0); SPCR &= (INT8U)~ _BV(SPR1); /* MSB first / clock polatity = 0 / clock phase = 0 / interrupts disabled */ SPCR &= (INT8U)~ (_BV(DORD) | _BV(CPOL) | _BV(CPHA) | _BV(SPIE)); /* set mastermode */ SPCR |= (INT8U)_BV(MSTR); /* enable spi */ SPCR |= (INT8U)_BV(SPE); /* write data to spi data register */ SPDR = data; /* wait until serial transfer is complete */ while (!(SPSR & _BV(SPIF)));
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.