This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

c code explanation

please can some one explain to me how this dt works i don't understand he didn't assigned any value to dt and he compares it and used &
please can some one explain to me how this Bitwise and & operator works

void LCD_WriteData(uint8_t dt)

{

if(((dt >> 3)&0x01)==1) {d7_set();} else {d7_reset();}

if(((dt >> 2)&0x01)==1) {d6_set();} else {d6_reset();}

if(((dt >> 1)&0x01)==1) {d5_set();} else {d5_reset();}

if((dt&0x01)==1) {d4_set();} else {d4_reset();}

}

source:
narodstream.ru/.../
thanks in advance

Parents
  • Maybe start by learning C, then how bits are represented within a byte.

    dt is an input parameter to the function, the value will match what is sent into the function ie LCD_WriteData(0x0E); where upon entry dt = 0x0E

    The routine processes the byte, looking at the state of specific bits and reflecting that at and out via dX_set() or dX_reset() functions.

Reply
  • Maybe start by learning C, then how bits are represented within a byte.

    dt is an input parameter to the function, the value will match what is sent into the function ie LCD_WriteData(0x0E); where upon entry dt = 0x0E

    The routine processes the byte, looking at the state of specific bits and reflecting that at and out via dX_set() or dX_reset() functions.

Children