La mayor parte de las implementaciones de transmisión de datos vía puerto serial utilizan las siguientes funciones:
|
|
- Álvaro Carrizo Gutiérrez
- hace 6 años
- Vistas:
Transcripción
1 Interfaz serial con buffer circular para MSP430 La mayor parte de las implementaciones de transmisión de datos vía puerto serial utilizan las siguientes funciones: Transmisión void USART_SendData (unsigned char Data) UTXBUF = Data; // buffer de transmisión Recepción unsigned char USART_GetData (void) unsigned char Data; Data = URXBUF; // buffer de recepción return (Data); En estos casos, se considera el envío y recepción de sólo un byte. Además, no se realiza un chequeo de los registros de transmisión (UxTXBUF y UxRXBUF) para verificar su disponibilidad. Esto puede generar mensajes corruptos, especialmente en transmisiones que involucran más de un byte. La idea es entonces separar los datos de transmisión y recepción de los registros de hardware. Para esto, se utilizan buffers circulares cuya principal ventaja es que pueden trabajar sin inicializaciones complejas. En la solución propuesta se utiliza un buffer circular para la transmisión y otro para la recepción. Cada buffer está ligado a dos índices (un índice de lectura y otro de escritura). También se considera una variable que guarda la cuenta de bytes remanentes en el buffer. Esta variable es también igual a la distancia entre los índices de lectura y escritura. Declaración de las variables #define TX_INT_ENABLE IE1 = UTXIE0 #define TX_INT_DISABLE IE1 &= ~UTXIE0 #define RX_INT_ENABLE IE1 = URXIE0 #define RX_INT_DISABLE IE1 &= ~URXIE0 #define RXBUFSIZE 16 // receive buffer size static volatile unsigned char RXBuffer[RXBUFSIZE]; // receive buffer // receive buffer indexes :
2 static volatile unsigned char RXReadIndex, RXWriteIndex; // count of received bytes: static volatile unsigned char RXCharCount; #define TXBUFSIZE 16 // transmit buffer size static volatile unsigned char TXBuffer[TXBUFSIZE]; // transmit buffer // transmit buffer indexes: static volatile unsigned char TXReadIndex, TXWriteIndex; // not yet transmitted bytes: static volatile unsigned char TXCharCount; #define BUFFER_EMPTY 1 // 1: nothing to send static volatile unsigned char TXBufferEmpty; // flag for synchronization Inicialización de índices y del USART0 - RS232Init () : void RS232Init (void) RXWriteIndex = RXReadIndex = RXCharCount = 0; TXWriteIndex = TXReadIndex = TXCharCount = 0; TXBufferEmpty = BUFFER_EMPTY; // reset empty flag //USART0_INIT BCSCTL1 &= ~DIVA0; // ACLK = XT1 / 4 = MCLK / 4 BCSCTL1 = DIVA1; UCTL0 = CHAR; //Sart bit, 8 data bits, no parity, 1 stop UTCTL0 = SSEL0; //ACLK is UART clock U0BR0 = 0xd0; // :9600=208 U0BR1 = 0x00; UMCTL0 = 0x00; //no modulation ME1 = UTXE0 URXE0; //enable UART modul P3SEL = 0x30; // P3.4,5 = USART0 TXD/RXD P3DIR = BIT4; //enable TXD0 as output P3DIR &= ~BIT5; //enable RXD0 as input IE1 = UTXIE0; // Enable USART0 TX interrupt IE1 = URXIE0; // Enable USART0 RX interrupt _EINT(); //enable interrupt Transmisión La rutina que se entrega a continuación sólo escribe el byte a transmitir en la posición indicada por el TXwriteindex en el buffer de transmisión. Luego este índice es incrementado, al igual que la cuenta de los bytes que no han sido transmitidos. Luego, se chequea si existe una transmisión activa. Si es así, no se hace nada más. En caso contrario, se inicia la transmisión.
3 Transmisión de datos - RS232TXChar (): void RS232TXChar (char cbyte) TXBuffer[TXWriteIndex++] = cbyte; // load byte to buffer and inc index TXWriteIndex &= TXBUFSIZE-1; // adjust index to borders of buffer TX_INT_DISABLE; // disable transmit interrupt (in IE1) TXCharCount++; // new char, inc count TX_INT_ENABLE; // enable interrupt (in IE1) if (TXBufferEmpty && TXCharCount) // buffer had been empty TXBufferEmpty =!BUFFER_EMPTY; // reset empty flag U0TXBUF = TXBuffer[TXReadIndex++]; // load tx register, inc index TXReadIndex &= TXBUFSIZE-1; // adjust index TXCharCount--; // char sent, dec count Rutina de atención de interrupciones para la transmisión - TXInterrupt (): #pragma vector = UART0TX_VECTOR interrupt void TXInterrupt (void) _EINT(); if (TXCharCount) // send if chars are in buffer U0TXBUF = TXBuffer[TXReadIndex++]; // load tx register, inc index TXReadIndex &= TXBUFSIZE-1; // adjust index TXCharCount--; // char sent, dec count else // buffer empty, nothing to do TXBufferEmpty = BUFFER_EMPTY; // set empty flag La rutina de atención de interrupciones por transmisión es atendida si el registro de transmisión está vacío. Si esto ocurre la rutina de atención de la interrupción chequea si queda algún byte por enviar. Si es así, el siguiente byte es escrito en el registro de transmisión. El índice de lectura es incrementado y el contador de bytes es decrementado. Si el byte enviado es el último (TXCharCount == 0), la transmisión termina seteando el flag que indica que el buffer está vacío. De este modo, para enviar un byte sólo hay que llamar a la función TXChar pasándole el byte a transmitir. Todo el resto del trabajo se realiza automáticamente en el background, sin interferir con otras partes del firmware.
4 Recepción Se utiliza el mismo concepto anterior: un buffer circular, con índices de lectura y escritura, y una variable que lleva la cuenta de los bytes que no han sido recibidos. Sólo la fuente y el destino de los datos cambia: la fuente es la interrupción por recepción. Rutina de atención de interrupciones para la recepción - RXInterrupt (): #pragma vector = UART0RX_VECTOR interrupt void RXInterrupt (void) _EINT(); RXBuffer[RXWriteIndex++] = U0RXBUF; // store received byte and // inc receive index RXWriteIndex &= RXBUFSIZE-1; // reset index RXCharCount++; // received, inc count El contenido de registro de recepción se escribe al buffer de lectura, y se incrementan el índice de lectura y el contador de bytes. El siguiente byte recibido es escrito a la siguiente posición del buffer de lectura, y así sucesivamente. Todos los bytes recibidos son almacenados en el buffer. Se requieren dos funciones para recoger los datos: la primera - RS232RXBufferCount() - chequea si se ha escrito un nuevo dato y la segunda - crs232getchar() - recoge el dato. Al leer un byte, el índice de escritura se incrementa para hacer que la siguiente llamada a la rutina lea el siguiente byte disponible desde el buffer. unsigned char RS232RXBufferCount (void) return (RXCharCount); char crs232getchar (void) char Byte; if (RXCharCount) // char still available Byte = RXBuffer[RXReadIndex++]; // get byte from buffer RXReadIndex &= RXBUFSIZE-1; // adjust index RX_INT_DISABLE; // disable rx interrupt (IE2) RXCharCount--; // one char read, dec count RX_INT_ENABLE; // done, enable int (IE2) return (Byte); else
5 return (0); // if there is no new char Estructura del código necesario para recepción datos desde el puerto serial char creceivebyte;... if (RS232RXBufferCount()) // char in buffer? creceivebyte = crs232getchar(); // yes, get it Así, todo lo que el programador debe hacer es asegurarse que los bytes son leídos antes que ocurra un overflow del buffer. Notas: Para ajustar los buffers, usar siempre tamaños potencias de dos (16, 32, 64,...). Los códigos entregados tienen la sintaxis adecuada para el compilador de la versión 2 de IAR. ANEXO (Código para Tx y Rx) void main (void) InitOsc (); InitPorts (); RS232Init (); InitLCD (); RS232TXChar (CR); RS232TXChar (LF); for (i = 0; i!= sizeof(txmss); i++) // envío del string inicial Delayx100us(50); RS232TXChar (TxMss[i]); RS232TXChar (CR); RS232TXChar (LF);
6 while (1) // loop de recepción if ( RS232RXBufferCount() ) // hay caracteres? RxB = crs232getchar(); RS232TXChar (RxB); // echo a pantalla STATUS_LED_ON; if (cntr == 0) // envío al display LCD SEND_CMD(CLR_DISP); SEND_CMD(DD_RAM_ADDR); SEND_CHAR(RxB); if(cntr == 15) SEND_CMD(DD_RAM_ADDR2); if(cntr++ == 31) cntr = 0; STATUS_LED_OFF;
Universidad Técnica Federico Santa María Departamento de Electrónica. Acceso Controlado vía WEB
Acceso Controlado vía WEB Informe Proyecto Final Integrantes: Paola Rojas C. Pablo Naveas F. Claudio Ramírez S. Carlos Silva L. Christian Pelissier Q. Profesor: Leopoldo Silva Bijit Fecha: Junio de 2004.
Más detallesFigura 1. Diagrama de bloques del Timer_A
TIMER_A El Timer_A es un timer/contador de 16 bit con tres registros de captura/comparación. El Timer_A soporta múltiples capturas/comparaciones y temporización de intervalos de tiempo; también genera
Más detallesImplementación de un reloj de tiempo real en el MSP430F149
Implementación de un reloj de tiempo real en el MSP430F149 Los relojes de tiempo real (eal Time Clocks) son utilizados en diversas aplicaciones: eventos generadores de marcas de tiempo, generación de eventos
Más detallesUNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA Diseño con Microcontroladores
WATCHDOG TIMER El watchdog timer es un temporizador de 16 bit que puede ser usado como watchdog o por intervalos de tiempo. Al iniciarse un programa, el watchdog timer está activo y configurado por defecto
Más detallesCOMUNICACIÓN SERIAL FAMILIA DSP56800: Síncronas y Asíncronas CAPÍTULO VII
Página 1 de 21 INTRODUCCIÓN CAPÍTULO VII El intercambio de información digital entre un procesador y los periféricos puede ser de dos formas: de manera paralela o serial. La primera implica el envió simultáneo
Más detalles2.5-1 USART Introducción.
2.5-1 USART Introducción. El USART (universal synchronous asynchronous receiver transmitter) es uno de los dos puertos series de los que dispone los PIC16F87X. Puede funcionar de forma síncrona (half duplex)
Más detallesLabs para el workshop de programación en C sobre MSP430 (SASE 2012)
Labs para el workshop de programación en C sobre MSP430 (SASE 2012) Lab. 1: uso básico de puertos de E/S /******************************************************** * Lab01: uso básico de puertos de E/S.
Más detallesSEMINARIO DE COMPUTADORES I DISE~NO CON MICROCONTROLADORES MSP430: Manejo de motor servo
SEMINARIO DE COMPUTADORES I DISE~NO CON MICROCONTROLADORES MSP430: Manejo de motor servo Nombres: Daniel Arancibia Carocca Alex Garay Herrera Juan Carlos Jarur Mu~noz Bruno Mundaca Moraga Rodrigo Vizcarra
Más detallesGuía rápida para gestionar el puerto paralelo del PC
Guía rápida para gestionar el puerto paralelo del PC Descarga desde: http://eii.unex.es/profesores/jisuarez/descargas/ip/guia_rapida_pp.pdf José Ignacio Suárez Marcelo Universidad de Extremadura Escuela
Más detallesInstrucciones de Comunicaciones
Guía Rápida Instrucciones de Comunicaciones Introducción Guía Rápida Puertos lógicos (Asignación automática). Instrucciones de red. Instrucción para macros. Instrucciones para comunicaciones serie. OMRON
Más detallesPráctica 2. Implementación de un driver básico para la transmisión de datos a través de la UART.
Práctica 2. Implementación de un driver básico para la transmisión de datos a través de la UART. 1. Objetivo El objetivo de la siguiente práctica es el de implementar el software de control (driver) de
Más detallesVdd MIC29302. Vss PF.0 CS DI DAT CLK PE.7 PD.4 PD.5 PB.0. CAN-054, Utilización de tarjetas MMC en bajo nivel
Nota de Aplicación: CAN-054 Título: Utilización de tarjetas MMC en bajo nivel Autor: Sergio R. Caprile, Senior Engineer, colaboración IT&T (distr. Cika en Mendoza) Revisiones Fecha Comentarios 0 02/09/06
Más detallesProgramación en C para Sistemas Embebidos
SASE 2012 Programación en C para Sistemas Embebidos (con ejemplos basados en MSP430) Mg. Guillermo Friedrich UTN-FRBB Tópicos destacados - Generalidades sobre la arquitectura MSP430 - Paso de parámetros
Más detallesEstructuras de Datos Declaraciones Tipos de Datos
Departamento de Informática Universidad Técnica Federico Santa María Estructuras de Datos Declaraciones Tipos de Datos Temas: 2-3-4 IWI-131, paralelo 01 Profesor: Teddy Alfaro O. Lenguaje de Programación
Más detallesMicroprocesadores, Tema 8:
Microprocesadores, Tema 8: Periféricos de Comunicación Síncronos Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Standard de Comunicación Protocolos Standard de Comunicación Serie Síncrona
Más detallesDriver Medidor de Distancia Ultrasónico
Seminario de Computadores I, 1 er Semestre 2004 Driver Medidor de Distancia Ultrasónico Francisco Blancaire Eduardo González Michael Kusch Diego Valencia ÍNDICE GENERAL Índice General 1 Introducción 2
Más detallesControl remoto del EDUKIT08 vía PC...
COMENTARIO TECNICO Mundo EDUKIT08 Por: Ing. Roberto Simone Ingeniero de aplicaciones Freescale robertosimone@arnet.com.ar Ing. Daniel Di Lella D.F.A.E www.edudevices.com.ar dilella@arnet.com.ar (MDO_EDUKIT_012)
Más detallesINTRODUCCIÓN. Comunicación Serial.
INTRODUCCIÓN La función principal de este tipo de comunicación es la de convertir datos de salida de forma paralela a serial y la de convertir datos de entrada de forma serial a paralela. El acceso al
Más detallesLector de códigos de barras con microcontrolador Motorola HC11
Lector de códigos de barras con microcontrolador Motorola HC11 Alumno: Pinat Gastón José Legajo: 10.813 Introducción: Los códigos de barras son ampliamente utilizados por los fabricantes para identificar
Más detallesAquesta segona part de l examen consta de 2 fulls. Heu de contestar en la mateixa fulla on es troba la pregunta.
PART 2 FULL 1 Aquesta segona part de l examen consta de 2 fulls. Heu de contestar en la mateixa fulla on es troba la pregunta. 1. (1,5 punts) Dissenyar una unitat de control d un datapath emprant un Comptador
Más detallesFicheros y streams. Desde el punto de vista de Java, cada fichero no es más que una secuencia o flujo de bytes [stream].
Ficheros y streams Desde el punto de vista de Java, cada fichero no es más que una secuencia o flujo de bytes [stream]. Los streams pueden ser de entrada () de salida (). Los ficheros pueden almacenar
Más detallesProgramación en ensamblador y en alto nivel (C)
Programación en ensamblador y en alto nivel (C) Taller de Microcontroladores año 2012 Optativa de grado y Curso de Posgrado El ISAdel AVR Preliminares 32 registros de 8 bits: R0 a R31 Los registros pueden
Más detallesFigura 2. Formato de un dato serie síncrono.
ELECTRÓNICA DIGITAL II 1 COMUNICACIÓN SERIE EN EL 8051 En la comunicación serie los datos se transfieren bit por bit. Una interfaz en el microcontrolador los transfiere el dato en paralelo del CPU a serie
Más detallesBLOQUE 3. Enrique Mandado Pérez María José Moure Rodríguez. Microcontroladores
SISTEMAS ELECTRÓNICOS DIGITALES BLOQUE 3 MICROCONTROLADORES (PARTE 4) DESARROLLO DE SISTEMAS ELECTRÓNICOS DIGITALES Interrupciones,Temporizadores/Contadores y Puerto serie Enrique Mandado Pérez María José
Más detallesCurso sobre Microcontroladores Familia HC9S08 de Freescale
Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 6.- Módulo Serial Asincrónico de Comunicación
Más detallesControl Digital en PC con MS-DOS
Control Digital en PC con MS-DOS Abel Alberto Cuadrado Vega 19 de abril de 2006 1. Introducción Un PC puede ser utilizado para realizar un sistema de control digital. Para ello necesita lo siguiente: tarjeta
Más detallesLección 2 Introducción al lenguaje C
Lección Introducción al lenguaje C Decimal Binario Hexadecimal A B C D E F Octal Equivalencia entre decimal, binario, hexadecimal y octal. Código ASCII (American Standard Code for Information Interchange)
Más detallesPuerto de comunicaciones virtual (VCOM) Implementación de la clase CDC. Configuración de endpoints. CAN-102, HT32F USB device: COM virtual
Nota de Aplicación: CAN-102 Título: HT32F USB device: COM virtual Autor: Sergio R. Caprile, Senior R&D Engineer Revisiones Fecha Comentarios 0 17/05/13 CAN-102, HT32F USB device: COM virtual La presente
Más detallesConcurrencia: deberes. Concurrencia: Exclusión Mutua y Sincronización. Concurrencia. Dificultades con la Concurrencia
Concurrencia: deberes Concurrencia: Exclusión Mutua y Sincronización Capítulo 5 Comunicación entre procesos Compartir recursos Sincronización de múltiples procesos Asignación del tiempo de procesador Concurrencia
Más detallesIntroducción rápida a la programación (estructurada ) con C++
Introducción rápida a la programación (estructurada ) con C++ A B No A? Si B A Los Bloques pueden ser una línea de código o un modulo (función o subrutina) que pueden estar contenido en otro archivo de
Más detallesUNIDAD 1. Algoritmo se define como un conjunto de instrucciones que la computadora debe seguir para resolver un problema.
UNIDAD 1 1.1 Definición de Algoritmo La palabra algoritmo se deriva de la traducción al latín del nombre Muhammad Musa Al-khawarizmi, un matemático y astrónomo árabe que en el siglo IX escribió un tratado
Más detallesCMSIS y Drivers para periféricos
CMSIS y Drivers para periféricos Alan Kharsansky Abril - 2011 Alan Kharsansky CMSIS y Drivers para periféricos 1 / 34 Índice CMSIS y Drivers 1 CMSIS y Drivers Introducción Estructura Utilización Ejemplo
Más detallesTodo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Más detalles(SPI) Módulo Serial Sincrónico
SERIAL PERIPHERAL INTERFACE (SPI) Módulo Serial Sincrónico SERIAL PERIPHERAL INTERFACE MODULE Clock Generation Module (CGM) System Integration Module (SIM) LVI COP IRQ BREAK RESET 68HC08 CPU Timer Interface
Más detallesSolución de Examen de Comunicación de Datos
Solución de Examen de Comunicación de Datos 22 de Julio de 999 (Ref.: scdt9907.doc) Problema Se dispone de un enlace bidireccional libre de errores que une dos nodos, por el cual se envían y reciben frames
Más detallesCentro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...
Más detallesUNIDAD 3 ARQUITECTURA DEL Z80. Microprocesadores Otoño 2011
1 UNIDAD 3 ARQUITECTURA DEL Z80 Microprocesadores Otoño 2011 Contenido 2 Arquitectura interna del Z-80 Interface Ciclos de máquina y temporización del bus de comunicación. Conjunto de Instrucciones Arquitectura
Más detallesEstructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez
Estructura de Microprocesadores PIC 18F4550 Módulos de Comunicación Serie Profesor Ing. Johan Carvajal Godínez Contenido Módulos de comunicación serie sincrónica I2C SPI Módulo de comunicación serie Asincrónico
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesEnsamblador. Interrupciones. Dentro de una computadora existen dos clases de interrupciones:
Ensamblador Interrupciones Definición: Una interrupción es el rompimiento en la secuencia de un programa para ejecutar un programa especial llamando una rutina de servicio cuya característica principal
Más detallesANEXO N 1. CÓDIGO PARA CONFIGURACIÓN DE MÓDULO BLUETOOTH POR MEDIO DE MICROCONTROLADOR ATMEGA328P
ANEXO N 1. CÓDIGO PARA CONFIGURACIÓN DE MÓDULO BLUETOOTH POR MEDIO DE MICROCONTROLADOR ATMEGA328P #include #define Tx 10 #define Rx 11 SoftwareSerial Bluetooth(Rx, Tx); // Recepción
Más detallesPicoBlaze(3) Interfaces de Entrada/Salida. Diseño de Sistemas con FPGA 1er cuatrimestre 2009 Patricia Borensztejn
PicoBlaze(3) Interfaces de Entrada/Salida Diseño de Sistemas con FPGA 1er cuatrimestre 2009 Patricia Borensztejn Temario Esta clase contiene: Interface de entrada/salida en PicoBlaze Ejemplo 1: a 2 +b
Más detallesD:\IDENTIFICADOR_PRODUCTO\Identificador_Prod\Identificador_Prod\Form1.cs // +++++++++ PLATAFORMA BASE DE DATOS PARA TARIFACIÓN DE PRODUCTOS +++++++++
// +++++++++ PLATAFORMA BASE DE DATOS PARA TARIFACIÓN DE PRODUCTOS +++++++++ 1 /* El código que precede es el responsable de ejecutar funciones que permiten interactuar a la Base de datos en Microsoft
Más detallesTimer Interface Module
Timer Interface Module M.C. Jorge Eduardo Ibarra Esquer Timer Interface (TIM) El TIM es un timer de 2 canales que proporciona una referencia de temporización con captura de entrada, comparador de salida
Más detallesLenguaje C Elementos de un Programa. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006
Lenguaje C Elementos de un Programa Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006 Objetivos Conocer los elementos que conforman un programa en C 1. Elementos léxicos de un Programa Cuando el programa
Más detallesBochs: VESA Bios Extensions
Bochs: VESA Bios Extensions Alejandro Furfaro Técnicas Digitales III Mayo de 2011 Alejandro Furfaro (Departamento de Electrónica) Bochs: VESA Bios Extensions Ciclo lectivo 2011 1 / 15 Temario 1 Vistazo
Más detallesArquitectura de Computadores II Clase #3
Clase #3 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Registros Repertorio de instrucciones Modos de direccionamiento El stack Formatos de datos Control
Más detallesLa programación del puerto serial de E/S, la reconoce el DOS como COM1 y COM2. Esto se puede realizar de varias formas:
CAPÍTULO 9 PROGRAMANDO LA INTERFAZ SERIAL La programación del puerto serial de E/S, la reconoce el DOS como COM1 y COM2. Esto se puede realizar de varias formas: Usando las funciones open, read, write
Más detallesLLAMADAS AL SISTEMA SISTEMAS OPERATIVOS
LLAMADAS AL SISTEMA SISTEMAS OPERATIVOS 26/05/2013 eduar14_cr@hotmail.com cilred_tlapa@hotmail.com LLAMADAS AL SISTEMA Las llamadas al sistema proporcionan la interfaz entre un proceso y el sistema operativo,
Más detallesPor el contrario System.in es un byte Stream sin caracteristicas de character Stream.
I/O desde la linea de Comandos Los programas normalmente tienen funcionalidades para el ingreso o captura de datos desde la linea de comandos. La plataforma Java soporta estas iteracciones de dos formas:
Más detallesCurso sobre Microcontroladores Familia HC9S08 de Freescale
Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 7.- Módulo Serial Sincrónico de Comunicaciones
Más detallesProgramación En Lenguaje C
Programación En Lenguaje C Introducción Básica para Primero de Bachillerato TECNOLOGÍA DE LA INFORMACIÓN IES PALAS ATENEA Lenguaje C Estructurado Secuencial De alto Nivel Altamente portable Necesita un
Más detallesProgramación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 2 Nombre: El lenguaje de programación C Contextualización Una constante en todos los lenguajes de programación (viejos y nuevos) es la implementación
Más detallesEl lenguaje C. if (a>3) { printf("hola"); // bloque printf("%d",a); // de getch(); //código } Partes de un programa en C.
El lenguaje C El lenguaje C es uno de los lenguajes de programación estructurada más utilizados en nuestros días. El principal componente estructural de C es la función. En C, las funciones son bloques
Más detallesEntrada y Salida de datos
Entrada y Salida de datos El intercambio de datos entre el programa y el exterior da lugar a la diversidad de dispositivos y de formas de comunicación (modo de acceso, si es binaria, etc.). Los flujos
Más detallesSensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.
Sensor de Temperatura utilizando el Starter Kit Javelin Stamp Realizado por: Bertha Palomeque A. Rodrigo Barzola J. INTRODUCCION DIFERENCIAS EJEMPLOS JAVA Orientado a Objetos Multiplataforma Programar
Más detallesPuertos Seriales Conexión PC Microcontroladores
Puertos Seriales Conexión PC Microcontroladores Puertos del PC Aplicaciones Personales Autor: Carlos A. Narváez V. Ingeniero Electricista Universidad de Oriente Email: cnarvaez@bolivar.udo.edu.ve Propósito
Más detallesTarjeta demo para Lectura/Escritura RFID ID-20MFIA Dispositivo: ID-20MF
Nota de plicación Documentos asociados: No Tarjeta demo para Lectura/Escritura RFID ID-20MFI Dispositivo: ID-20MF Resumen Esta nota de aplicación mostrará el manejo básico de lectura y escritura de datos
Más detallesESTRUCTURA DE COMPUTADORES I (Capítulo 16:El Teclado) 1/5 16-EL TECLADO
ESTRUCTURA DE COMPUTADORES I (Capítulo 16:El Teclado) 1/5 16-EL TECLADO 16.1 INTRODUCCIÓN: El teclado se comunica con la BIOS a través de puertos de comunicación controlados por las interrupciones de la
Más detallesTema 10: Estructuras de control de entrada y salida
Tema 10: Estructuras de control de entrada y salida Estructuras de control de entrada y salida (input, disp, fopen, fclose, fscanf, fprintf, textread, load, save). Instrucciones de entrada (lectura) y
Más detallesLaboratorio 5: Tarjeta de Desarrollo Spartan-3
Laboratorio 5: Tarjeta de Desarrollo Spartan-3 Objetivos: Aprender el uso de dispositivos controlados por una FPGA en una tarjeta de desarrollo. Conocer la interfaz PS/2, el protocolo de comunicación y
Más detallesTópicos Especiales de Mecatrónica
Tópicos Especiales de Mecatrónica Comunicación Serial Ricardo-Franco Mendoza-Garcia rmendozag@uta.cl Escuela Universitaria de Ingeniería Mecánica Universidad de Tarapacá Arica, Chile May 7, 2015 R. F.
Más detallesCAN-101, HT6P20x2 Encoder para aplicaciones remotas de control
Nota de Aplicación: CAN-101 Título: HT6P20x2 Encoder para aplicaciones remotas de control Autor: Ing Iván C Sierra Revisiones Fecha Comentarios 0 28/01/13 En esta oportunidad le presentamos un nuevo encoder,
Más detallesBloque III: El nivel de transporte. Tema 7: Intercambio de datos TCP
Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Índice Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Flujo de datos interactivo ACKs retardados Algoritmo de Nagle
Más detallesEn el siguiente ejemplo se declara un registro y luego variables de ese tipo de registro:
LABORATORIO #6 (Parte I y II) REGISTROS Y ARCHIVOS Parte I: Registros Un registro es una estructura de datos formado por un conjunto de elementos llamados campos, no necesariamente del mismo tipo y que
Más detallesIntroducción a Java LSUB. 30 de enero de 2013 GSYC
Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial
Más detallesDiseño de Microcontroladores
Departamento de Electrónica Diseño de Microcontroladores Alumnos: De la Goublaye de Ménorval, Eric Gómez, Rodrigo Pinto, Orlando Salas, Felipe micro@magicflow.cl 30/03/04 1. Índice 1. Índice...2 2. Introducción...3
Más detallesRESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA
UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí
Más detallesMapas de Memoria y E/S
Mapas de Memoria y E/S Sistemas con Microprocesadores http://www.herrera.unt.edu.ar/procesadores Conexiones internas del CPU08 Dentro del mc el CPU08 se vincula con memoria y con los dispositivos de E/S
Más detallesConcurrencia: Exclusión mutua y Sincronización
Concurrencia: Exclusión mutua y Sincronización Prof. Carlos Figueira Basado en materiales de Yudith Cardinale (USB) Williams Stallings, Eugene Styer Concurrencia Múltiples aplicaciones Aplicaciones estructuradas
Más detallesTema: Arduino y Comunicación Serial con Visual Basic
Facultad: Ingeniería Escuela: Electrónica Asignatura: Interfaces y Periféricos Tema: Arduino y Comunicación Serial con Visual Basic Objetivos Específicos. Utilizar el puerto USB como dispositivo de comunicación
Más detallesCurso sobre Microcontroladores Familia HC9S08 de Freescale
Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 8.- Inter Integrated Circuit Interface I2C MMIIC
Más detalles1. Cuántas sentencias hay en la secuencia principal del siguiente programa?
1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.
Más detallesGuía de práctica. Dispositivo
Guía de práctica Que queremos hacer? Vamos a hacer el Hello World del mundo de la electrónica que no es más que prender y apagar un LED a intervalos regulares. PROYECTO LAPEGÜE 1 = Prende Dispositivo 0
Más detallesEl Famoso CUBO LED. Nombre 1 Nombre 2
El Famoso CUBO LED Nombre 1 Nombre 2 Descripción del proyecto : Controlar 64 ledes del cubo con tan solo 20 pines de la placa de arduino, utilizando una técnica denominada multiplexación, y crear un espectáculo
Más detallesTest I2C Documentación Proyecto SISEM 2012 IIE - FING
Test I2C Documentación Proyecto SISEM 2012 IIE - FING Tutores: Pablo Mazzara Conrado Rossi Integrantes: Martin Ardao Luis Briosso Imanol Calvo Resumen En el siguiente documento se describe el proceso de
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesMódulo Radio frecuencia FSK y Arduino
ABC PROYECTOS ELECTRÓNICOS ABCelectronica.net 1 Módulo Radio frecuencia FSK y Arduino El objetivo de este circuito básico es la posibilidad de enviar una palabra cada cierto tiempo entre un transmisor
Más detallesIntroducción al Lenguaje de Programación C
Introducción al Lenguaje de Programación C Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Lenguaje de Programación C Fue diseñado
Más detallesCAPITULO 3 Herramientas de desarrollo CAN
CAPITULO 3 Herramientas de desarrollo CAN En este capítulo se describirán herramientas para el desarrollo y diseño de proyectos CAN: CANKing, CANalyzer, MPLAB IDE y el KIT de desarrollo PICDEM CAN-LIN
Más detallesEl módulo LCD Ejemplos de funcionamiento
SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 7: El módulo LCD El módulo LCD Ejemplos de funcionamiento - 1 - 1. Objetivos: - Conocer el funcionamiento y programación
Más detallesMANUAL DEL MICROCONTROLADOR 8051
MANUAL DEL MICROCONTROLADOR 8051 Dr. Alejandro Vega Agosto-diciembre 1999 INDICE Página INTRODUCCIÓN 3 PRIMERA PARTE. CAPITULO 1, CARACTERÍSTICAS DEL MICROCONTROLADOR 8051 5 1.1CARACTERÍSTICAS DELµC-8051
Más detallesLos bloques DLL (Figura A.1) externos permiten al usuario escribir su propio código y
Apéndice A Bloques DLL Los bloques DLL (Figura A.1) externos permiten al usuario escribir su propio código y programarlo en lenguaje C, compilarlo dentro de un archivo DLL usando el Microsoft C/C++ o el
Más detallesCómo controlar el puerto serie usando C#? Javier Gómez. Ingeniero de Telecomunicaciones por la Escuela Tecnica Superior de Bilbao
Cómo controlar el puerto serie usando C#? Javier Gómez Ingeniero de Telecomunicaciones por la Escuela Tecnica Superior de Bilbao Cómo controlar el puerto serie usando c#? Prerrequisitos Para poder utilizar
Más detallesCarlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Más detallesMatías Zabaljáuregui
El buffer de la entrada estándar en GNU/Linux Matías Zabaljáuregui (matiasz@info.unlp.edu.ar) http://linux.linti.unlp.edu.ar 0. Introducción Se intentará describir en términos sencillos la forma de tratar
Más detallesPROYECTO DE ELECTRÓNICA
PROYECTO DE ELECTRÓNICA Sistema de Alarma Raúl Lapaz de Juan Francisco Javier López Alcarria 1 ÍNDICE - Objetivo:... 3 - Justificación:... 3 - Plan de trabajo:... 3 A) Montaje del circuito en protoboards:...
Más detallesLENGUAJE. Tema 2 Elementos de un programa
LENGUAJE Tema 2 Elementos de un programa ELEMENTOS DE UN PROGRAMA Comentarios. Identificadores. Constantes. Variables. Operadores. Sentencias o instrucciones. COMENTARIOS Los comentarios en C pueden ocupar
Más detallesIntroducción a C++ y Code::Blocks
Introducción a C++ y Práctica Imperativo Clase 1 Luis Agustín Nieto Departamento de Computación, FCEyN,Universidad de Buenos Aires. 28 de mayo de 2010 Menu de esta Tarde Funcional Vs. Imperativo (Intérprete
Más detallesTARJETA HC-05 ARDUINO
TARJETA HC-05 ARDUINO TABLA DE CONTENIDO INTRODUCCIÓN... 3 DESCRIPCIÓN... 4 Características Hardware... 4 Características del Software... 4 ETAPAS Y CARACTERISTICAS ESPECÍFICAS... 5 1. Entrada de voltaje...
Más detallesISP (Programación en sistema) de los microcontroladores de NXP (Philips) 89LPC9XX utilizando Flash Magic y la UART (puerto serie) del microcontrolador
ISP (Programación en sistema) de los microcontroladores de NXP (Philips) 89LPC9XX utilizando Flash Magic y la UART (puerto serie) del microcontrolador Patricio Coronado, SEGAINVEX ELECTRONICA (Universidad
Más detallesNVIC : Nested Vectored Interrupt Controller
NVIC : Nested Vectored Interrupt Controller Laboratorio de Microprocesadores 03/09/2015 Laboratorio de Microprocesadores Ing. Daniel Jacoby1 NVIC Nested Vector Interrupt Controller La arquitectura Cortex
Más detallesNT 3 PROGRAMACION ON-LINE DE TODA LA FAMILIA APPCON
NT 3 PROGRAMACION ON-LINE DE TODA LA FAMILIA APPCON Introducción El objetivo de esta nota técnica es que el usuario tenga la capacidad de configurar los parámetros de los módulos de toda la familia APPCON
Más detallesUART. Diseño de Sistemas con FPGA 2 o cuatrimestre 2011 Patricia Borensztejn
UART Diseño de Sistemas con FPGA 2 o cuatrimestre 2011 Patricia Borensztejn UART Universal Asynchronous receiver and transmitter: dispositivo que envía datos paralelos sobre una línea serie. RS-232: standard
Más detallesDFRduino Romeo, todo en un controlador (RoMeo V1.0) Por favor, lea atentamente este manual antes de encender el dispositivo.
DFRduino Romeo, todo en un controlador (RoMeo V1.0) Por favor, lea atentamente este manual antes de encender el dispositivo. DFRduino Romeo Romeo es un microcontrolador de todo-en-uno diseñado especialmente
Más detallesTema 14. Interrupciones. Las. C. F. G.S. D.P.E. Módulo de Proyectos 1
Tema 14 Las Interrupciones C. F. G.S. D.P.E. Módulo de Proyectos 1 Los PIC de la familia 16F8X poseen 4 fuentes de interrupción: Interrupción externa a través del pin RB0/INT Interrupción por overflow
Más detallesGuía resumida para utilizar el microcontrolador CY7C68013
Guía resumida para utilizar el microcontrolador CY7C68013 Camilo Quintáns Graña Miguel Ángel Domínguez Gómez Vigo, 2011 Índice 1. DESCRIPCIÓN DEL HARDWARE... 3 1.1. Introducción... 3 1.2. Recursos de memoria...
Más detallesPráctica No. 3 del Curso "Microcontroladores" Contador de Objetos
Objetivos Práctica No. 3 del Curso "Microcontroladores" Contador de Objetos Hacer un sistema con base en el MSP430 que cuente los objetos que pasan con base en un detector infrarrojo, cada que pasen 10
Más detallesÍndice de contenido. Descripción del módulo. CTU-012, XBee Programable
Tutorial: CTU-012 Título: XBee Programable Autor: Sergio R. Caprile, Senior Engineer Revisiones Fecha Comentarios 0 16/02/11 1 17/06/11 Agrega algunos periféricos del micro de aplicación El presente tutorial
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detalles