Przesunięcia bitowe enkapsuluje się w makrodefinicje. _BV(5) oznacza maskę z ustawionym 5 bitem (1 << (5)).
Dla przejrzystości.
Tak.
Przesunięcia bitowe enkapsuluje się w makrodefinicje. _BV(5) oznacza maskę z ustawionym 5 bitem (1 << (5)).
Dla przejrzystości.
Tak.
Adam Wysocki pisze:
Makro _BV istnieje standardowo tylko na AVRze, wg mnie jest średnio czytelne i ja osobiście wolę pisać normalnie:
LED_PORT |= (1 << LED_BIT_NUMBER);
ew.
LED_PORT &= ~(1 << LED_BIT_NUMBER);
Oczywiście w podobnych często występujących przypadkach robię od razu makra np. SET_LED i CLEAR_LED i nie muszę pamiętać o szczegółach.
Have something to add? Share your thoughts — no account required.
Ask the community — no account required