Red de conocimiento informático - Conocimiento sistemático - Código fuente de Wen Ziqi

Código fuente de Wen Ziqi

Se recomienda que el cartel busque "51 Tutorial de innovación en lenguaje C de microcontrolador, esperando a Wen Ziqi" publicado por Beihang Press.

El código fuente se transfiere de: "51 Tutorial de innovación en lenguaje C del microcontrolador" Wen Ziqi está esperando.

/*Nombre del experimento: Experimento de transmisión y recepción de datos del puerto serie

*Descripción: en el experimento de recepción de datos del puerto serie del microcontrolador,

Qué datos se envían mediante ¿El asistente de depuración en serie?

El microcontrolador envía los datos recibidos a la PC mediante una consulta.

*Autor: Wen Ziqi

*Fecha de revisión: 4/5/2010

*/

#include "stc.h " // cargar "stc.h "

/********************************* * ******

*Nombre de la función: UARTInit

*Entrada: Ninguna

*Salida: Ninguna

*Función : Inicialización del puerto serie

*************************************** ********* */

Void UARTInit(void) //Definir la función de inicialización del puerto serie.

{

SCON = 0x 50; // 8 bits de datos, se permite la recepción

T2CON = 0x34 // El temporizador 2 se utiliza para el dispositivo de generación de velocidad en baudios .

RCAP2L = 0xD9 //La velocidad en baudios son los 8 bits inferiores de 9600.

RCAP2H = 0xFF//Alta 8 bits, velocidad en baudios 9600.

}

/************************************ ******

*Nombre de la función: UARTSendByte

*Entrada: El byte que se enviará.

*Salida: Ninguna

*Función: El puerto serie envía un solo byte.

******************************************/

vouiuartsendbyte(unsigned charbyte)//Define la función de envío de datos del puerto serie.

{

SBUF = bytes; //Buffer cargado con bytes para enviar.

while(TI == 0); //Cuando se complete la transferencia, el indicador TI se establecerá en 1.

TI = 0; //Borrar el indicador de finalización de la transferencia.

}

/************************************ ******

*Nombre de función: principal

*Entrada: Ninguna

*Salida: Ninguna

*Suma de trabajo Capaz de: Temas funcionales

*************************************** **** ***/

Void main(void) //Función principal

{

Recepción de caracteres sin firmar //Declarar variable recv

p>

UART init(); //Inicialización del puerto serie

Y (1) //Ingrese un bucle infinito.

{

If(RI) // Detecta la posición del indicador de finalización de recepción 1.

{

RI = 0; //Borrar el indicador de finalización de recepción.

recv = SBUF//Leer los datos recibidos

UARTSendByte(recv); //Devolver los datos recibidos.

}

}

}