1 USART:Universal Synchronous/asynchronous receive/transmit USART Peripheral Interface Modo UART.

Slides:



Advertisements
Presentaciones similares
MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities scuola.
Advertisements

SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR
1 Datos sobre webloggers Datos extraidos de la encuesta a webloggers disponibles en la web de los autores.
el 1, el 4 y el 9 tres cuadrados perfectos autosuficientes
PIC 16F873 CONVERSIÓN A/D Y TRANSMISIÓN POR PUERTO SERIE
Respuestas Jack y la mata de frijoles /60. 1.vivía 2.estaba 3.estaba 4.era 5.llamaba 6.gustaba 7.comía 8.dormía 9.gustaba 10.llamó 11.dijo 12.había 13.quería.
DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
Los números del 0 al cero uno dos tres cuatro cinco 6 7 8
50 formas de decir “Te Amo”.
Seminario El Futuro del Seguro de Vida
1 LA UTILIZACION DE LAS TIC EN LAS MICROEMPRESAS GALLEGAS. AÑO mayo 2005.
1 LA UTILIZACION DE LAS TIC EN LAS PYMES GALLEGAS AÑO de Junio de 2005.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS ( Resumen PYMES ) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS (MICROEMPRESAS, resultados provisionales) 29 de julio de 2004.
AYUDA A LA FUNCIÓN DOCENTE Internet
TEMA 5.- 1ª PARTE. EL A.O. Y SUS APLICACIONES
TEMA 2 MÚLTIPLOS Y DIVISORES
02- Plan Organización Docente v.2 Noviembre 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
02- PLAN DOCENTE Febrero 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
01- OFERTA FORMATIVA v.2 Noviembre 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
Respuestas Buscando a Nemo.
ABECEDARIO FIGURAS GEOMÉTRICAS NÚMERO
Mulán /75 puntos. 1.Querían 2.Gustaban 3.Escuchó 4.Dijo 5.Tenía 6.Ayudaron 7.Maquillaron 8.Arreglaron 9.Dio 10.Estaba 11.Iba 12.Quería 13.Salió 14.Gritó
Los Objetos de la Clase Escriban la palabra (the word) en español para los objetos de la clase (#1-20).
1 Tema 6: Prácticas Antonio Cebrián. 2 Contenidos 1.Metodología 2.Programación 3.Prácticas.
5 pt 5 pt 5 pt 5 pt 5 pt 10 pt 10 pt 10 pt 10 pt 10 pt 15 pt 15 pt
MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities alimentazione.
C ONFIGURACIÓN C UENTAS D E C ORREO ZTE N281. C ONFIGURACIÓN C UENTAS D E C ORREO ZTE N281 1-Ingrese a menú 2-Ingrese a Mensajes 3-Ingrese a Correo 4-Seleccione.
1. Apoyo exterior sobre ala inferior de viga de acero
Distribuciones de probabilidad bidimensionales o conjuntas
Programación en C para electrónica
Funciones Excel. Parte 1. Introducción 2 Una función Excel es una fórmula o un procedimiento que se realiza en el ambiente de Visual Basic, fuera de.
-17 Expectativas sobre la situación económica (Europa) Septiembre 2013 Indicador > +20 Indicador 0 a +20 Indicador 0 a -20 Indicador < -20 Total Unión.
Phone2Wave-Server Manual de Operación.
TELEFONÍA IP.
Repaso del capítulo Primer Paso
Parte 3. Descripción del código de una función 1.
INFORME USDA NOVIEMBRE TRIGO 2 MERCADO INTERNACIONAL (Millones de Toneladas) 3.
Calendario 2008 Imágenes variadas Venezuela Elaborado por: MSc. Lucía Osuna Wendehake psicopedagogiaconlucia.com Enero 2008.
INTERFAZ DE COMUNICACIONES DEL uC PIC 18F8520 USART
EL OSO APRENDIZ Y SUS AMIGOS
Donald ZOLAN El pintor de los niños.
1 PROYECTO DE PRESUPUESTO DE EGRESOS DE LA FEDERACION 2002 COORDINACIÓN DE POLITICA ECONOMICA GP-PRD.
RETIRO DE COMALCALCO DIC. 2012
Proyecto para Centros que trabajan una vez por semana.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt El vocabulario.
Ecuaciones Cuadráticas
3 Enero 2010 PERÚ: IV CENSO NACIONAL ECONÓMICO, APURÍMAC.
¡Primero mira fijo a la bruja!
Mecanismos 3º ESO Soluciones cuestiones teóricas Curso
COMUNICACIÓN SERIAL Javier Garcia Ramos.
ENTRADA / SALIDA 1.
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
CULENDARIO 2007 Para los Patanes.
BEATRIZ LAFONT VILLODRE
Entrada / salida digital con ccs
5.1 – Interfaces de entrada/salida
* Fuente: Sondeo del Consumidor de la Comisión de la UE, GfK. Expectativas sobre la situación.
SpanishNumbers Uno 2 Dos 3 Tres 4 Quatro.
MSc. Lucía Osuna Wendehake
Calendario 2009 “Imágenes variadas” Venezuela Elaborado por: MSc. Lucía Osuna Wendehake psicopedagogiaconlucia.com Enero 2009.
Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos.
Señales y sistemas de tiempo discreto
Página 1 Indicadores de Desempeño de los Fondos de Aportaciones Federales del Ramo 33 Subsecretaría de Egresos Unidad de Política y Control Presupuestario.
Manual de Procedimientos Procedimiento de ejecución del programa de
Herramienta FRAX Expositor: Boris Inturias.
CHAPTER 4 VOCABULARY: PART II
FUNDAMENTOS DE CALIDAD EN LA GESTIÓN PÚBLICA
Módulo Serial Asicrónico SCI (Serial Communications Interface Module)
Transcripción de la presentación:

1 USART:Universal Synchronous/asynchronous receive/transmit USART Peripheral Interface Modo UART

2 Modos seriales USART Sincrónico (SPI) Asincrónico (UART) UxCTL Usart Control Register

3 Esquemático USART

4 Algunas Características Datos de 7 ó 8 bits Tx y Rx de LSB primero Buffers de Tx y Rx separados Registros de desplazamiento de Tx y Rx Varios protocolos de comunicación

5 Algunas Características Tasa de transmisión programable Flags de detección y supresión de errores Interrupción independiente para Rx y Tx Capacidad de salir de modo bajo consumo, dado un cambio de estado

6 Operación Inicialización y reinicio (reset) Formato del Character Inicialización y reinicio (reset) Protocolos de comunicación Detección automática de errores Habilitación de recepción Habilitación de transmisión Generación de tasa de transferencia Interrupciones

7 Inicialización y reinicio (reset) PUC SWRST=1 UxCTL Usart Control Register

8 Operación Inicialización y reinicio (reset) Formato del Character Protocolos de comunicación Detección automática de errores Habilitación de recepción Habilitación de transmisión Generación de tasa de transferencia Interrupciones

9 Octavo bit de dato Adress bit Bit de paridad Segundo bit de detención Formato del character

10 Protocolos de comunicación Operación Inicialización y reinicio (reset) Formato del Character Protocolos de comunicación Detección automática de errores Habilitación de recepción Habilitación de transmisión Generación de tasa de transferencia Interrupciones

11 Idle-Line Multiprocessor Format Address-Bit Multiprocessor Format 2 dispositivos Bit MM=0 3 o más dispositivos Bit MM=1 Protocolos de Comunicación

12 Tiempo de espera de 10 bits o mas Tiempo de espera menor a 10 bits FrameFrame dentro del bloque Primer Frame dentro del bloque es uan direccion, sigue a un tiempo de espera Expandido Protocolos de Comunicación: Protocolos de Comunicación: Idle-Line Multiprocessor Format

13 Protocolos de Comunicación TXWAKE=1 Escribir character en UxTXBUF Contenido de UxTXBUF es llevado al registro de TX Transmite 11 unos TXWAKE=0 automaticamente Idle-Line Multiprocessor Format Transmisión de datos

14 Protocolos de Comunicación: Se escribe la dirección en UxTXBUF Registro tiene que estar listo Se inicia la transmisión con un character ‘dont care’ Idle-Line Multiprocessor Format Transmisión de datos

15 Primer frame del bloque es una dirección AD Bit es cero para dato en el bloque Expandido Tiempo de espera Bloques de frames Tiempo de espera Protocolos de Comunicación: Protocolos de Comunicación: Address-Bit Multiprocessor Format UxRCTL Usart Receive Control Register

16 Protocolos de Comunicación: Control del address bit para transmisión Se escribe en bit TXWAKE Este es cargado en el address bit del carácter transferido Se limpia automáticamente Address-Bit Multiprocessor Format UxTCTL, Usart Transmit Control Register

17 Detección automática de errores Operación Inicialización y reinicio (reset) Formato del Character Detección automática de errores Protocolos de comunicación Habilitación de recepción Habilitación de transmisión Generación de tasa de transferencia Interrupciones

18 Error de framing Error de paridad Error de rebalse (receive overrun) Condición de break Detección automática de herores errores UxRCTL Usart Receive Control Register

19 Habilitación de recepción Operación Inicialización y reinicio (reset) Formato del Character Habilitación de recepción Protocolos de comunicación Detección automática de errores Habilitación de transmisión Generación de tasa de transferencia Interrupciones

20 Habilitación de recepción (Receive Enable) URXEX Habilita o deshabilita recepción de datos Se guardan en el UxRXBUF

21 Habilitación de recepción Character recibido Condición de Interrupción URXEx=0 URXEx=1 URXEx=0 URXEx=1 URXEx=0 Recepcion Deshabilitada Estado de espera (Recepcion Deshabilitada) Receptor recibe el character Incompleto Bit de inicio inválido Habilitación de recepción (Receive Enable) UxTCTL, Usart Transmit Control Register

22 Habilitación de transmisión Habilitación de recepción Operación Inicialización y reinicio (reset) Formato del Character Habilitación de transmisión Protocolos de comunicación Detección automática de errores Generación de tasa de transferencia Interrupciones

23 Habilitación de transmision Habilitación de Transmisión (Transmit Enable) UTxEX habilita o deshabilita transmisión de datos Se inicia la transmisión escribiendo en UxTxBUF

24 Character Transmitido Condición de Interrupción UTXEx=0 UTXEx=1, Se escribe dato al buffer de transmisión UTXEx=1 UTXEx=0 UTXEx=1 UTXEx=0 y última entrada del buffer es transmitida Transmisión Deshabilitada Estado de espera (Transmisor Habilitado) Transmisión Activa Incompleto No se escribe dato en el buffer de transmisión Habilitación de transmision Habilitación de Transmisión (Transmit Enable) (Transmit Enable) UxTCTL, Usart Transmit Control Register

25 Habilitación de transmision Habilitación de Transmisión (Transmit Enable) (Transmit Enable) Para transmitir al buffer UTxEX=1 y UTxIFGX=1 El bit TxEPT=1 indica que la transmisión activa se ha completado, esto evita errores

26 Generación de tasa de transferencia Habilitación de transmisión Habilitación de recepción Operación Inicialización y reinicio (reset) Formato del Character Generación de la tasa de transferencia Protocolos de comunicación Detección automática de errores Interrupciones

27 Generacion de la tasa Generación de la tasa de transferencia (Baude rate) La tasa máxima=1/3 BRCKL Puede generar frecuencias no estándares Baude rate=BRCLK/N Factor guardado en registros UxBR0 y UxBR1 UxBR0 y UxBR0, Baud Rate Control Register

28 Interrupciones Generación de tasa de transferencia Habilitación de transmisión Habilitación de recepción Operación Inicialización y reinicio (reset) Formato del Character Interrupciones Protocolos de comunicación Detección automática de errores

29 Interrupciones Vector de interrupciones para transmisión Vector de interrupciones para recepción Cuando el buffer está listo Cuando ya ha transmitido se resetea Cuando un carácter es recibido y cargado en el buffer Se resetea cuando ha sido leído o la interrupción ha sido servida URxIFGX=1 UTxIFGX=1

30 Interrupciones Interrupciones Registros de interrupción 1 y 2 UTXIFGX, flag de transmisión URXIFGX, flag de recepción

31 #include #include "MSP430lib.c" #include "TRcircbuf.c" void main (void){ /* Inicialización de osciladores (MSP430lib)*/ InitOsc (); /* Inicialización de puertos Entrada/Salida (MSP430lib) */ InitPorts (); /* Inicialización de UART (TRcircbuf) */ RS232Init (); /* Inicialización de LCD (MSP430lib) */ InitLCD (); Ejemplo de programación Ejemplo de Programación

32 /* Loop de recepción */ while (1){ /* Espera la llegada de un byte a la entada serial y lo almacena en el buffer*/ /* Este estado es interrumpido por RXInterrupt */ if ( RS232RXBufferCount() ){ /* Lee el caracter del buffer y lo almacena en una variable */ RxB = cRS232GetChar(); /* Prende el led */ STATUS_LED_ON; Ejemplo de programación(2) Ejemplo de programación

33 /* Limpia el LCD */ if (cntr == 0){ SEND_CMD(CLR_DISP); SEND_CMD(DD_RAM_ADDR); } /* Envia el caracter recibido al LCD */ SEND_CHAR(RxB); if(cntr == 15) SEND_CMD(DD_RAM_ADDR2); if(cntr++ == 31) cntr = 0; STATUS_LED_OFF; } Ejemplo de programación(3) Ejemplo de programación

34 Fin del asunto

35 (Aplausos aquí)

36 unsigned char RS232RXBufferCount (void) { return (RXCharCount); } RS232RXBufferCount

37 void RS232Init (void) { RXWriteIndex = RXReadIndex = RXCharCount = 0; TXWriteIndex = TXReadIndex = TXCharCount = 0; TXBufferEmpty = BUFFER_EMPTY; // reset empty flag InitUART0(); } RS232Init

38 char cRS232GetChar (void) { char Byte; if (RXCharCount){ /* Verifica si hay char aún disponible */ Byte = RXBuffer[RXReadIndex++];/* Obtiene byte del buffer */ RXReadIndex &= RXBUFSIZE-1; /* Indice de buffer circular */ RX_INT_DISABLE; /* Inhabilita interrupción (IE2) */ RXCharCount--; /* Lectura de un char decrementa la cuenta */ RX_INT_ENABLE; /* Hecho, se habilita interrupción(IE2) */ return (Byte); } else return (0); /* si no hay nuevo char */ } cRS232GetChar

39 InitPorts void InitPorts(void) { P1SEL = 0; P1OUT = 0; P1DIR = BIT5 | BIT6; /* enable only Relay outputs*/ P2SEL = 0; P2OUT = 0; P2DIR = ~BIT0; /* habilita P2.0 es entrada*/ P3SEL |= BIT4 | BIT5; /* enable UART0 */ P3DIR |= BIT4; /* enable TXD0 as output*/ P3DIR &= ~BIT5; /* enable RXD0 as input*/ P4SEL = 0; P4OUT = 0; P4DIR = BIT2 | BIT3; /* only buzzer pins are outputs*/ P6SEL = 0x80; P6OUT = 0; P6DIR = 0x00; /* all output*/ }

40 void InitUART0 (void) /* Inicialización UART0*/ { BCSCTL1 & = ~DIVA0; BCSCTL1 | = DIVA1; /* ACLK = XT1 / 4 */ UCTL0 = CHAR; /* 8 data bits, sin paridad, 1 bit de detencion*/ UTCTL0 = SSEL0; /* se elige ACLK como reloj para UART */ U0BR0 = 0xd0; /* :9600=208 U0BR1 = 0x00; UMCTL0 = 0x00; /* sin modulación*/ ME1 | = UTXE0 | URXE0; /* habilitan modulos de tx y rx UART */ P3SEL | = 0x30; /* define bits de tx y rx P3.4 P3.5 */ P3DIR | = BIT4; /* habilita TXD0 como salida*/ P3DIR & = ~BIT5; /* habilita RXD0 como entrada*/ IE1 | = URXIE0; /* habilita USART0 RX interrupcion*/ IE1 | = UTXIE0; /* habilita USART0 TX interrupcion */ _EINT(); /* habilita interrupción*/ } InitUART0

41 UxCTL Registro de control USART

42 UxTCTL UxCTL Registro de control de tx

43 uxbr0 Registro de control de tasa de transferencia

44 bcsctl

45 Uxmctl

46 me1