SPI will nicht

OP Persönliche Seite #903301
Lesenswert?
• ▲
▼
Hallo Forum,

leider kann ich mit meinem Atmega8 SPI im Master mode nicht zur 
Mitarbeit ueberreden - es passiert garnichts. Weder an SCK noch an MOSI.

Ich verwende folgenden Code:
1
void spi_master_init(void)
2
{
3
  DDR_SPI |= (1 << DISP_SI) | (1 << DISP_CLK);
4

5
  /* SPE:   SPI enable
6
   * MSTR:  SPI master mode
7
   * CPOL:  clock polarity (high when idle)
8
   * CPHA:  clock phase (trailing edge)
9
   * frequency: F_OSC/32 => 250KHz
10
   */
11
  SPCR |= (1 << SPE) | (1 << MSTR) | (1 << CPOL) | (1 << CPHA) | (1 << SPI2X) | (1 << SPR1);
12
  _delay_ms(100);
13
}

Hinweis: SS ist als Output konfiguriert. Das sollte aber keine Probleme 
machen duerfen. Im Master Mode ist SS nach Datenblatt konfigurierbar und 
ein "general output". Als solchen verwende ich ihn derzeit auch (habe 
eine LED dran), er ist also als Ausgang konfiguriert.

Initial setze ich PortB komplett als Output.
Worin koennte das Problem bestehen?

Danke fuer Eure Hilfe.

P.S. Ein kleiner Abschnitt zu SPI im Tutorial waere mal nicht schlecht.

Gruss,
Michael
#903331
Lesenswert?
• ▲
▼
Jo, das "SPCR |= ..." ergibt keinen Sinn, "SPCR = ..." ist besser.

Aber wenn der frisch aus dem Reset kommt, ist der Inhalt sauber 
definiert vorher 0. Das kann also kaum die Ursache sein.

Ebenso führt das falsch plazierte SP2X nur zu einem anderen Takt, /128 
statt /32.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.