Hallo Kampi,

also ich wusel mich gerade durch die RP6RobotBase.h so durch und da steht ja folgendes:

// PORTA

#define UBAT (1 << PINA7) // ADC7 (Input)
#define MCURRENT_L (1 << PINA6) // ADC6 (Input)
#define MCURRENT_R (1 << PINA5) // ADC5 (Input)
#define E_INT1 (1 << PINA4) // INT1 (input per default... can be output)
#define LS_L (1 << PINA3) // ADC3 (Input)
#define LS_R (1 << PINA2) // ADC2 (Input)
#define ADC1 (1 << PINA1) // ADC1 (Input)
#define ADC0 (1 << PINA0) // ADC0 (Input)

// Initial value of port and direction registers.
#define INIT_DDRA 0b00000000
#define INIT_PRTA 0b00000000

// ---------------------------------------------------
// PORTA A/D Convertor channels

#define ADC_BAT 7
#define ADC_MCURRENT_L 6
#define ADC_MCURRENT_R 5
#define ADC_LS_L 3
#define ADC_LS_R 2
#define ADC_ADC1 1
#define ADC_ADC0 0

so jetzt habe ich mir den von dir empfohlenen Thread mal durchgelesen, schlau werde ich daraus allerdings nicht, denn was nun richtig und falsch ist bzw. konkretes steht da für mich nicht drinn.

Ich verstehe das folgendermaßen: #define INIT_DDRA 0b00000000 --> hier lege ich fest ob der PortA an entsprechender Stelle Ein-oder Ausgang ist.
Bsp.: #define INIT_DDRA 0b00000001 --> PortA PinA0 (ADC0) ist jetzt als Ausgang festgelegt weil ich diesen auf "1" setzte.

#define INIT_PRTA 0b00000000--> hier lege ich fest, welchen Anfangswert der entsprechende Pin bei dem Makro initPort() erhält. Dabei steht "0" für ausgeschaltet und "1" für eingeschaltet.

Ist das jetzt so richtig ?

Jetzt meine Frage wenn das alles so hinhaut.
(1): Soll ich das Makro initPort() in meinem Programm aufrufen in der Main oder wird die schon aufgerufen und automatisch initialisiert ? Ich denke das Passiert automatisch in der header datei der Base und muss nicht extra aufgerufen werden von mir.
(2): und jetzt WICHTIG: wie kann ich nun in meinem Programm den Port zum Beispiel ständig ein und ausschalten also eine LED z.B. zum blinken bringen ? Mit welchem Befehlsausdruck mache ich das?? ist das dieser kram hier ? DDRA &= ~(ADC1 | ADC2);
Wenn ja dann verstehe ich das nicht.

Danke schonmal

Grüße Christian