close

La construcción de un laboratorio de Azure - Ejecución P2S (Point-to-Site) VPN

El microcontrolador PIC16F628A ha incorporado un transmisor universal síncrono asíncrono receptor (USART) de hardware que permite comunicarse con una amplia gama de dispositivos en serie, como chips de memoria, pantallas LCD, ordenadores personales, etc. El módulo USART tiene dos modos de funcionamiento: síncrona ( requiere un reloj sincronizado entre el transmisor y el receptor) y asíncrona (no hay reloj de sincronización requerida). A medida que el modo asíncrono es más popular, nos centraremos sesión de laboratorio de hoy sobre este y estableceremos un enlace de datos serie bidireccional entre el microcontrolador PIC y un PC. Requerido teoría de la comunicación en serie se utilizan en los sistemas basados ​​en microcontroladores, sobre todo debido a la escasez de disponibles pines I / O. Además de para las comunicaciones de larga distancia, la transferencia de datos en serie es más simple y rentable como las conexiones de hardware requeridos en el enlace de datos se pueden reducir a tres (Tx, Rx, y Gnd). Hay dos tipos diferentes de comunicaciones serie: síncrona y asíncrona.El desafío clave en un enlace de datos en serie es la de mantener la sincronización entre el transmisor y el receptor. El método asíncrono utiliza un protocolo de inicio y bit de parada para sincronizar los dos extremos. Cada byte carácter es enviado en un marco que consiste en un bit de inicio, seguido por los bits de caracteres, seguido (opcionalmente) por un bit de paridad, y finalizado por una o más bits de parada. El emisor y el receptor tienen que ser inicializado para utilizar la misma velocidad de datos, el número de bits de datos, y el número de bits de parada. En estado de reposo, la salida de transmisión está en estado lógico alto. Cuando el transmisor está listo para enviar un byte carácter, señala el receptor tirando de la línea de transmisión baja para un periodo de reloj. Este es el bit de inicio y le indica al receptor que sigue un marco. El receptor lee el número de bits de caracteres esperados de acuerdo con el protocolo adoptado hasta que la línea se tira a la lógica alta por el transmisor (uno o más bits de parada), y que es el final de la trama. Todo el proceso esrepite cada vez que el transmisor tiene que enviar un byte carácter. Esta forma de transmisión en serie se denomina asíncrono porque el receptor vuelve a sincronizar en sí al transmisor cada vez que los datos se envían usando el bit de inicio. Sin embargo, dentro de cada trama se sincronizan las dos partes. Por otro lado, la comunicación serie síncrona transmitir caracteres en bloques sin trozos de encuadre que les rodea. El transmisor y el receptor están sincronizados con una línea de reloj separada o, en algunos casos, la señal de reloj está contenida en los caracteres transmitidos. En los dos tipos de comunicaciones en serie, la velocidad a la que se envía y recibe los datos se conoce como la velocidad de transmisión. El módulo USART dentro del microcontrolador PIC16F628A soporta ambos tipos de comunicaciones en serie, pero es el más adecuado para el método asíncrono. En el modo asíncrono, RB2 actúa como una salida de transmisión de datos (TX), y RB1 como recibir datos (RX) de entrada. Un byte de datos en serie se envía como una cadena de 10 bits; unbit de inicio, ocho bits de datos y un bit de parada, como se muestra a continuación. El puerto serie del PC (también conocido como puerto COM) utiliza el estándar RS232-C para la comunicación en serie. Esta norma especifica la señal eléctrica, mecánica, funcional y especificaciones de procedimiento de la interfaz de comunicación serie. Una lógica alta para RS232-C es una tensión de señal en el intervalo de -3 V a -15 V (típicamente -12 V), y un lógico bajo es de entre 3 V a 15 V (típicamente 12 V). Así que a diferencia de niveles lógicos del microcontrolador PIC, una alta RS232-C es un voltaje negativo, y la mínima es de una tensión positiva. La siguiente tabla muestra las conexiones estándar para RS232-C, de 25 pines, de 9 pines y conectores RJ-45. Para más detalles sobre cada uno de estos pernos de la señal, se puede encontrar toneladas de literatura en la red. Para este experimento, estamos implementando una interfaz en serie mínima entre el microcontrolador PIC y un PC utilizando sólo las señales TX, RX, y GND. pernos de la señal RS232 en un conector hembra DB-9 Vamos a utilizar el modo asíncrono decomunicarse con un puerto serie RS232-C en el PC. Desde el PIC16F628A ya se ha incorporado en el hardware (USART) que admite la comunicación serie asíncrona, así que todo lo que se requiere es un cambiador de nivel externa para traducir señales TTL del PIC a niveles RS232-C, y viceversa. Esto se puede lograr mediante el uso de un chip MAX232 hecha por Maxim. El chip requiere unos condensadores externos para sus bombas de carga internos para generar 12 V y -12 V necesario para la comunicación RS232-C. Una forma sencilla de enviar y recibir bytes a través del puerto serie del PC es mediante el uso de la aplicación llamada HyperTerminal que viene con el sistema operativo Windows. Puede abrir la ventana de la aplicación HyperTerminal a través de Inicio → Menú → Programas → Accesorios → Comunicaciones → HyperTerminal. Se puede crear una conexión con el puerto serie (por ejemplo, COM1), seleccione una velocidad de transmisión, número de bits, ajuste de paridad, etc. Cuando HyperTerminal se conecta al puerto serie, cualquiera que sea el carácter que escribe se envía (como ASCII) a través de laPuerto serial. Los caracteres recibidos también se muestran en la pantalla. Configuración del circuito se muestra la configuración del circuito para este experimento a continuación. Tiene el circuito de la configuración básica del módulo de tablero PIC16F628A y un nivel shfter utilizando el chip MAX232. El MAX232 requiere cuatro condensadores externos (cada 1 UF) para sus bombas de carga internos. Un MAX232 es en realidad un controlador / receptor dual y que sólo está utilizando uno. Para más detalles sobre el chip MAX232, leer el. Por el lado del PC, sólo tres líneas están conectadas (Tx, Rx, y tierra) al puerto COM a través de un conector de 9 pines. Software Como es habitual, el programa se desarrolla con el Pro MikroC for PIC. El compilador MikroC ofrece la biblioteca UART que admite la comunicación serie asíncrona en modo full duplex (que significa transmitir y recibir al mismo tiempo). Esto hace que el lote de programación más fácil. Por ejemplo, si desea inicializar el módulo de hardware UART del PIC16F628A con la velocidad de datos de 9600 baudios, sólo tiene que escribir UART1_Init (9600). losejemplo de código que aquí se establece un enlace serie asíncrona bidireccional entre el microcontrolador PIC16F628A y el PC. El microcontrolador envía el mensaje "Introduzca un número 'que se muestra en la ventana de Hyperterminal. Cuando se introduce cualquier carácter del teclado, se envía al microcontrolador a través del puerto COM. El microcontrolador PIC lo leerá y enviarlo de vuelta a la PC, que se muestra de nuevo en la ventana de Hyperterminal. Los setttings Hyperterminal para esto debe ser Bits por segundo: 9600, Bits de datos: 8, Paridad: Ninguna, Bits de parada: 1, Control de flujo: Ninguno. / * Práctica 8: UART Hardware MCU: PIC16F628A 4 MHz cristal externo, MCLR Habilitado, PWRT Habilitado, WDT OFF Copyright @ Rajendra Bhatt Dec 12, 2010 * / nueva línea void () {  UART1_Write (13); // Retorno de carro  UART1_Write (10); // Linea de alimentación } void main () {  MyError unsigned char, Temp;  CMCON = 7; // Deshabilitar comparadores  TRISB = 0b00000010;  UART1_Init (9600);  Delay_ms (100);UART1_Write_Text ( "Prueba de UART!");  nueva línea();  do {   UART1_Write_Text ( "Introduzca un número:");   while (UART1_Data_Ready ()!);   Temp = UART1_Read ();   nueva línea();   UART1_Write_Text ( "Usted ha indicado:");   UART1_Write (Temp);   nueva línea();  } While (1); } // Fin de salida principal () Aquí hay una instantánea de la salida de la ventana de Hyperterminal en mi máquina de Windows XP. Con el fin de mostrar lo que ha escrito usted necesita para activar la opción 'Echo typed carácter local' de la configuración.

Previous Post     Next Post


TAGS


CATEGORIES

.