Gracias Darkman por tu respuesta y sugerencias.
Este es el código que estoy utilizando para recibir los datos, los almaceno en la variable lectura.
long lectura;
void main()
{
trisb=0x00;
trisd=0x00;
portb=0;
portd=0;
UART1_Init(9600);
delay_ms(100);
while(1)
{
if(UART1_Data_Ready()==1)
{
lectura = UART1_READ();
portb = lectura;
}
}
}
La idea es la siguiente, quisiera sacar dos señales por los pwm del pic y una señal por el puerto B el cual lo tengo configurado como salida; y a la salida de este puerto tengo un arreglo de resistencias R-2R para sacar el valor analógico.
Pero antes de sacar por el pwm y el puerto B, quiero separar los 3 bytes, e intentado guardarlos en distintas variables.
A la variable lectura e tratado de recorrerle los bits y hacer una operación AND
dato1=(lectura>>
& 0xFF
dato2=(lectura>>16) & 0xFF
tampoco me ha funcionado
Antes de sacar por el pwm, estoy probando sacar dos bytes, uno por el puerto B y otro por el D con el mismo arreglo de resistencias, pero lo que consigo es sacar por los dos puertos el ultimo byte recibido...
Es evidente que necesito separar los 3 bytes que envío desde labview, pero no logro hacerlo, la verdad me olvidado un poco el programar pics, así que cualquier sugerencia sera bienvenida
Gracias.