Estoy leyendo un valor de sensor y lo paso a TX para verlo en mi computadora. Tengo el siguiente fragmento de código:
while(1)
{
unsigned int reading = ADCW;
UDR0 = ADCL; // Low value
UDR0 = ADCH; // High value
if (reading > 512 )
{
// It's bright
} else {
// It's dark
}
_delay_ms(30);
}
Estoy obteniendo el siguiente resultado:
00000674: 00010010 00000010 ..
00000676: 00011111 00000010 ..
00000678: 00010100 00000010 ..
0000067a: 00010101 00000010 ..
0000067c: 00011111 00000010 ..
0000067e: 00000010 00011001 ..
00000680: 00000010 00011110 ..
00000682: 00000010 00010010 ..
00000684: 00000010 00011100 ..
00000686: 00000010 00011100 ..
00000688: 00000010 00010010 ..
0000068a: 00000010 00011111 ..
0000068c: 00000010 00011010 ..
0000068e: 00000010 00010100 ..
00000690: 00000010 00100001 .!
00000692: 00000010 00010111 ..
00000694: 00000010 00010110 ..
00000696: 00000010 00100001 .!
00000698: 00000010 00010101 ..
0000069a: 00000010 00011000 ..
0000069c: 00000010 00011111 ..
0000069e: 00000010 00000010 ..
000006a0: 00011001 00000010 ..
000006a2: 00011011 00000010 ..
000006a4: 00001111 00000010 ..
Ahora el problema es que no entiendo cómo poner estos dos números binarios juntos. Debería obtener un decimal en un rango de 0 a 1023. ¿Qué operaciones de bits necesito realizar para convertir esto en un número normal legible por humanos? Gracias!