Red de conocimiento informático - Aprendizaje de programación - Problema del microcontrolador PIC Al transmitir datos a través del puerto serie, parece que sigue interrumpiendo el programa y no puede ingresar al bucle principal.

Problema del microcontrolador PIC Al transmitir datos a través del puerto serie, parece que sigue interrumpiendo el programa y no puede ingresar al bucle principal.

char sin firmar rev_data = 0

char sin firmar send_data = 0;

interrupción nula ISR()

{

if (RCIE amp; RCIF) //Determina si se trata de una interrupción de recepción del puerto serie

{

rev_data = RCREG; //Lee los datos en el búfer de recepción

p>

if(TRMT == 1)

{

TXREG = rev_data

}

PORTD; = ~PORTD ;

}

}

Es mejor no asignar directamente el valor del registro al microcontrolador. Para las interrupciones de recepción del puerto serie, el. Los datos del buffer deben leerse para borrarlos. Además, se requiere un retraso prolongado en while (1) en la función principal; de lo contrario, los datos devueltos por el microcontrolador no serán visibles después de enviarlos desde el asistente del puerto serie. Puede intentarlo, pero existe. No hay garantía de que funcione.