Forum: Mikrocontroller und Digitale Elektronik Denkfehler? Pointer?


von Jan H. (janiiix3)


Lesenswert?

Nabend,

Wieso kann ich so keinen Ausgang / Eingang konfigurieren?
1
//   SPI.PORT = PORTC;
2
//   SPI.MOSI = 5;
3
//   SPI.MISO = 6;
4
//   SPI.SCK  = 7;
5
//   SPI.SS   = 4;
6
7
  SpiMasterInit(&SPI,2,3,0,0,3);

Wieso kann man das so nicht machen?
Wenn ich den Port auf gewöhnliche Weise konfiguriere, klappt es?!
1
void SpiMasterInit(*SPI,x,x,x,x);
2
{
3
   SPI->PORTC.OUT |= (1<<SPI->MOSI);
4
}

von holger (Gast)


Lesenswert?

SPI.PORT = PORTC;

So bekommt SPI.PORT den Wert der in PORTC steht.
Du musst einen Zeiger auf PORTC nehmen.

von Jan H. (janiiix3)


Lesenswert?

Hallo holger,

so sieht mein struct aus -->
1
typedef struct
2
{
3
  PORT_t  PORT;
4
  uint8_t MISO;
5
  uint8_t MOSI;
6
  uint8_t SCK;
7
  uint8_t SS;  
8
}spi_t;

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
Noch kein Account? Hier anmelden.