Winavr und Bitoperationen

Gast #805861
Lesenswert?

Hallo,

beim Debuggen im AVRStudio stelle ich fest, dass mein Code im Winavr 
nich so will, wie gedacht.

Bei den Bitoperationen happert es ein bißchen:


void ColorChanger(unsigned char red, unsigned char green, unsigned char 
blue)
{

  unsigned char red_value;
  unsigned char green_value;
  unsigned char blue_value;


  green_value=0;
  blue_value=0;

  red=red&0x0F;  //Maskieren des Low-Nibbles

  red_value=red;

  red_value=red_value<<4; //Shiften des Low-Nibbles auf das High-Nibble

  red_value=red_value&red;//Engültiges Verknüpfen vom High-Nibble und 
Low-Nibble

...
}

Funktionsaufruf dann mit:
ColorChanger(0x0F, 0x00, 0x00);

Statt der red_value=0xFF kommt red_value=0 raus. :-(

Wat mach ich denn nun wieder falsch?


Gruß Bastian

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