Atmel Studio SPI testen, geht das?

OP #3383273
Lesenswert?

Hallöchen,

da ich früher mit Keil gearbeitet habe und dort das testen von der 
Seriellen schnittstelle nicht geklappt hat (da das write-register die 
gleiche adresse wie das read-register hat) frage ich mich ob das bei 
Atmelstudio mit SPI ähnlich ist?

Ich habe folgenden Code:
1
int main(void)
2
{
3
  //SPI konfigurieren
4
  SPCR = (1<<SPE) | (1<<MSTR) | (1<<CPOL); //SPI ist master, MSB first, SCK is high wenn inaktiv
5
  DDRB |= 0x2C; //MISO, SCK, SS
6
  SPSR = (1<<SPI2X);
7
 
8
  // Global Interrupts aktivieren
9
  sei();
10

11
  while(1)
12
    {
13
if(PORTB & (1<<PORTB1))
14
    {
15
      Ringlauf();
16
    }
17
    
18
    for(push = 0; push <= 12; push++)
19
    {
20
      SPDR = gr[push];
21
      
22
      while (!(SPSR & (1<<SPIF)));
23
      
24
      (void)SPDR;
25
    }
26
    
27
    }
28
}

Der Code ist nun nur auszugsweise. In der Funktion werden die Arrays 
gr[] mit Daten gefüllt. Diese sollen dann eben der Reihe nach 
rausgeschickt werden (auf 12 Schieberegister 74HC595).

Hab ich nen Fehler in der Denkweise oder liegt es an Atmel Studio?

LG
Sören

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren