Forum: Mikrocontroller und Digitale Elektronik Ausgang togglen?


von MeisterPez (Gast)


Lesenswert?

Hi ihr!
Ich schreibe grade ein C-Programm für meinen AVR. Dabei würde ich gerne 
eine Funktion schreiben, die ein Ausgangsbit (z.B. Port B 0) toggled.

Leider bin ich mir nicht ganz sicher wie das am besten zu lösen ist...
Muss ich für jeden Pin eine eigene Variable anlegen, die toggeln, und 
dann den Pin auf den Wert dieser Variablen legen?

Oder kann ich direkt auslesen, was grade an diesem usgang anliegt, und 
das dann toggeln?

Danke!

von Falk (Gast)


Lesenswert?

Du bist zwar in falsche Forum geraten, aber egal.

> Oder kann ich direkt auslesen, was grade an diesem usgang anliegt, und
> das dann toggeln?

Ja. Einfach portX auslesen, Bits mit EOR invertieren und wieder 
zurückschreiben.

MFG
Falk

von Chef (Gast)


Lesenswert?

Nimm einen Zähler und schreibe eines der Bits auf den Ausgang raus.

von Matthias (Gast)


Lesenswert?

PORTB ^= (1<<n);
sollte gehen

von Thorsten (Gast)


Lesenswert?

Für Pin 0 von Port B:

PORTB ^= 0x01;

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.