Forum: Compiler & IDEs XMega, PINnCTRL


von David H. (davidm)


Lesenswert?

Ich definiere in der Header Datei den entsprechenden SPI port
um in zukunft bei welches des SPI Ports meinen Code wieder verwenden zu 
können.

jedoch macht mir das PINnCTRL ein strich durch die Rechnung wenn ich auf 
das

PINnCTRL register zugreifen muss um XCK (CPOL=1) ändern muss
1
meine.h:
2
3
  #define CHIP_SPI_SCK              PIN7_bm
4
  #define CHIP_SPI_MISO             PIN6_bm
5
  #define CHIP_SPI_MOSI             PIN5_bm
6
  #define CHIP_SPI_SS               PIN4_bm
7
8
  #define  CHIP_SPI    SPID
9
  #define CHIP_PORT    PORTD
10
11
meine.c
12
 // hier der ganze SPI kram...
13
14
// hier Ausgänge einstellen
15
  CHIP_PORT.DIRSET  = CHIP_SPI_MOSI | CHIP_SPI_SCK;
16
17
// jetzt XCK:
18
CHIP_PORT.PIN1CTRL |= PORT_INVEN_bm; <- HIER MEIN PROBLEM
kann man PINxCTRL nicht irgendwie anders mit in die header Datei 
bekommen?
ohne so ein quatsch machen zu muessen wie
#define CHIP_PINSCK  PIN1CTRL

von Timmo H. (masterfx)


Lesenswert?

1
CHIP_PORT.PIN1CTRL |= PORT_INVEN_bm; <- HIER MEIN PROBLEM
Willst du das "PIN1" weg haben oder wie? Compilieren und funzen tut es 
ja so

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.