was beudetet _BV ?

Gast #684453
Lesenswert?

_BV(x) steht für BitValue und ist ein veraltetes Makro, welches die 
Wertigkeit eines Bits (wie sie nun mal für den Atmel definiert sind) in 
einen Wert umwandelt

_BV(x) = 2^(x-1) = (1 << x)

MfG  Peter
Gast #684461
Lesenswert?

> _BV(x) = 2^(x-1) = (1 << x)

Fast: _BV(x) = 2^x

wbei man dazu sagen sollte, dass mit ^ der Potenz- und nicht der
Exor-Operator gemeint ist.

Die gesamte Anweisung setzt im Register TIMSK die beiden Bits TOIE2
und TOIE1. Mehr zum Thema Bitmanipulation mit &, | und <<:

  http://www.mikrocontroller.net/articles/Bitmanipulation

@peter:
> _BV ... ist ein veraltetes Makro

Wieso ist das veraltet? Und was ist der moderne Ersatz dafür?
Natürlich kann man auch einfach << nehmen, was wahrscheinlich die
meisten auch tun.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren