Sie sind auf Seite 1von 6

Laboratorio de Microprocesadores II

Comunicacin Serial

Microcontrolador y PC

PRCTICA N 4
COMUNICACIN SERIAL
MICROCONTROLADOR Y PC
I.

II.

Objetivo:
Conocer las configuraciones en la tarjeta desarrollo UNI-DS6
Identificar los tipos de comunicacin serial entre un Microcontrolador y PC
Implementar la configuracin serial para la comunicacin con la PC
Desarrollar aplicaciones en MikroBasic o MikroC para la comunicacin serial.
Marco Terico:
Los modos de comunicacin serie y paralelo poseen ciertas ventajas y desventajas una
sobre otra. La comunicacin serial es una opcin que se aconseja cuando se quiere
alcanzar largas distancias entre emisor y receptor adems de la capacidad de deteccin de
error. Los microcontroladores de la serie PIC 18 poseen un mdulo de comunicacin
USART (Universal Synchronous Asynchronous Reception and Transmission) capaz de
soportar la comunicacin serie sncrona y asncrona. El USART llamado SCI (Serial
Communication Interface) puede funcionar en los modos de comunicacin full dplex
(bidireccional asncrono) y half dplex (sncrono unidireccional).
Se puede especificar los modos de comunicacin del USART como:
1. Asncrona (full dplex bidireccional)
2. Sncrona maestro (half dplex, unidireccional)
3. Sncrona esclavo (half dplex, unidireccional)
En el modo asncrono la transferencia de informacin se realiza sobre dos lneas TX
(transmisin) y RX (recepcin) enviando y recibiendo los bits por dichas lneas bajo la
frecuencia del reloj del USART. En el modo sncrono la comunicacin se realiza sobre dos
lneas DT que transmite los datos en ambos sentidos al ritmo de la frecuencia emitida por
el dispositivo maestro por la lnea CK. En los modos asncrono y sncrono los pines que se
utilizan son RC6/TX/CK y y RC7/RX/DT. Los microcontroladores PIC o ATMEGA en el
modo asncrono utilizan la norma RS-232-C donde cada palabra se enva
independientemente de las dems. El dato puede estar conformado por 8 o 9 bits y le
precede un bit de inicio de comunicacin (START) y otro de finalizacin (STOP).
Los bloques que configuran la arquitectura USART en modo asncrono son:
1. Circuito de muestreo
2. Generador de baudios
3. Transmisor asncrono
4. Receptor asncrono

Docente: Ing. Arturo Marn Thames


Auxiliar: Univ. Mauricio Nina Conde

Laboratorio de Microprocesadores II

Comunicacin Serial

Microcontrolador y PC

1. Circuito de muestreo: Acta sobre el pin RC7/RX/DT que recibe la informacin o


control y se encarga de muestrear 3 veces su valor.
2. Generador de baudios: La frecuencia en baudios (bits por segundo) a la que se realiza
la transferencia toma valores estandarizados (1200, 2400, 4800, 9600, 19200, etc.). El
mdulo USART del microcontrolador posee un generador de baudios BRG que posee
un registro de control denominado SPBRG. La frecuencia en baudios tambin depende
del bit BRGH que se encuentra dentro del registro TXSTA. Este bit determina el modo
de velocidad alta o baja, de acuerdo a las siguientes ecuaciones y condiciones de los
bits:
Frecuencia en baudios = Fosc / (K (X+1))
X: valor cargado en el registro SPBRG
BRGH = 0 baja velocidad K = 64
BRGH = 1 alta velocidad K = 16
X = Fosc / Frecuencia / K 1

Docente: Ing. Arturo Marn Thames


Auxiliar: Univ. Mauricio Nina Conde

Laboratorio de Microprocesadores II

Comunicacin Serial

Microcontrolador y PC

Protocolo de comunicacin asncrona. Fuente: Microcontroladores PIC Diseo


prctico de aplicaciones, Angulo, Romero, Angulo.
3. Transmisor asncrono: El dato que se desea transmitir por el USART se deposita en el
registro TXREG y a continuacin se pasa al registro de desplazamiento TSR. Adems
de los bits de datos se envan los bits de control de inicio y parada. El USART del
equipo receptor recibe los bits uno por uno, elimina los dos de control y mueve los de
datos del registro receptor RSR al registro RCREG.

1.
2.
3.
4.
5.
6.
7.

La secuencia de pasos para implementar la transmisin serial con el microcontrolador


PIC 18 es la siguiente:
Configurar las lneas RC6/TX/CK como salida y RC7/RX/DT como entrada.
Poner el bit SYNC = 0 (bit de seleccin de modo asncrono del USART, en el registro
TXSTA) y SPEN = 1 (bit 7 del registro RCSTA, habilitacin del puerto serie).
Si se trabaja con interrupcin del puerto serie colocar TXIE = 1 y GIE = 1.
Si los datos son de 9 bits en lugar de 8 colocar TX9 = 1.
Cargar el valor de X para obtener la frecuencia de baudios deseada en el registro
SPBRG.
Activar la transmisin con TXEN = 1. El bit TXIF = 1, debido a que al empezar TXREG
est vaco.
Cargar en TXREG el dato a transmitir.

4. Receptor asncrono: Los datos se reciben en serie bit a bit por el pin RC7/RX/DT y se
introducen en forma secuencial al registro RSR que opera a una frecuencia 16 veces
mayor que la frecuencia de trabajo. Si el dato consta de 9 bits se debe programar el bit
RX9 = 1.
Los pasos que se deben seguir para lograr la recepcin de datos es la siguiente:
1. Cargar con el valor X al registro SPBRG para operar con la tasa de baudios deseada.
Se debe determinar el valor de BRGH para baja o alta velocidad.
2. Habilitar el USART en modo asncrono con SPEN = 1 y SYNC = 0.
3. Si se trabaja con interrupcin del puerto serie con la llegada del bit de STOP colocar
RCIE = 1 y GIE = 1.
4. Poner RX9 = 1 en caso de recibir 9 bits
Docente: Ing. Arturo Marn Thames
Auxiliar: Univ. Mauricio Nina Conde

