Gast
#100790
Hallo, könnt Ihr mir als Anfänger mal folgende Fragen beantworten? Ich lerne am besten an Beispielen. Wozu sind die folgenden Definitionen: \avr\portpins.h *********************************************************** /* Port Data Register (generic) */ #define PORT7 7 ... /* Port Data Direction Register (generic) */ #define DD7 7 ... /* Define PORTxn values for all possible port pins. */ /* PORT A */ #if defined(PA0) # define PORTA0 PA0 ... ***************************************************** \avr\ z.B. m8.h ***************************************************** /* PORTB */ #define PB7 7 #define PB6 6 #define PB5 5 #define PB4 4 #define PB3 3 #define PB2 2 #define PB1 1 #define PB0 0 /* DDRB */ #define DDB7 7 #define DDB6 6 #define DDB5 5 #define DDB4 4 #define DDB3 3 #define DDB2 2 #define DDB1 1 #define DDB0 0 /* PINB */ #define PINB7 7 #define PINB6 6 ... ************************************************************ Will also eigentlich fragen: Wie spreche ich einen Port an? Beispiel: eine Variable a soll True/False sein, wenn PINB7 nach Masse ist oder eben nicht. a=PINB7; ??? oder z.B. möchte ich eine Funktion benutzen die True/False zurückgibt, wenn mehrer PINS nach Masse sind. Prototye: uint8_t Portabfrage(uint8_t PINX uint8_t PINY uint8_t PINZ); Aufruf dann mit a=Portabfrage(PINC1,PINC3,PINA2); ? Um es deutlich zu sagen es geht mir einfach um die Syntax. Hoffe ich hab mich nicht zu wirr ausgedrückt! Danke für die Hilfe! gruss Holger