Atmel AVR Mikrocontroller
Ein Portpin eines Mikrocontrollers kann auf verschiedene Arten gesetzt werden.
Dazu ein paar Beispiele:
1.) Binäre schreibweise
PORTA = 0b00001111; // Setzt die untersten 4 Bits von Port A
2.) Hexadezimale schreibweise
PORTA = 0x0F; // Setzt die untersten 4 Bits von Port A
3.) Dezimale schreibweise
PORTA = 15; // Setzt die untersten 4 Bits von Port A (15dez = Fhex)
4.) Schreibweise mit Bits schieben
PORTA = (1<<3) | (1<<2) | (1<<1) | (1<<0); // Setzt die untersten 4 Bits von Port A
Durchgesetzt hat sich die hexadezimale Schreibweise und die Bitschieberei, da diese Schreibweisen einfacher zu lesen sind.
Was bedeutet z.B. (1<<3) genau?
Hier wird das 0. Bit gesetzt und um 3 Stellen nach links geschoben ( aus 0000 0001 wird 0000 1000 )
Beispiel Bit 0 und Bit 7 setzen:
PORTA = (1 | 1<<7)