Comunicacin Serial

Laboratorio de Microprocesadores II

Microcontrolador y PC

5. Deteccin de direccin con ADDEN = 1 (comunicacin de un maestro y mltiples


esclavos)
6. Habilitacin de recepcin CREN = 1 (bit 4 del registro RCSTA, recepcin continua de
bits)
7. Al completarse la recepcin RCIF = 1 y se produce una interrupcin.
8. Lectura de RCSTA para determinar si se ha producido algn error.
9. Leer el byte del registro RCREG para determinar si el microcontrolador ha sido
direccionado (modo maestro mltiples esclavos).
10. Si se produce un error CREN = 0.
11. Si el microcontrolador ha sido direccionado ADDEN = 0 (bit 3 del registro RCSTA) en
modo maestro mltiples esclavos.

Registros utilizados en la transmisin y recepcin asncrona


DIRECCIN
(hexadecimal)

NOMBRE

BIT 7

BIT 6

BIT 5

BIT 4

BIT 3

BIT 2

BIT 1

BIT 0

8C

PIE1

PSPIE

ADIE

RCIE

TXIE

SSPIE

CCP1IE

0C

PIR1

PSPIF

ADIF

RCIF

TXIF

SSPIF

CCP1IF

98

TXSTA

CSRC

TX9

TXEN

SYNC

--

BRGH

TMR2I
E
TMR2I
F
TMRT

TMR2I
E
TMR2I
F
TX9D

19
18

TXREG
RCSTA

FERR

OERR

RX9D

1A
99

RCREG
SPBRG

Registro de transmisin del USART


SPEN RX9
SRE
CREN ADDEN
N
Registro de recepcin del USART
Registro generador de baudios

III.

Marco Practico:
En esta prctica utilizaremos el software MikroC Pro de Mikroelectronica que tiene las
siguientes funciones bsicas para usar el puerto serie del PIC:
FUNCIN
MikroC Pro
Inicializacin UART1_init
Datos
UART1_Data_ready
Leer
UART1_read
Escribir
UART1_write

Docente: Ing. Arturo Marn Thames


Auxiliar: Univ. Mauricio Nina Conde

Laboratorio de Microprocesadores II

Comunicacin Serial

Microcontrolador y PC

Se muestra a continuacin un programa de ejemplo de comunicacin serial entre una PC y


el microcontrolador, haciendo que el microcontrolador enve la informacin que recibe de la
PC.
char uart_rd;
void main() {
ANSEL = 0;
// Configuracin Pines Anlogo/digital
ANSELH = 0;
UART1_Init(9600);
// Inicializacin del mdulo UART a 9600 bps
Delay_ms(100);
// Tiempo de espera mientras el modulo se
estabiliza
UART1_Write_Text("Start");
UART1_Write(10);
UART1_Write(13);
while (1) {
// Bucle infinito
if (UART1_Data_Ready()) {
// Pregunta si los datos son recibidos
uart_rd = UART1_Read();
// Lee los datos recibidos
UART1_Write(uart_rd);
// y envia los datos por UART
}
}
}

IV.

Aplicacin (Trabajo de laboratorio):


Realizar y establecer una comunicacin entre el PIC18F o ATMEGA y una PC mediante el
USART en modo asncrono utilizando el protocolo RS-232 de la placa UNI-DS6.

Docente: Ing. Arturo Marn Thames


Auxiliar: Univ. Mauricio Nina Conde

Laboratorio de Microprocesadores II

Comunicacin Serial

Microcontrolador y PC

Firma 1: El microcontrolador enviara un dato de 8 bits a la PC (el cdigo ser introducido


por el estudiante mediante 8 interruptores conectados al puerto A del uC), El PC recibir el
dato y lo mostrara por el USART Terminal en MikroBasic o MikroC (La velocidad de
comunicacin ser de 9600 baudios).
Firma 2: El PC enviara un nmero a travs del USART Terminal en MikroBasic o MikroC. El
Microcontrolador recibir este nmero y ser mostrado en la pantalla LCD conectada a la
placa de desarrollo UNI-DS6.
.
V.
INFORME (Adjuntar la hoja de firmas):
1. Descripcin: Desarrollar una explicacin del trabajo realizado en laboratorio,
demostrando la consolidacin de conocimientos adquiridos, indicando las diferencias y
similitudes de la teora con la prctica.
(Transcrito)_20%
2. Resultados: Representar en tablas y diagramas de flujo, los programas desarrollados,
demostrando resultados obtenidos en la aplicacin.
(Manuscrito)_30%
3. Implementacin: Presentacin de esquemas, capturas de pantalla donde muestre los
circuitos implementados en laboratorio, adems de cdigo fuente que se utiliz en la
prctica debidamente comentado.
(Transcrito)_30%
4. Conclusiones: Escribir en un prrafo lo aprendido o verificado en laboratorio, incluyendo
sugerencias y recomendaciones sobre algo que no s contemple en la presente gua.
(Manuscrito)_10%
5. Bibliografa: Referenciar y anotar las fuentes de informacin consultadas como libros,
apuntes, pginas web. Con el siguiente estndar:
(Transcrito)_10%

Nombre del autor, Nombre del documento, ao de la publicacin, direccin de la pgina


web [Fecha de consulta].

Docente: Ing. Arturo Marn Thames


Auxiliar: Univ. Mauricio Nina Conde

Das könnte Ihnen auch gefallen