Funktion "bit_is_set(register,position)" in codevision

Gast #464357
Lesenswert?

Hallo,
ich steige gerade von AVR Studio auf Codevision um.
Dabei möchte ich mein bisheriger Code an Codevision anpassen.

Nun gibt es für AVR Studio die Funktion "bit_is_set(register,position)".

Wie kann ich diese Funktion in Codevision schreiben?

Hier ein kleiner Codeauszug
1
void LCD_SET_COLUMN(unsigned char column_2)
2
{
3
         ...
4
  if(bit_is_set(column_2,5)) column_msb = column_msb + 0x04;
5
  if(bit_is_set(column_2,5)) column_msb = column_msb + 0x02;
6
  if(bit_is_set(column_2,4)) column_msb = column_msb + 0x01;
7
  if(bit_is_set(column_2,3)) column_lsb = column_lsb + 0x08;
8
         ...

Danke im Vorraus.
Gruß Daniel
Gast #464366
Lesenswert?

da gibts nichts CodeVision-spezifisches.
if (column_2 | 1<<5) ...
1<<5 kannst du natürlich direkt durch eine Zahl ersetzen. Oder mit 
defines, etwas besser lesbar, aber in dem Zusammenhang nicht unbedingt 
nötig:
#define test_bit_5 0x10
if (column_2 | test_bit_5)...

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