Forum: Compiler & IDEs Mehrere Ausgangs Pins in eine Variable


von Anton L. (Gast)


Lesenswert?

Hi. Ist es möglich mehre Pins, in meinem Fall PD0,PD1, PD3-7, PC3-5 (10 
Stück) zu einer int16 zusammenzufassen, so dass ich darauf Bitschift bzw 
inkrement anwenden kann und so die Ausgänge nach ihrer Bitposition in 
den 2 Bytes geschalten werden? Bsp. var = 0x013B; macht dann
PD0 -> 0
PD1 -> 1
PD3 -> 0
PD4 -> 0
PD5 -> 1
PD6 -> 1
PD7 -> 1
PC3 -> 0
PC4 -> 1
PC5 -> 1

Arbeite mit Atmega8 und WINAVR (Programmer's Notepad) + AVRDude + STK200 
Programmer

von Uwe S. (de0508)


Lesenswert?

In mehreren Schritten ja.

Ich würde dann schon auf die Dekodierung für die Ausgabe auf PORTD und 
PORTC achten.

von Ano N. (oorim)


Lesenswert?

Als Skizze:
var = PD1+PD2+PD3+...
var = PortD&0x01+PortD&0x02+...
Bzw umgekehrt
PD1 = var&0x01
PD2 = var&0x02
etc

Ist ja nicht unüblich eine Variable als Bitfeld zu benutzen

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.