Hallo,
ich spiel zur Zeit ein bisschen mit dem SPI Bus meines 1284p rum. Leider
liefert der nicht die gewünschte Frequenz. Mein Mikrocontroller taktet
mit20Mhz, also müssten laut Datenblatt eine 0 an SPR0, SPR1 und SPI2X
einen 5 Mhz Takt ergeben, tatsächlich hab ich aber irgendwie um die 150
kHz laut meinem Oszilloskop. Hier mein Code?
1 | void SPI_MasterInit(void)
|
2 | {
|
3 | /* Set MOSI and SCK output, all others input */
|
4 | DDR_SPI = (1<<DD_MOSI)|(1<<DD_SCK) | (1<<DD_SS) | (1<<DD_RCK);
|
5 |
|
6 | /* Enable SPI, Master, set clock rate fck/4 */
|
7 | SPCR = (1<<SPE)|(1<<MSTR)|(0<<SPR0) |(0<<SPR1) |(0<<SPI2X);
|
8 | }
|