Tengo un sensor de color que es semi-funcional en este momento. Soy bastante nuevo en Assembly, especialmente en PIC, y estoy confundido en cuanto a cómo manejar una dirección "alta" y "baja" para un número. Dejame explicar.
Cuando leo desde mi sensor de color, tengo que leer desde una dirección alta y baja. Esto no es un problema, más bien mi problema es procesar este número después de que lo leí. El tutorial que seguí hace algo como esto:
colour1 = (addrH << 8) | addrL ...
Lo que tiene sentido: tenemos 16 bits, desplazamiento a la izquierda 8 para colocar los bits altos en ese momento o para manejar los bits bajos. Mi pregunta es, ¿cuál es la mejor manera de hacer esto en ensamblaje?
He intentado ignorantemente algo como esto
SHIFT_8L macro count
rlncf addrH
movlw b'11111110'
andwf addrH,1
decfsz count
bra SHIFT_8L
movff addrH, WREG
iorwf addrL, 0
movwf final
endm
Pero en realidad, todo lo que está haciendo es simplemente mover addrL
a final
. En última instancia, tendré que multiplexar para ver qué color domina y, ¿cuál es la forma más eficiente de hacerlo?
¡Gracias!
Editar 2017/02 / 21h47 Estoy usando PIC18F4620 y estoy interactuando con un TCS34725 Color Sensor .