Red de conocimiento informático - Espacio del host - Utilizo el microcontrolador at89s52 para comunicarme con el puerto serie de la computadora, pero los datos recibidos y enviados no son normales. Ayúdenme a verificarlo.

Utilizo el microcontrolador at89s52 para comunicarme con el puerto serie de la computadora, pero los datos recibidos y enviados no son normales. Ayúdenme a verificarlo.

Cuando hice experimentos antes, descubrí que usar el modo de trabajo del puerto serie del microcontrolador para enviar datos a la computadora no se puede enviar con precisión. A menudo envía un 0x00 y la computadora puede recibir 0xFE. Mi profesor analizó que podría haber un fenómeno de pérdida de código. Más tarde, mi solución fue configurar el modo de trabajo 3 del puerto serie del microcontrolador para enviar datos, es decir, enviar un bit más de datos, pero la computadora ignora el bit extra. . Este bit adicional es sólo para garantizar que no se pierdan códigos.

No puedo entender su programa VB, pero mi sugerencia es la siguiente:

1: Primero vaya al siguiente software de depuración de puerto serie común para reemplazar su programa VB y use su Microcontrolador original El programa envía datos a la computadora. Si los datos recibidos por el software de depuración del puerto serie son correctos, significa que hay un problema con su programa VB.

2: Si el método anterior aún recibe datos incorrectos, se recomienda cambiar el modo de funcionamiento del puerto serie del microcontrolador al modo tres, y no es necesario cambiar la velocidad en baudios ni otros parámetros. Luego use el software de depuración del puerto serie para recibir los datos y verlo.

Además: "PCON=0x00; //Habilitar interrupción total, habilitar interrupción del puerto serie"

PCON no es un controlador de interrupciones, la siguiente oración sí lo es. Activa las interrupciones.