Top Banner

of 37

Modulo Usart

Apr 14, 2018

Download

Documents

Eduardo Garcia
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 7/27/2019 Modulo Usart

    1/37

    ModuloUSART

  • 7/27/2019 Modulo Usart

    2/37

    El modulo USART tiene la funcin de

    transmitir o recibir datos en serie y puedeser en modo sncrono o asncrono.

    En el modo sncrono utiliza una seal de

    reloj y una lnea de datos.

    En el modo asncrono, no se enva laseal de reloj, sino que el emisor y

    receptor tienen que estar trabajando a lamisma frecuencia.

  • 7/27/2019 Modulo Usart

    3/37

    El modulo USART puede transmitir y recibir8 o 9 bits por transmisin y detectar

    errores de transmisin. Tambin puedegenerar interrupciones cuando seproduce una recepcin de datos ocuando la transmisin ha sido

    completada.

    La transmisin en serie consiste en enviarlos dato bit a bit por medio de una sola

    lnea en comn en periodos de tiempofijo, dando lugar a la velocidad detransmisin o bits por segundo llamadosbaudios.

  • 7/27/2019 Modulo Usart

    4/37

    Cuando los bits que componen el dato a

    enviar estn completos, son transferidos aun registro de corrimiento de latransmisin (TSR) y de ah son enviadospor el pin TX comenzando por el bit de

    start y terminando con el bit de stop

  • 7/27/2019 Modulo Usart

    5/37

    Despus de la deteccin del bit de start,los 8 bits entrantes por el pin RX sondesplazados por el registro de corrimientode entrada (RSR) uno a uno. Despus deque haya entrado el ultimo bit y el bit destop ha sido detectado, el dato es

    enviado al registro RCREG, si esta vaco.Este registro funciona como una pila deltipo FIFO (primero en entrar primero ensalir)

  • 7/27/2019 Modulo Usart

    6/37

    Modo Sncrono En este modo, se permite la transmisin

    continua de datos y no existe un lmite de

    tamao, la transmisin es de modo semi-duplex por lo que se enva y recibe por unsolo canal pero no de manerasimultanea.

    En este modo se puede transmitir de dosformas:

  • 7/27/2019 Modulo Usart

    7/37

    Modo SncronoModo Maestro

    Donde el pic maestro genera una seal

    de reloj e inicia o finaliza lacomunicacin.

    Modo Esclavo

    Donde el pic esclavo recibe la seal dereloj y depende del microcontroladormaestro para recibir o enviar lainformacin

  • 7/27/2019 Modulo Usart

    8/37

    Modo Asncrono En este modo, el emisor y el receptor trabajan

    con la misma frecuencia y separada, sta se

    programa antes de la transmisin alconfigurar la velocidad, mientras que lasincronizacin se realiza durante latransmisin. Cada dato contiene un tamaofijo y posee un bit inicial (start) y otro de paro

    (stop). Este modo de trabajo es del tipo full-duplex, donde se utiliza un pin para latransmisin TX y otro para recepcin RX.

  • 7/27/2019 Modulo Usart

    9/37

    Registros del USART Los registros a nivel ensamblador que

    componen al modulo USART son:

    SPBRG: Generador de Baudios TXSTA: Estado de transmisin y control RCSTA: Estado de recepcin y control TXREG: Registro de datos de transmisin

    RCREG: Registro de datos de recepcin PIR1: Flag de interrupcin PIE1: Habilitacin de la interrupcin

  • 7/27/2019 Modulo Usart

    10/37

    Registro TXSTA

    Bit 7: Seleccin de la fuente de reloj En modo asncrono no funciona

    Modo sncrono

    1 = Modo maestro

    0 = Modo esclavo

  • 7/27/2019 Modulo Usart

    11/37

    Bit 6: Habilitacin de transmisin de 9 bits

    1 = Transmisin de 9 bits 0 = Transmisin de 8 bits

    Bit 5: Habilitacin de la transmisin 1 = Transmisin habilitada

    0 = Transmisin deshabilitada

    Bit4: Seleccin del modo de trabajo 1 = Transmisin Sncrona

    0 = Transmisin Asncrona

    Bit 3: No implementado (0)

  • 7/27/2019 Modulo Usart

    12/37

    Bit 2: Seleccin de baudios

    Modo asncrono 1 = Alta velocidad

    0 = Baja velocidad

    No se utiliza en modo sncrono

    Bit 1: Estado del TSR 1 = TSR lleno

    0 = TSR vaco

    Bit 0: 9 bit o bit de paridad

  • 7/27/2019 Modulo Usart

    13/37

    Registro RCSTA

    Bit 7: Habilitacin del puerto serie 1 = Habilitado (pines RX y TX del pic)

    0 = Deshabilitado

    Bit 6: Habilitacin de recepcin de 9 bits 1 = Recepcin de 9 bits

    0 = Recepcin de 8 bits

  • 7/27/2019 Modulo Usart

    14/37

    Bit 5: Habilitacin de recepcin sncronaModo Sncrono

    1 = Habilitada

    0 = Deshabilitada

    Bit 4: Habilitacin de recepcin continuaModo Asncrono

    1 = Habiltada 0 = Deshabilitada

    Modo Sncrono

    1 = Habilitada

    0 = Deshabilitada

    Bit 3: No implementado (0)

  • 7/27/2019 Modulo Usart

    15/37

    Bit 2: Error de dato 1 = Error

    0 = No error

    Bit 1: Error de velocidad 1 = Error

    0 = No error

    Bit 0: 9 bit transmitido

  • 7/27/2019 Modulo Usart

    16/37

    Registro SPBRG La velocidad de transmisin es

    controlada en baudios por este registro

  • 7/27/2019 Modulo Usart

    17/37

    Modulo USART en C

    La instruccin para utilizar el modulo es lasiguiente:

    #use rs232(opciones)

    BAUD = X Velocidad en baudios

    XMIT = PIN Pin de TransmisinRCV = PIN Pin de Recepcin

    PARITY = X Bit de paridad x puede ser N

  • 7/27/2019 Modulo Usart

    18/37

    Para el envo se utilizan las siguientesinstrucciones:

    putc(variable);

    putchar(variable);

    puts(variable);

    printf(variable);

    Donde las variables pueden ser cadenas,variables o matrices

  • 7/27/2019 Modulo Usart

    19/37

    Para le recepcin de datos se utilizan lassiguientes funciones:

    value = getc();

    value = getch();

    value = getchar();

    Donde value es un carcter de 8 bits

  • 7/27/2019 Modulo Usart

    20/37

    Ejemplo de comunicacinentre 2 pics

    Enviar un contador de 0 a 10 en modoasncrono entre 2 pics y visualizar los datos

    por medio de una LCD

  • 7/27/2019 Modulo Usart

    21/37

    #include #FUSES XT,NOWDT #use delay(clock=4000000) #use rs232(baud=9600, xmit=pin_c6, rcv=pin_c7) #include

    void main() {

    int valor;

    lcd_init(); while(1){ for (valor=0;valor

  • 7/27/2019 Modulo Usart

    22/37

    #include #FUSES XT,NOWDT #use delay(clock=4000000) #use rs232(baud=9600, xmit=pin_c6, rcv=pin_c7, bits=8) #include

    int valor;

    #int_RDA RDA_isr() { valor=GETC(); }

    void main() {

    lcd_init(); enable_interrupts(INT_RDA); enable_interrupts(GLOBAL);

    for (;;) {

    lcd_gotoxy(1,1); printf(lcd_putc,"recibiendo=%1D",valor); } }

  • 7/27/2019 Modulo Usart

    23/37

    Practica 1Mediante un teclado matricial de 4x3

    enviar un dato por un pic 16F877A y

    visualizarlo en un display de 7 segmentosconectado a otro pic 16F6877A

  • 7/27/2019 Modulo Usart

    24/37

    Practica 2 Realice un programa que permita leer el

    convertidor ADC en un pic 16F877A con

    resolucin de 8 bits y enve el dato a otropic 16F877A y muestre la salida en bits pormedio de una barra de leds.

  • 7/27/2019 Modulo Usart

    25/37

    Comunicacin InalmbricaCuando se transmite de manera

    inalmbrica, el medio de transmisin en

    es el aire, existen mdulos deradiofrecuencia o RF que son muyaccesibles y permiten experimentar conla comunicacin inalmbrica de manera

    sencilla.

  • 7/27/2019 Modulo Usart

    26/37

    Transmisor de RF TWS-434 Este transmisor es ideal para aplicaciones

    de control remoto, seguridad ytransferencia peridica de datos,adems de ser un chip de bajo coste

    permite transmisiones con un alcance deaproximadamente 100 metros

  • 7/27/2019 Modulo Usart

    27/37

    Tiene las siguientes caractersticas:

    Frecuencia de operacin: 434.94 MHz

    Modulacin AM

    Velocidad mxima de 3000 bps

    Voltaje de alimentacin de 2

    5.2 VCorriente de 1.64-19.4 mA

  • 7/27/2019 Modulo Usart

    28/37

    Diagrama de pines

    PIN 1: Tierra (GND)

    PIN 2: Entrada de dato (DIN)

    PIN 3: Alimentacin (VCC)

    PIN 4: Salida a antena (ANT)

  • 7/27/2019 Modulo Usart

    29/37

    Receptor RWS-434 Tiene las siguientes caractersticas:

    Frecuencia de operacin: 434.94 MHz

    Modulacin AM

    Ancho de canal: 500KHz Velocidad mxima de 3000 bps

    Voltaje de alimentacin de 4.5 5.5 VCD

    Corriente de 4.5 mA

  • 7/27/2019 Modulo Usart

    30/37

    Diagrama de pines PIN 1: Tierra (GND)

    PIN 2: Salida de datos digitales (DDOUT)

    PIN 3: Salida lineal (LOUT) PIN 4: Alimentacin (VCC)

    PIN 5: Alimentacin (VCC)

    PIN 6: Tierra (GND)

    PIN 7: Tierra (GND) PIN 8: Salida a antena

  • 7/27/2019 Modulo Usart

    31/37

    Las especificaciones para estos mdulosrequiere una antena del tipo monopolar

    que tenga una longitud aprox de 17.5 cm

  • 7/27/2019 Modulo Usart

    32/37

    HT-640 y HT-648L Este codificador se encarga de leer 8 bits de

    datos que son convertidos a un dato en serie,

    esta salida tiene que ser recuperada por undecodificador (HT-648L) conectado a unreceptor.

    Alimentacin: 2.4 12 VCD

    8 bits de datos 10 bits de direccin

    CMOS

  • 7/27/2019 Modulo Usart

    33/37

    Codificador HT-640GND: Tierra

    VCC: Alimentacin

    DOUT: Salida serial a transmitir TE: Habilitador de transmisin

    D0-D7: Pines de entrada de dato

    A0-A9: Pines de entrada de direccin

    OSC1: Entrada del osciladorOSC2: Salida del oscilador

  • 7/27/2019 Modulo Usart

    34/37

    Decodificador HT-648LGND: Tierra

    VCC: Alimentacin

    DIN: Entrada de datos recibidos VT: Transmisin vlida

    D0-D7: Pines de entrada de dato

    A0-A9: Pines de direccin

    OSC1: Entrada de osciladorOSC2: Salida de oscilador

  • 7/27/2019 Modulo Usart

    35/37

    PLUS Realice el problema de la practica 2,

    utilizando los modulos de radiofrecuencia

  • 7/27/2019 Modulo Usart

    36/37

  • 7/27/2019 Modulo Usart

    37/37