MÉXICO DF, IZTAPALAPA. 18/07/12

Tamaño: px
Comenzar la demostración a partir de la página:

Download "MÉXICO DF, IZTAPALAPA. 18/07/12"

Transcripción

1 MÉXICO DF, IZTAPALAPA. 18/07/12

2 Índice Pagina Introducción. 3 Objetivos Investigación Servomotores. 1.2 Comunicación serial. 1.3 Convertidor analógico digital. 2- Planteamiento del proyecto Teoría de control (transmisor). -Registros involucrados. -Pasos a seguir para utilizar un convertidor A/D. -Pasos a seguir para una transmisión serial. 3- Resultados Diseño del control. 3.2 Electrónica del control. 3.3 Chasis del control. 3.4 Diseño del receptor. 3.5 Electrónica del receptor. Conclusiones. 33 Recomendaciones. 33 Bibliografía. 34 Anexos Código del control.asm - Código del receptor.asm 2

3 Introducción La comunicación es el proceso mediante el cual se puede transmitir información de una entidad a otra. La tendencia a la movilidad y la ubicuidad hacen que cada vez sean más utilizados los sistemas inalámbricos, y el objetivo es evitar los cables en todo tipo de comunicación, no sólo en el campo informático sino en televisión, telefonía, seguridad, etc. Un fenómeno social que ha adquirido gran importancia, en todo el mundo, como consecuencia del uso de la tecnología inalámbrica son las comunidades inalámbricas que buscan la difusión de redes alternativas a las comerciales. En este trabajo, de carácter didáctico se desarrollarán prácticas estarán enfocadas al entendimiento básico de los microcontroladores así como su programación. Por último se tratará de dar cursos de las prácticas propuestas, vinculando la Universidad Autónoma Metropolitana con otras instituciones educativas. Objetivos - Aplicar todos los conocimientos adquiridos en la carrera para diseñar una comunicación entre un microcontrolador y cualquier otro tipo de sistema de transmisión o recepción de datos. - Realizar pruebas físicas a los circuitos diseñados, para comprobar su correcto funcionamiento. - Elaborar un prototipo didáctico el cual motive la participación del público en general, a involucrarse en el tema de comunicaciones. 1. Investigación. 3

4 Para enfocar todo el trabajo de investigación en un tema en específico, se empezó a analizar propuestas recolectadas a través de alumnos de la UAM. Las cuales arrojaron la importancia de tener una comunicación serial entre micro controladores. Con la información recolectada se creo el primer diagrama a bloque de lo que se pretendía realizar fig(1). Fig.[1]; Diagrama a bloques, de la estructura de comunicación mediante dos micro controladores. Una vez teniendo la estructura de lo que se pretendía desarrollar, fue necesario definir la aplicación, así como los detalles técnicos del primer modelo Fig.[1]. Durante la investigación que corresponde a la primera etapa del proyecto, se encontró la importancia, hoy en día de los servomotores, cabe mencionar que es la primera vez que nombramos este tipo de dispositivo, por lo cual daremos una breve explicación del funcionamiento. 1.1 Servomotores. Un servomotor (también llamado servo) Fig.[2]. Es un dispositivo similar a un motor de corriente continua que tiene la capacidad de ubicarse en cualquier posición dentro de su rango de operación, y mantenerse estable en dicha posición. Un servomotor es un motor eléctrico que consta con la capacidad de ser controlado, tanto en velocidad como en posición. Los servomotores hacen uso de la modulación por ancho de pulsos (PWM) para controlar la dirección o posición de los motores de corriente continua. La mayoría trabaja en la frecuencia de los cincuenta hercios, así las señales PWM tendrán un periodo de veinte milisegundos. La electrónica dentro del servomotor responderá al ancho de la señal modulada. Si los circuitos dentro del servomotor reciben una señal de entre 0,5 a 1,4 milisegundos, este se moverá en sentido horario; entre 1,6 a 2 milisegundos moverá el servomotor en sentido anti horario; 1,5 milisegundos representa un estado neutro para los servomotores estándares. 4

5 Fig. [3]: Estructura típica de un servo motor. El sistema de control de un servo se limita a indicar en qué posición se debe situar. Esto se lleva a cabo mediante una serie de pulsos tal que la duración del pulso indica el ángulo de giro del motor. Cada servo tiene sus márgenes de operación, que se corresponden con el ancho del pulso máximo y mínimo que el servo entiende. Los valores más generales se corresponden con pulsos de entre 1 ms y 2 ms de anchura, que dejarían al motor en ambos extremos (0º y 180º). El valor 1.5 ms indicaría la posición central o neutra (90º), mientras que otros valores del pulso lo dejan en posiciones intermedias. Estos valores suelen ser los recomendados, sin embargo, es posible emplear pulsos menores de 1 ms o mayores de 2 ms, pudiéndose conseguir ángulos mayores de 180. Si se sobrepasan los límites de movimiento del servo, éste comenzará a emitir un zumbido, indicando que se debe cambiar la longitud del pulso. El factor limitante es el tope del potenciómetro y los límites mecánicos constructivos. Fig. [4]; Posición de un servo de acuerdo al ancho de pulso de la señal Comunicación serial. Teniendo en mente la aplicación, la cual se basa en el control de servomotores, y el esquema general del proyecto, se decidió tener una comunicación serial entre los microcontroladores. 5

6 Para tener una visión más amplia sobre la comunicación serial, se siguió la misma línea de investigación. La comunicación serial consiste en el envío de un bit de información de manera secuencial, un bit a la vez y a un ritmo acordado entre el emisor y el receptor. Es la manera mas general de definir una transmisión serial, sin mencionar algún tipo en especifico, como es, el protocolo RS-232, en el cual se acuerda toda una metodología de transmisión. En la figura 3, se muestra gráficamente los canales necesarios en la comunicación serial entre dos dispositivos, sin embargo nos son los únicos esquemas posibles, existe otras maneras de establecer la comunicación de manera serial Fig. [5], esquemas de comunicación serial entre dos dispositivos. Puerto serie asincrónico; A través de este tipo de puerto la comunicación se establece usando un protocolo de transmisión asíncrono, es decir, sin una señal de reloj. En este caso, se envía en primer lugar una señal inicial anterior al primer bit de cada byte, carácter o palabra codificada. Una vez enviado el código correspondiente, se envía inmediatamente una señal de stop después de cada palabra codificada. La señal de inicio (start) sirve para preparar al mecanismo de recepción o receptor para la llegada y registro de un símbolo, mientras que la señal de stop sirve para predisponer al sistema de recepción para que tome un descanso y se prepare para la recepción del nuevo símbolo. La típica transmisión start-stop es la que se usa en la transmisión de códigos ASCII a través del puerto RS-232, como la que se establece en las operaciones con teletipos. Fig. [6]; Transmisión de dos palabras de 8 bits cada una. 6

7 El puerto serie RS-232 (también conocido como COM) es del tipo asincrónico, utiliza cableado simple desde 3 hilos hasta 25 y conecta computadoras o microcontroladores a todo tipo de periféricos, desde terminales a impresoras y módems. La interfaz entre el RS-232 y el microprocesador generalmente se realiza mediante el chip UART 8250 (computadoras de 8 y 16 bits, PC XT) o el (IBM Personal Computer/AT y posteriores). El RS-232 original tenía un conector tipo DB-25, sin embargo la mayoría de dichos pines no se utilizaban, por lo que IBM estandarizó con su gama IBM Personal System/2 el uso del conector DB-9 (ya introducido en el AT) que se usaba, de manera mayoritaria en computadoras. Sin embargo, a excepción del mouse, el resto de periféricos solían presentar el DB-25 La norma RS-422, similar al RS-232, es un estándar utilizado en el ámbito industrial. Uno de los defectos de los puertos serie iníciales era su lentitud en comparación con los puertos paralelos -hablamos de 19.2 kbits por segundo- sin embargo, con el paso del tiempo, están apareciendo multitud de puertos serie de alta velocidad que los hacen muy interesantes ya que presentan las ventajas del menor cableado, lo que reduce su costo, y solucionan el problema de la merma de velocidad usando un mayor apantallamiento, y más barato, usando la técnica del par trenzado. Por ello, el puerto RS-232, e incluso multitud de puertos paralelos, se están sustituyendo reemplazándose por los nuevos puertos serie como el USB, el FireWire o el Serial SATA. Así como hay diferentes tipos de transmisión de datos, también hay diferentes tipos de métodos en telecomunicaciones. Los más conocidos son: Símplex (half dúplex). Es aquel en el que una estación siempre actúa como fuente y la otra siempre como colector. Este método permite la transmisión de información en un único sentido. Semidúplex. Es aquel en el que una estación A en un momento de tiempo, actúa como fuente y otra estación corresponsal B actúa como colector, y en el momento siguiente, la estación B actuará como fuente y la A como colector. Permite la transmisión en ambas direcciones, aunque en momentos diferentes. Un ejemplo es la conversación entre dos radioaficionados, pero donde uno espera que el otro termine de hablar para continuar el diálogo. Dúplex (Full Dúplex). En el que dos estaciones A y B, actúan como fuente y colector, transmitiendo y recibiendo información simultáneamente. Permite la transmisión en ambas direcciones y de forma simultánea. Por ejemplo una conversación telefónica. 1.3 Convertidor Analógico Digital. Para la parte de control, se decidió contar con dispositivos que se pudieran implementar con cierta facilidad, pero a su vez que aportaran un grado aceptable de desarrollo en la programación. En este entorno de requisitos se decidió contar con un bloque de 7

8 convertidores Analógico Digital, así mismo con esta decisión abarcaremos gran parte de temas en la ingeniería electrónica. Un convertidor analógico-digital (CAD), (o también ADC del inglés "Analog-to-Digital Converter") es un dispositivo electrónico capaz de convertir una entrada analógica de voltaje en un valor binario, Se utiliza en equipos electrónicos como computadora, grabadores de sonido y de vídeo, y equipos de telecomunicaciones. La señal analógica, que varía de forma continua en el tiempo, se conecta a la entrada del dispositivo y se somete a un muestreo a una velocidad fija, obteniéndose así una señal digital a la salida del mismo. Estos convertidores poseen dos señales de entrada llamadas Vref+ y Vref- y determinan el rango en el cual se convertirá una señal de entrada. El dispositivo establece una relación entre su entrada (señal analógica) y su salida (digital) dependiendo de su resolución. Esta resolución se puede saber, siempre y cuando conozcamos el valor máximo que la entrada de información utiliza y la cantidad máxima de la salida en dígitos binarios. A manera de ejemplo, el convertidor análogo digital ADC0804 tiene la capacidad de convertir una muestra analógica de entre 0 y 5 voltios y su resolución será respectivamente: Resolución = valor analógico / (2^8) Resolución = 5 V / 256 Resolución = 19.5mv. Lo anterior quiere decir que por cada 19.5 mv. que aumente el nivel de voltaje entre las entradas nombradas "Vref+" y "Vref-" que ofician de entrada al conversor, éste aumentará en una unidad su salida (siempre sumando en forma binaria bit a bit). Por ejemplo como se puede apreciar en la tabla 1 los diferentes valores de voltaje y su palabra en binario correspondiente: Tabla 1. Conversión de Analógico à Digital. Entrada [V] Salida Para realizar esa tarea, el conversor ADC (Analog-to-Digital Converter - Conversor Analógico Digital) tiene que efectuar los siguientes procesos: 1.- Muestreo de la señal analógica. 2.- Cuantización de la propia señal. 3.- Codificación del resultado de la cuantización, en código binario. Para convertir una señal analógica en digital, el primer paso consiste en realizar un 8

9 muestreo (sampling) de ésta, o lo que es igual, tomar diferentes muestras de voltajes en diferentes puntos de la onda senoidal. La frecuencia a la que se realiza el muestreo se denomina razón, tasa o también frecuencia de muestreo y se mide en kilohertz (khz). En el caso de una grabación digital de audio, a mayor cantidad de muestras tomadas, mayor calidad y fidelidad tendrá la señal digital resultante. Fig.[8]; Proceso de muestreo de la señal eléctrica analógica. Una vez realizado el muestreo, el siguiente paso es la cuantización de la señal analógica. Para esta parte del proceso los valores continuos de la sinusoide se convierten en series de valores numéricos decimales discretos correspondientes a los diferentes niveles o variaciones de voltajes que contiene la señal analógica original. Por tanto, la cuantización representa el componente de muestreo de las variaciones de valores de tensiones o voltajes tomados en diferentes puntos de la onda sinusoidal, que permite medirlos y asignarles sus correspondientes valores en el sistema numérico decimal, antes de convertir esos valores en sistema numérico binario. Fig.[8]; Proceso de cuantización de la señal eléctrica analógica. Después de realizada la cuantización, los valores de las muestras de voltajes se representan numéricamente por medio de códigos y estándares previamente 9

10 establecidos. Lo más común es codificar la señal digital en código numérico binario. Fig.[8]; Proceso de codificación de la señal eléctrica. En este ejemplo gráfico de codificación fig.[8], es posible observar cómo se ha obtenido una señal digital y el código binario correspondiente a los niveles de voltaje que posee la señal analógica. 2.- Planteamiento del proyecto. Después de la investigación, nos dedicamos a la planeación de un prototipo que incluyera todos los requerimientos que propusimos anterior mente. Creímos apropiado el siguiente sistema, el cual constara de un control por medio de potenciómetros, los cuales se decodificaran, para obtener una palabra de control en forma binaria, que se procesara y se enviara de forma serial del primer controlador al segundo ó a varios según los dispositivos que deseemos controlar. La comunicación será en un solo sentido. Una vez que el dato fue recibido actuara otro proceso de decodificación en el receptor para establecer la aplicación. En la aplicación se hará una modulación PWM, para controlar un servo motor, el cual será manipulado desde los potenciómetros. Esta aplicación puede ser usada en sistemas robóticos controlados a distancia. La aplicación constara en tener control total de un sistema de iluminación profesional desde los potenciómetros figura [9]. Fig[9]; Esquema a bloques de la trayectoria de iluminación. 10

11 2.1- Teoría de control (transmisor). En la parte del control tenemos potenciómetros, los cuales se conectan al micro controlador para obtener la señal de corriente continua, la cual se decodificara en forma binaria, para representar una instrucción en la aplicación. Fig.[10 ]; Entradas de señales continuas, producidas por los potenciómetros. La finalidad es que cada potenciómetro controle un servo motor. Empezaremos explicando la decodificación. El PIC16F877 tiene 8 canales que pueden ser usados como convertidores, de una señal analógica a una digital (A/D), para nuestro caso solo utilizaremos 4 canales. Tenemos 5 motores, pero solo necesitamos 4 potenciómetros ya que la distribución es de la siguiente forma. Tabla.2; Asignación de control de cada potenciómetro. POTENCIOMET RO MOTOR 1 X 2 Y 3 FIGURAS 4 COLORES 11

12 Teniendo seleccionados los 4 primeros canales del convertidor analógico digital, procedemos a dar un formato a los registros involucrados en la codificación, de entrada tenemos que la decodificación que asigna el PIC16f877 es de 10 bit a la palabra generada. El módulo de conversión A/D tiene las siguientes características: - Genera una palabra de 10 bits como resultado de la conversión (convierte una señal de entrada analógica en una representación binaria de 10 bits). - Utiliza el método de aproximaciones sucesivas. - Almacena este resultado de la conversón en los registros: ADRESL y ADRESH. - Seleccionando los voltajes de referencia: Vref y Vref+, se puede ajustar la mínima resolución o la calidad de la conversión de acuerdo a las necesidades. Fig. [11]; Modulo convertidor-analógico. El funcionamiento del convertidor A/D requiere la manipulación de cuatro registros: Dos registros en donde se deposita el resultado de la conversión (resultado en 10 bits): - ADRESH es el resultado de la parte alta. - ADRESL es el resultado de la parte baja. 12

13 Fig. [12]; Posición de la palabra generada por el convertidor A/D. Dos registros de control: - ADCON0 controla la operación del módulo A/D. - ADCON1 configura el funcionamiento de las terminales de los puertos, como de entradas analógica (RA2/AN2/Vref+ y RA3/AN3/Vref ) o como de entradas/salidas digitales. Registro ADCON0; Encargado del control de la operación del módulo A/D (figura 13), que selecciona el canal, el reloj de conversión, apagado/encendido, y el comienza y fin del la conversión. Fig(13); Esquema del registro ADCON0 del PIC16F877. bit7:6, ADCS1:ADCS0: (A/D Conversion Clock Select bits). Seleccionan la frecuencia de reloj que se emplea en la conversión, con la siguiente asignación de la tabla3. Tabla3. Asignación de frecuencia asumida al convertidor A/D. bit5:3, CHS2: CHS0: (Analog Channel Select bits). Selecciona el canal a convertir. 000 = Canal 0 (RA0/AN0). 001 = Canal 1 (RA1/AN1). 010 = Canal 2 (RA2/AN2/Vref+). 011 = Canal 3 (RA3/AN3/Vref ). 13

14 100 = Canal 4 (RA5/AN4). 101 = Canal 5 (RE0/AN5). 110 = Canal 6 (RE1/AN6). 111 = Canal 7 (RE2/AN7). Registro ADCON1. Encargado de configurar el funcionamiento de las terminales de los puertos, que pueden configurarse como de entradas analógica (RA2 y RA3 también pueden ser los voltajes de referencia) o como de entrada/salida digitales. Fig.(14); Esquema del registro ADCON1 del PIC16F877. bit 7 ADFM: (A/D Result Format Select bit). Para indicar el tipo de justificación del resultado de la conversión. ADFM = 1. Justificación a la derecha. El resultado depositado en ARDESH:ADRESL queda justificado a la derecha. Los seis (6) bits más significativos de ARDESH son leídos como 0. ADFM = 0. Justificación a la izquierda. El resultado depositado en ARDESH:ADRESL queda justificado a la izquierda. Los seis (6) bits menos significativos de ARDESL son leídos como 0. Fig.(15);justificación de bit usando los dos registros( ADRESH. ADRESL). bit5:4 Sin implementar: Leídos como 0. 14

15 bit3:0 PCFG3: PCFG0: (A/D Port Configuration Control bits). Bits de control en la configuración de los puertos del módulo A/D. Permiten seleccionar entre los puertos analógicos y digitales de RA0 a RA5 y RE0 a RE2, así como el voltaje de referencia. Tabla 4. Configuración de tipo de entrada ( A analógica, D Digital). La resolución que tiene cada bit depende del voltaje de referencia y se calcula con la siguiente fórmula: Resolución =Vref+ Vref entre 1023 Si se utiliza Vref+ como + 5V y Vref como tierra, la resolución es de 4.88 mv por bit. Las líneas de entrada al A/D deben ser configuradas como entradas si se selecciona el módulo A/D. El convertidor utiliza una técnica de muestreo y retención equivalente a carga una capacitancia con tensión a medir. El multiplexor no tiene necesidad de estar conectado permanentemente a la entrada seleccionada, sino sólo durante el tiempo necesario para carga el condensador. El tiempo de conversión del A/D por bit esta definido como TAD y depende de la velocidad de la conversión deseada y de la frecuencia del reloj. La conversión A/D requiere de un mínimo de 12TAD por cada 10 bits de conversión. La fuente de reloj para el A/D (TAD), la tasa de muestreo, es seleccionado por software. Las siete posibles opciones para el TAD son (TOSC es el periodo de oscilación del cristal): - 2 TOSC - 4 TOSC - 8 TOSC - 16 TOSC 15

16 - 32 TOSC - 64 TOSC - Oscilador RC del módulo A/D interno Pasos a seguir para utilizar el convertidor A/D 1. Configura el módulo Convertidor Analógico-Digital. Configurar las terminales que actuarán como entradas analógicas, las que trabajan como E/S digitales y las usadas para la tensión de referencia (ADCON1). Seleccionar el reloj de la conversión (ADCON0). Seleccionar el canal de entrada A/D (ADCON0). Activar el módulo A/D (ADCON0). 2. Activar, si se desea, la interrupción escribiendo sobre PIE1 y PIR1. Borrar el señalizador ADIF. Poner a 1 el bit ADIE. Poner a 1 los bits habilitadores GIE y PEIE. 3. Tiempo de espera para que transcurra el tiempo de adquisición. 4. Inicio de la conversión. Poner a 1 el bit GO/DONE (ADCON0). 5. Tiempo de espera para completar la conversión A/D que puede detectarse. Por la exploración del bit GO/DONE, que al terminarse la conversión pasa a 0. Esperando a que se produzca la interrupción si se ha programado, al finalizar la conversión. Aunque no se permita interrupción, el señalizador ADIF se pondrá a 1 al finalizar la conversión. 6. Leer el resultado en los 10 bits válidos de ADRESH:ADRESL y borrar la bandera ADIF. 7. Para una nueva conversión regresar al paso 1, o al 2. El tiempo de conversión por bit está definido por TAD. Se exige esperar un mínimo de 2 * TAD para reiniciar una nueva conversión. Características Tensión de salida proporcional a la temperatura en una proporción de 10mV/ C. Intervalo de funcionamiento comprendido entre 55 a +150 C. Intervalo de polarización entre 4V y 20V. Precisión de ± 0.9 C. Para un valor de tensión de salida de 250mV, le corresponde una temperatura ambiente de 25 C. Sin importar el voltaje de polarización aplicado al sensor (comprendido en el intervalo de 4 a 20V). 16

17 Partes de los datos a transmitir en comunicación asíncrona a) Un bit de inicio (Start) o de sincronización inicial. b) De siete a ocho bits de datos, que son los bits del carácter que se transmiten. Empezando por el meno significativo (LSB), y terminando con el más significativo (MSB). c) Un bit opcional de paridad (Parity), par o impar, para la detección de errores. d) Uno, uno y medio o dos bits de paro (Stop). El transmisor y el receptor deberán tener los mismos parámetros: velocidad, paridad, número de bits del dato transmitido y bits de paro. Tabla 5: Registros involucrados en la USART en modo asíncrono 17

18 Registro TXSTA. Fig.(16); Esquema del registro TXSTA del PIC16F877. bit 7 : CSRC (Clock Source Select bit). Selecciona la fuente o el tipo de reloj en modo síncrono. En modo asíncrono no se utiliza. En modo síncrono CSRC = 1. Modo Maestro. Reloj interno producido por el generador de baudios (BGR). CSRC = 0. Modo Esclavo. Reloj de una fuente externa. bit 6 : TX9 (9-bit Transmit Enable bit). Habilitación del tamaño del dato a transmitir. Habilita el bit 9 de transmisión. TX9 = 1. Transmisión de 9 bits. TX9 = 0. Transmisión de 8 bits. bit 5 : TXEN (Transmit Enable bit). Bit de activación de la transmisión. TXEN = 1. Transmisión activada. TXEN = 0. Transmisión inactivo. bit 4 : SYNC (USRAT Mode Select bit). Modo de trabajo de la USART. SYNC = 1. Modo síncrono. SYNC = 0. Modo asíncrono. bit 3 : Sin implementar: Leído como un 0. bit 2 : BRGH (High Baud Rate Select bit). Selección baudio de alta velocidad. En modo asíncrono BRGH = 1. Alta velocidad. BRGH = 0. Baja velocidad. bit 1 : TRMT (Transmit Shift Register Status bit). Estado del registro de corrimiento de transmisión. TRMT = 1. Registro TSR vacío. TRMT = 0. Registro transmisión no lo está. 18

19 bit 0 : TX9D (9th bit of transmit data). Es el noveno bit transmitido en las comunicaciones a 9 bits. Puede ser el bit de paridad. Registro RCSTA. Fig.(17); Esquema del registro RCSTA del PIC16F877. bit 7 : SPEN (Serial Port Enable bit). Activación del puerto serial. Configura las terminales RB1/RX/DT y RB2/TX/CK como terminales de puerto serial cuando los bits TRISB<2:1> son establecidos a uno. bit 6 : RX9 (9-bit Receive Enable bit). Habilitación del tamaño del dato a recibir. RX9 = 1. Recepción de 9 bits. RX9 = 0. Recepción de 8 bits. bit 5 : SREN (Single Receive Enable bit). Configura la recepción sencilla. En modo asíncrono no se utiliza. En modo síncrono maestro SREN = 1. Habilita recepción sencilla. SREN = 0. Deshabilita recepción sencilla. Este bit se limpia después de que la recepción se completa. En modo síncrono esclavo no se utiliza. bit 4 : CREN (Continuous Receive Enable bit). Bit de activación de la recepción continúa. En modo asíncrono CREN = 1. Habilita modo de recepción continua. CREN = 0. Desactiva modo de recepción continua. En modo síncrono maestro CREN = 1. Habilita recepción continua hasta que el bit CREN es borrado. CREN = 0. Desactiva recepción continua. bit 2 : FERR (Framing Error bit). Bit de error de trama. FERR = 1. Se ha producido error de trama (puede ser actualizado leyendo el registro RCREG y recibir el siguiente dato válido). FERR = 0. No hay error de trama. bit 1 : OERR (Overrun Error bit). Bit de error de desbordamiento. Se recibe un nuevo dato sin haberse leído el anterior. 19

20 OERR = 1. Error de desbordamiento (puede ser borrado escribiendo un 0 en el bit CERN). OERR = 0. No hay error de desbordamiento. bit 0 : RX9D (9th bit of received data). Es el noveno bit recibido en las comunicaciones a 9 bits. Puede ser el bit de parida. Registro PIE1. Fig.(18); Esquema del registro PIE del PIC16F877. bit 5 : RCIE (USART Receive Interrupt Enable bit). Habilitación del bit del USART en recepción cuando el buffer se llena. RCIE = 1. Habilita la interrupción del USART en recepción. RCIE = 0. Deshabilita la interrupción del USART en recepción. bit 4 : TXIE (USART Transmit Interrupt Enable bit). Habilitación del bit del USART en transmisión cuando el buffer queda vacío. TXIE = 1. Habilita la interrupción del USART transmisor. TXIE = 0. Deshabilita la interrupción del USART transmisor. bit 5 : RCIF (USART Receive Interrupt Flag bit). Bandera de estado de la recepción serial. RCIF = 1. Buffer de recepción lleno. RCIF = 0. Buffer de recepción vacío. bit 4 : TXIF (USART Transmit Interrupt Flag bit). Bandera de estado de la transmisión serial. TXIF = 1. Buffer de transmisión vacío. TXIF = 0. Buffer de transmisión lleno. El módulo USRAT asíncrono está compuesto de los siguientes elementos importantes: Generador de Baud Rate Circuito muestreador. Transmisor asíncrono Receptor asíncrono Generador de Baudios En el protocolo asíncrono RS-232C, la frecuencia en baudios (bits por segundo) a la que se realiza la transferencia se debe efectuar a un valor normalizado: 330, 600, 1200, 2400, 4800, 9600, 19200,38400, etc. Para generar estas frecuencias, el USART dispone de un Generador de Frecuencias en Baudios (BRG), cuyo valor es controlado por el contenido grabado en el registro, de 8 bits, SPBRG. 20

21 Fig.(19); Esquema del registro SPBRG del PIC16F877. La velocidad o la frecuencia en baudios del generador se establece, por un lado, por el valor cargado en el registro SPBRG (de valor X) y, por el otro, por la condición del bit BRGH del registro TXSTA<2>, que obtiene el valor de una constante n necesaria en la determinación de la frecuencia de funcionamiento. Interfaz de Comunicación Serial (USART) Fig.(20); Esquema de transmisor asíncrono USART del PIC16F877. Esquema simplificado de conexión entre dos módulos USART funcionando en modo asíncrono 21

22 Fig.(21); Esquema de una transmisión asíncrona de un micro controlador a otro. El dato que se desea transmitir por el USART transmisor se deposita en el registro TXREG. Se traspasa al registro de desplazamiento TSR, que va sacando los bits secuencialmente y a la frecuencia establecida. Antes de transmitir los bits del dato de información incluye un bit de inicio y después de sacar todos los bits del dato añade un bit de paro. El USART receptor recibe, uno a uno, los bits, elimina los dos bits de control y los de información una vez que ha llenado el registro de desplazamiento RSR los traslada automáticamente al registro RCREG. Pasos a seguir para establecer una transmisión asíncrona 1. Inicializar el registro SPBRG a un baud rate apropiado. Si se desea una baud rate de alta velocidad, poner en uno el bit BRGH. 2. Habilitar el puerto serial asíncrono al limpiar el bit SYNC y poner en uno el bit SPEN. 3. Si se desea interrupciones, poner en uno los bits TXIE, GIE y el PEIE. 4. Si se desea la transmisión a 9 bits, poner en uno el bit TX9. 5. Habilitar la transmisión al poner en uno el bit TXEN, el cual pone en uno el bit TXIF. 6. Si fue seleccionado la transmisión a 9 bits, el noveno bit debe ser colocado en el bit TX9D. 7. Cargar el dato en el registro TXREG (iniciando la transmisión). 22

23 3. Resultados. En esta parte daremos los resultados obtenidos y los diseños que se implementaron, así como las decisiones que se tomaron en cuenta cuando se tenía que elegir una opción Diseño del control. El control (transmisor), tiene la característica de muestrear la información de los controles (potenciómetros), y codificarlos, posteriormente organiza sistemáticamente la información, y la transmite de forma serial. Cada posición del potenciómetro genera una palabra binaria de 10 bit. Pero no necesitamos las 1024 posiciones del potenciómetro, debido a que no tenemos 1024 aplicaciones. El potenciómetro 1, controla el servo motor nombrado X. En la figura 24, podemos observar que los límites del motor X son de 20 grados a 151 grados aproximadamente, por lo cual es aceptable tener una distribución de 16 posiciones del potenciómetro. El potenciómetro 2, controla el servo motor nombrado Y. En la figura 24, podemos observar que los rangos que maneja el motor Y, van de 10 grados, a 80 grados. Si tenemos en cuenta que solo son 70 grados la diferencia, que existe entre los límites, y aplicamos una distribución similar al potenciómetro 1, solo requerimos 8 posiciones del potenciómetro. 23

24 Fig. [23]; Muestra las limitaciones que tienen los motores (M1, M2),que controlan el espejo. El potenciómetro 3, controla los colores, que se obtienen cuando el haz de luz cruza los dicroicos distribuidos en el disco1 y 2. Dichos discos forman 8 combinaciones, por lo tanto necesitamos solo 8 posiciones del potenciómetro. El potenciómetro 4, controla las figuras, que se obtienen del disco 3. El disco 3 contiene 5 figuras, y se agrega la opción de bloquear la salida del haz de luz con una combinación de los discos1 y 3. Por lo tanto necesitamos 6 posiciones, recordando que tenemos una codificación binaria es necesario como mínimo 3 bit, para cubrir las 6 posiciones. Fig.[22]; Muestra la cantidad y la asignación de bit s codificados de cada potenciómetro. Una vez que la etapa de poleo de información de los potenciómetros ha finalizado, se procede a formar la palabra que enviara el micro controlador. Esta palabra debe tener una secuencia específica, en particular cada byte enviado debe contener un encabezado, el cual indicara al receptor que información se esta enviando. En la tabla 6 indica la asignación de cada encabezado. Tabla 6; Contiene la asignación de los primeros dos bit de cada byte. 24

25 Encabeza do Contenido 00 Dirección 01 instrucción X 10 instrucción Y 11 Colores, Figuras El código del control esta diseñado para futuras modificaciones, en especial se piensa modificar el código para manejar más de un sistema de 5 servos motores, por ello el primer byte manda una dirección, que puede estar dentro de 64 posibles receptores. El envió de información esta configurado a 9600 baudios (bits por segundo), cada palabra como se ha mencionado esta conformada por 4 bytes (32 bits), si tenemos los 64 posibles receptores, quiere decir que cada 2048 bits enviados regresara a enviar la información de la misma dirección, aproximadamente cada segundo mandaremos 4 veces la información a cada dirección. Actualizando la información 4 veces cada segundo, tenemos como resultado que los cambios parecen que suceden instantáneamente. Fig. [23]; Distribución de la palabra de enviada Electrónica del control. La electrónica se divide en dos pates. El primer bloque se refiere a la etapa de alimentación y la segunda a la etapa que contiene el micro controlador (PIC16F877). Por falta de tiempo no se pudo realizar las tarjetas de uso especifico al proyecto, hasta el momento se tiene un armado en tarjetas de prueba. La alimentación del control, es directamente a una toma convencional de 127 V. El voltaje es reducido a través de un regulador de 120V a 12V. Después el voltaje pasa por un rectificador de onda completa formado por 4 diodos 1N1001. El voltaje es filtrado para posteriormente ser rectificado a 5 voltios. El diagrama correspondiente a la fuente de alimentación se muestra en la figura 24. La cual fue implementada con un regulador de 5 voltios (LM7805C). 25

26 Fig. [24]; Fuente regulada de 5V. La configuración del PIC16F877, se puede consultar en el manual de dicho componente, en el caso particular de este proyecto, se utilizo un cristal de 4 Mhz, los potenciómetros que se utilizaron son de 10Kohm, aunque se puede utilizar de otro valor, se tiene que tener cuidado con la potencia que genera la corriente que pasa por el potenciómetro. En este caso tenemos 2.5 mw. Y los potenciómetros son de 250 mw. El diseño utilizado y el diagrama se muestran en la figura

27 Fig.[25]; Diagrama de la configuración del PIC16F Chasis del control. El chasis en el cual se monto el control, fue reciclado de una mezcladora de audio marca MITZU. La idea era tener potenciómetros lineales, pero por economía se decidió tener potenciómetros rotatorios, sin embargo el chasis puede soportar cualquiera de los dos modelos. La terminal por la cual saldrá la señal esta en la parte superior izquierda, la configuración se muestra en la figura

28 Fig. [26]; configuración del canal de transmisión. Las dimensiones son aproximadamente 50cm de largo, 30cm de ancho y 10cm de profundidad. La parte frontal del chasis (tapa), la podemos observar en la figura 27. Fig.(27); Chasis reciclado Mitsu MIX-4502, para montar los controles y tarjetas del transmisor. Para comprender más a detalle el control de los datos y su asignación a la aplicación, se puede consultar la tabla 7, en la cual esta contenido los valores asignados a cada potenciómetro, en relación a la diferencia de voltaje que se genera por la posición de este. En las ultimas tres columnas de la tabla 7, se puede apreciar la instrucción que interpreta el receptor, en la ultima columna se registra el valor del ancho de pulso que se genera en la modulación PWM, para indicar la posición de cada servo motor. Tabla 7; Contiene los valores obtenidos para diferentes rangos de voltaje, leídos de los potenciómetros. 28

29 Potencióme tro Voltaje Min. [v] Voltaje Max. [v] Codificación binaria Motor Posición [grados] Ancho de pulso [ms] 1 0 0, x ,3125 0, x 28,75 3,2 1 0,625 0, x 37, ,9375 1, x 46,25 4,9 1 1,25 1, x 55 5,8 1 1,5625 1, x 63,75 6,7 1 1,875 2, x 72,5 7,5 1 2,1875 2, x 81,25 8,5 1 2,5 2, x 90 9,3 1 2,8125 3, x 98,75 10,2 1 3,125 3, x 107, ,4375 3, x 116,25 11,9 1 3,75 4, x ,8 1 4,0625 4, x 133,75 13,7 1 4,375 4, x 142,5 14,5 1 4, x 151,25 15, , y 10 1,3 2 0,625 1, y 20 2,3 2 1,25 1, y 30 3,3 2 1,875 2,5 011 y 40 4,3 2 2,5 3, y 50 5,3 2 3,125 3, y 60 6,3 2 3,75 4, y 70 7,3 2 4, y 80 8, , M1, M2 135, , ,625 1, M1, M2 135, , 7 3 1,25 1, M1, M2 135, , ,875 2,5 011 M1, M2 135, , ,5 3, M1, M , , ,125 3, M1, M , , 11,5 3 3,75 4, M1, M , 67,5 11.5, 7 3 4, M1, M , , 2, , M ,625 1, M ,25 1, M ,875 2,5 011 M ,5 3, M ,125 3, M Diseño del receptor. El receptor esta conformado por un micro controlador (PIC16F877), el cual manipula los servomotores. El PIC16f877, recibe la palabra de control proveniente del emisor, la palabra sé decodifica para separar los diferentes campos de instrucción. Como se vio en anteriormente, el emisor manda 1 trama con 4 bytes, el primero contiene la dirección, el segundo contiene la información del servomotor X, el tercero contiene la información del motor Y, el ultimo contiene la combinación del sistema de colores y figuras. Este sistema esta basado en 2 discos y un semicírculo, numerados de acuerdo al servomotor 29

30 que los manipula, el hecho es que los discos tienen un punto en común (el centro del sistema), se trata de que el haz de luz pase por este punto y adquiera la forma de la figura y el color correspondiente, así mismo el semicírculo obstruye la luz si lo requerimos. El sistema se puede apreciar desde diferentes puntos de vista en la figura 28. Fig.(28), Diseño de la parte mecánica, tanto las figuras como los colores (dicroicos). La parte mecánica se puede apreciar en la figura 29, donde podemos ver el modulo de figuras y colores desde 3 diferentes ángulos. Fig.(29); Implementación del modulo de figuras y colores Electrónica del receptor. Al igual que el control el receptor tiene una fuente de alimentación regulada. Una de las pruebas que se realizo, fue el tener solo un regulador a 5V, para el microcontrolador y los servomotores. En otra prueba se separo la parte de alimentación del microcontrolador y la de los servomotores. En las dos pruebas los servomotores presentaron errores de control cuando la corriente era muy demandada. Se decidió mantener dos reguladores en la tarjeta. El diagrama eléctrico lo podemos apreciar en la figura 30, resaltando que la entrada es el canal que existe entre el receptor y el emisor. 30

31 Fig.(30); Diagrama eléctrico del receptor. El diseño final de la placa del receptor se muestra en la figura 31, donde podemos observar que en la parte izquierda tiene las conexiones para los servomotores, la alimentación de esta tarjeta es de 9V. Se recomienda que el regulador para los servomotores tenga un disipador debido ala corriente demandada por los 5 servomotores. 31

32 Fig.(31); Tarjeta receptora. Fig. (32); Tarjeta receptora y modulo de servomotores. Conclusiones. Durante el desarrollo del proyecto se tuvieron varios problemas. Uno de ellos fue, el cálculo de la modulación para el control de cada servomotor. 32

33 Para el protocolo de comunicación, no se utilizo un estándar, se propuso un protocolo propio, el cual consiste en mandar Bytes con dos bit s de señalización, así obtuvimos 4 posibles señales con la combinación de los 6 bit`s restantes. Al utilizar una comunicación de tipo simplex y además serial, el receptor no tenia oportunidad de mandar acuses de recibo, así que no se considera ningún tipo de error, lo que provoca que no sean identificados los errores y se decodifique siempre toda la trama. Se puede apreciar que aunque no cambiemos de estado los controles en un tiempo dado existe movimiento de los servos debido a la existencia de un error en el canal. Aunque logramos gran parte de un sistema de comunicación digital, con cinco bloques importantes como son; mensaje, transmisor, canal, receptor, y destino con la implementación del los potenciómetros como mensaje, el microcontrolador que emite los datos como transmisor, el cable plug canon como canal. El microcontrolador colector de datos como receptor y los servomotores como destino. Se noto la importancia de tener una codificación de canal así como un algoritmo de detección y corrección de errores. A grandes rasgos con este proyecto se plasma todo un proceso de manejo de señales en sus dos formas, tanto continuas como discretas, siendo la ultima el objetivo de transmisión deseada. Recomendaciones. 4. Modificar el código del control, para poder muestrear más señales de control. 5. Implementar un método que agregue redundancia a la palabra enviada, a si como los procedimientos de detención y corrección de errores. 6. Desarrollar un protocolo de comunicación, que tenga mayor distancia de transmisión, en particular recomiendo el protocolo RS Detallar los comentarios de código. 8. Poner indicadores en el control, para saber que instrucción estamos mandando. Una buena forma seria poner alado de cada potenciómetro un display que haga referencia a la posición en que se encuentra. Bibliografía. 9. Palacios Municio, Enrique/ Remiro Domínguez, Fernando. MICROCONTROLADOR PIC16F84. Desarrollo de proyectos, 1 edición (2004). Editorial Alfaomega Ra-Ma. 10.Angulo Usategui, José María; Angulo Martínez, Ignacio. "Microcontroladores PIC. Diseño práctico de aplicaciones. 2ª edición" (1999). Editorial McGraw Hill. Madrid. 33

34 - Páginas web Hojas de especificaciones. Datasheet. LM7805. Datasheet. PIC16F877A. Datasheet Futaba S3003. Anexos. CÒDIGO DEL CONTROL #INCLUDE <P16F874A.INC> #INCLUDE <macros.inc> CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC & _CPD_OFF & _LVP_OFF & _DEBUG_OFF LIST p = 16F874A Radix Hex 34

35 ; ; ************************Asignación de registros ********************************************************* W_TEMP EQU 0x20 STATUSR EQU 0x21 STORW EQU 0X22 STRST EQU 0X23 DATOS EQU 0X24 REG0 EQU 0X25 REG1 EQU 0X33 REG2 EQU 0X27 REG3 EQU 0X28 REG4 EQU 0X29 CONTADOR EQU 0X2A TEMP0 EQU 0X2B TEMP1 EQU 0X2C TEMP2 EQU 0X2D TEMP3 EQU 0X2E TEMP4 EQU 0X31 TEMP5 EQU 0X32 TEMP6 EQU 0X33 TEMP7 EQU 0X34 REG5 EQU 0X35 REG6 EQU 0X36 REG7 EQU 0X37 CON_DIR EQU 0X38 PERMISO EQU 0X39 #DEFINE RXtris TRISC, 7 #DEFINE TXtris TRISC, 6 V1_20ms EQU D'100' ; valor de loop interno V2_20ms EQU D'10' RLn20ms EQU 0x2F ; dirección de RAM donde se guarda variable temporal RSh20ms EQU 0x30 ; ORG 0 ; vector de inicio de programa GOTO INICIO ORG 4 ; vector de interrupción GOTO ISR ; INICIO CALL INICIALIZACION ; llamada a la rutina de inicialización LOOP CALL ADQUISICION ; llamada a la rutina de convertidor A/D. GOTO LOOP ; forma un bucle infinito. ;========================================================================= ; Servicio de interrupción ISR W_TEMP ; respalda el registro w MOVF STATUS, W STATUSR ; respalda el registro de estados ;... movlw h'80' ;INICIALIZA EL REG DEL TIMER1 TMR1H movlw h'00' TMR1L BTFSC CON_DIR,0 ; verifica el contador de direcciones GOTO ES_UNO_C0 BTFSC CON_DIR,1 GOTO DIRECCION_10 GOTO DIRECCION_00 ES_UNO_C0 BTFSC CON_DIR,1 GOTO DIRECCION_11 GOTO DIRECCION_01 35

36 ;========================================================================== DIRECCION_00 ; Cuando la dirección es 00 BTFSC PERMISO,0 GOTO DIRECCION_01 BTFSC CONTADOR,0 GOTO ES_UNO_C00 BTFSC CONTADOR,1 GOTO DIR_INST_00010 GOTO DIR_INST_00000 ES_UNO_C00 BTFSC CONTADOR,1 GOTO DIR_INST_00011 GOTO DIR_INST_00001 DIR_INST_00000 MOVLW B' ' TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_00001 BSF REG1,0 BCF REG1,1 MOVF REG1,W PORTB TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_00010 BSF REG2,1 BCF REG2,0 MOVF REG2,W ; PORTD TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_00011 BSF REG3,0 BSF REG3,1 MOVF REG3,W TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F INCF CON_DIR,F GOTO SALIR_ISR ;========================================================================== DIRECCION_01 BTFSS PERMISO,0 GOTO DIRECCION_10 BTFSC CONTADOR,0 GOTO ES_UNO_C01 BTFSC CONTADOR,1 GOTO DIR_INST_01110 GOTO DIR_INST_01100 ES_UNO_C01 BTFSC CONTADOR,1 GOTO DIR_INST_01111 GOTO DIR_INST_01101 DIR_INST_01100 MOVLW B' ' TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_01101 BSF REG1,0 BCF REG1,1 MOVF REG1,W 36

37 ; PORTB TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_01110 BSF REG2,1 BCF REG2,0 MOVF REG2,W ; PORTD TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_01111 BSF REG3,0 BSF REG3,1 MOVF REG3,W TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F INCF CON_DIR,F GOTO SALIR_ISR ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx DIRECCION_10 BTFSS PERMISO,0 GOTO DIRECCION_11 BTFSC CONTADOR,0 GOTO ES_UNO_C10 BTFSC CONTADOR,1 GOTO DIR_INST_10110 GOTO DIR_INST_10100 ES_UNO_C10 BTFSC CONTADOR,1 GOTO DIR_INST_10111 GOTO DIR_INST_10101 DIR_INST_10100 MOVLW B' ' TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_10101 BSF REG4,0 BCF REG4,1 MOVF REG4,W TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_10110 BSF REG6,1 BCF REG6,0 MOVF REG6,W TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F GOTO SALIR_ISR DIR_INST_10111 BSF REG7,0 BSF REG7,1 MOVF REG7,W TXREG ; ENVIA EL DATO POR LA UART INCF CONTADOR,F INCF CON_DIR,F GOTO SALIR_ISR ;===================================================================== DIRECCION_11 INCF CON_DIR,F GOTO SALIR_ISR ;==================================================================== 37

38 SALIR_ISR BCF PIR1,TMR1IE ;LIMPIA LA BANDERA DEL TIMER1 ;... MOVF STATUSR, W STATUS SWAPF W_TEMP, F SWAPF W_TEMP, W RETFIE ;************************************************************************************************ INICIALIZACION CALL CONFIG_PUERTOS CLRF PORTC CALL IniUART CALL IniTIMER1 CALL CONFIG_ADC CALL RETARDO banco1 BCF PIE1, RCIE banco0 MOVLW B' ' INTCON MOVLW H'00' PIR1 banco0 RETURN ; IniUART banco1 BSF RXtris BSF TXtris banco0 BCF BCF MOVLW MOVLW MOVLW PIE1,RCIE PIE1,TXIE D'25' SPBRG B' ' TXSTA B' ' RCSTA RETURN ; IniTIMER1 banco0 MOVLW H'01' T1CON banco1 BSF PIE1,TMR1IE RETURN ; CONFIG_PUERTOS banco1 MOVLW 0XFF TRISA TRISB BSF TRISE,0 BSF TRISE,1 BSF TRISE,2 BCF TRISE,4 38

39 CLRF TRISD CLRF TRISC banco0 RETURN ; CONFIG_ADC banco1 MOVLW B' ' ADCON1 BCF TRISE,4 banco0 MOVLW B' ' ADCON0 BSF ADCON0,ADON RETURN ; ADQUISICION MOVF PORTB,W ANDLW B' ' PERMISO ;... MOVLW B' ' ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_0 BTFSC ADCON0,2 GOTO ADC_BUSY_0 NOP MOVF ADRESH,W ANDLW 0xE0 TEMP0 ;... MOVLW B' ' ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_1 BTFSC ADCON0,2 GOTO ADC_BUSY_1 MOVF ADRESH,W NOP ANDLW B' ' TEMP1 RRF TEMP1,F RRF TEMP1,F RRF TEMP1,F ;... MOVLW B' ' ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_2 BTFSC ADCON0,2 GOTO ADC_BUSY_2 NOP MOVF ADRESH,W NOP ANDLW 0xF0 REG2 RRF REG2,F RRF REG2,F ;... MOVLW B' ' 39

40 ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_3 BTFSC ADCON0,2 GOTO ADC_BUSY_3 NOP MOVF ADRESH,W NOP ANDLW 0xF0 REG3 RRF REG3,F RRF REG3,F ;... MOVLW B' ' ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_4 BTFSC ADCON0,2 GOTO ADC_BUSY_4 MOVF ADRESH,W NOP ANDLW 0xE0 TEMP4 ;... MOVLW B' ' ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_5 BTFSC ADCON0,2 GOTO ADC_BUSY_5 MOVF ADRESH,W NOP ANDLW B' ' TEMP5 RRF TEMP5,F RRF TEMP5,F RRF TEMP5,F ;... MOVLW B' ' ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_6 BTFSC ADCON0,2 GOTO ADC_BUSY_6 NOP MOVF ADRESH,W NOP ANDLW 0xF0 REG6 RRF REG6,F RRF REG6,F ; MOVLW B' ' ADCON0 BSF ADCON0,ADON CALL RETARDO BSF ADCON0,2 ADC_BUSY_7 40

41 BTFSC ADCON0,2 GOTO ADC_BUSY_7 NOP MOVF ADRESH,W NOP ANDLW 0xF0 REG7 RRF REG7,F RRF REG7,F ;************************************************************************************************************* SUMA_REG MOVF TEMP0,W IORWF TEMP1,W REG1 MOVF TEMP4,W IORWF TEMP5,W REG4 RETURN ;************************************************************************************************* RETARDO MOVLW V2_20ms RLn20ms ; cargar valor loop externo loplon2 MOVLW V1_20ms RSh20ms ; cargar valor loop interno lopshr2 NOP NOP DECFSZ RSh20ms,F GOTO lopshr2 DECFSZ RLn20ms,F GOTO loplon2 RETURN END 41

42 CÓDIGO DEL RECEPTOR #INCLUDE <P16F874A.INC> #INCLUDE <macros.inc> CONFIG _XT_OSC & _WDT_ON & _PWRTE_ON & _CP_OFF & _BODEN_OFF & _LVP_OFF & _DEBUG_OFF & _CPD_OFF LIST p = 16F874A Radix Hex ;*************************************************************************************** SUMAX EQU 0X0A SUMAY EQU 0X05 PRENDIDO EQU 0X06 AMARILLO EQU 0X0E APAGADO EQU 0X15 PRENDIDO2 EQU 0X1F AZUL EQU 0X06 NARANJA EQU 0X12 MORADO EQU 0X1F TRANSP EQU 0X2A PUNTOS EQU 0X2A RUEDA EQU 0X1E DIAGONAL EQU 0X17 ESTRELLA EQU 0X0D CIRCULO EQU 0X04 ;************************************************************************************** STORW EQU 0X22 ; REGISTRO DONDE SE GUARDARA "W" EN CADA INTERRUPCION STRST EQU 0X23 ; REGISTRO DONDE SE GUARDARA "STATUS" EN CADA INTERRUPCION DATO EQU 0X24 REG1 EQU 0X25 REG2 EQU 0X26 REG3 EQU 0X27 REG4 EQU 0X28 REG5 EQU 0X29 REG6 EQU 0X2A AUX EQU 0X2B ESPEJOX EQU 0X2C ESPEJOY EQU 0X2D COLORES EQU 0X30 FIGURA EQU 0X31 RECIBIDO EQU 0X32 PERMISO EQU 0X33 AUX2 EQU 0X34 #DEFINE RXtris TRISC, 7 #DEFINE TXtris TRISC, 6 V1_20ms EQU D'100' ; valor de loop interno V2_20ms EQU D'40' RLn20ms EQU 0x2E ; dirección de RAM donde se guarda variable temporal RSh20ms EQU 0x2F ;==================================================================== 42

MICROCONTROLADORES PIC USART

MICROCONTROLADORES PIC USART USART Universal Synchronous Asynchronous Receiver Transmitter Síncrona o asíncrona Recibe y transmite Operación full duplex asíncrona Aplicación típica: comunicación con un PC mediante el protocolo RS232,

Más detalles

2.5-1 USART Introducción.

2.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 detalles

INTRODUCCION A LA CONFIGURACION DEL CONVERSOR ANALOGICO DEL PIC16F876A

INTRODUCCION A LA CONFIGURACION DEL CONVERSOR ANALOGICO DEL PIC16F876A Rev. 24/09/2018 : Se realizó algunas correcciones. INTRODUCCION A LA CONFIGURACION DEL CONVERSOR ANALOGICO DEL PIC16F876A La teoría que se presenta es válida para los micro controladores de la empresa

Más detalles

Apéndice B Programa para calcular inclinación con PIC 16F877A

Apéndice B Programa para calcular inclinación con PIC 16F877A Apéndice B Programa para calcular inclinación con PIC 16F877A list p=16f877a ; list directive to define processor #include ; processor specific variable definitions ;***** DEFINICIÓN DE

Más detalles

DESCRIPCION DETALLADA DEL PUERTO USART PIC 169F877A

DESCRIPCION DETALLADA DEL PUERTO USART PIC 169F877A DESCRIPCION DETALLADA DEL PUERTO USART PIC 169F877A Introducción La USART (Universal Synchronous Asynchronous Receiver Transmitter) es uno de los dos periféricos contenidos en el PIC que le permiten realizar

Más detalles

CODIGO EN ASSEMBLER TRANSMISOR. list p=16f876 ;selecion de pic

CODIGO EN ASSEMBLER TRANSMISOR. list p=16f876 ;selecion de pic TRANSMISOR CODIGO EN ASSEMBLER list p=16f876 ;selecion de pic radix hex ; codigo hex indf equ 0h ;direcionamiento indirecto tmro equ 1h ;contador de tiempo real pc equ 2h ;contador del programa status

Más detalles

INTRODUCCIÓN. Comunicación Serial.

INTRODUCCIÓ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 detalles

PRÁCTICA 6: Gobierno del display 7 segmentos

PRÁCTICA 6: Gobierno del display 7 segmentos SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 6: Gobierno del display 7 segmentos Display 7 segmentos - 1 - Ingeniería de Sistemas y Automática 1. Objetivos: Gobierno

Más detalles

CAPÍTULO 3 INTERFAZ AL PROTOTIPO

CAPÍTULO 3 INTERFAZ AL PROTOTIPO CAPÍTULO 3 INTERFAZ AL PROTOTIPO 3.1 Comunicación Asíncrona al Computador Se decició usar el microcontrolador PIC 16F877 de "Microchip" por sus características de funcionamiento, como la utilidad de señales

Más detalles

;<<<<<< VECTOR DE INTERRUPCION >>>>>>>

;<<<<<< VECTOR DE INTERRUPCION >>>>>>> Apéndice B Programa en Ensamblador para el PIC 16F877 de Microchip Corp. ;***********************************UDLAP************************** ; PROGRAMA : com232.asm ; Función : Establece la rutina de los

Más detalles

;******************************************************************************* *******************

;******************************************************************************* ******************* ;******************************************************************************* ******************* ; ; ; Programa para Control y Monitoreo de un Secador de Alimentos ; ; Ultima Modificacion 28 de Noviembre

Más detalles

CODIGO EN ASSEMBLER ;************************************************************************

CODIGO EN ASSEMBLER ;************************************************************************ RECEPTOR CODIGO EN ASSEMBLER ;************************************************************************ list p=16f84a ;selecion de pic radix hex ; codigo hex pc equ 02h status equ 03h portb equ 06h PORTA

Más detalles

Estructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez

Estructura 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 detalles

PIC 16F87X. Juan González. Escuela Politécnica Superior Universidad Autónoma de Madrid. Flir Networked Systems. Flir Networked Systems

PIC 16F87X. Juan González. Escuela Politécnica Superior Universidad Autónoma de Madrid. Flir Networked Systems. Flir Networked Systems PIC 16F87X Juan González Andrés Prieto-Moreno Ricardo Gómez Escuela Politécnica Superior Universidad Autónoma de Madrid Flir Networked Systems Flir Networked Systems Curso de microcontroladores PIC. Semana

Más detalles

Conversores Análogo-Digital

Conversores Análogo-Digital Conversores Análogo-Digital mc PIC Preparado por : jhuircan Depto. Ingeniería Eléctrica Universidad de La Frontera Proceso de Conversión Código Correspondiente a la muestra j S(t) S(k) 0010..0011 ADC t

Más detalles

PIC16F882/883/884/886/887

PIC16F882/883/884/886/887 12.0 Transmisor Receptor Síncrono Asíncrono Universal Mejorado. EUSART. El módulo Transmisor Receptor Síncrono Asíncrono Mejorado, en adelante, EUSART, es un periférico de comunicación serie de entrada/salida.

Más detalles

Microprocesadores, Tema 8:

Microprocesadores, Tema 8: Microprocesadores, Tema 8: Comunicaciones asíncronas con USART del PIC Guillermo Carpintero del Barrio Marta Ruiz Llata Alejandro Quesada Pareja Universidad Carlos III de Madrid Standard de Comunicación

Más detalles

Práctica 5. Comunicación serie y entradas analógicas

Práctica 5. Comunicación serie y entradas analógicas Práctica 5 Comunicación serie y entradas analógicas Práctica 5 Comunicación serie y entradas analógicas. Objetivos El objetivo de esta sesión es que el alumno aprenda a programar la EUART interna del PIC,

Más detalles

MICROCONTROLADOR PIC DE MICROCHIP

MICROCONTROLADOR PIC DE MICROCHIP MICROCONTROLADOR PIC DE MICROCHIP PIC16F877-28-PIN 8-BIT CMOS FLASH MICROCONTROLLER PIC16F877: ESTRUCTURA INTERNA Bus de Datos Bus de Datos (programa) Registro de trabajo (acumulador) Conversor A/D Contador/Temporizador

Más detalles

P R Á C T I C A 7 SENSADO DE TEMPERATURA CON INTERFAZ PIC - PC O B J E T I V O I N T R O D U C C I O N

P R Á C T I C A 7 SENSADO DE TEMPERATURA CON INTERFAZ PIC - PC O B J E T I V O I N T R O D U C C I O N P R Á C T I C A 7 SENSADO DE TEMPERATURA CON INTERFAZ PIC - PC O B J E T I V O Teniendo como base las dos prácticas anteriores, realizar un programa que permita acceder la lectura de la temperatura en

Más detalles

3 Interfaz PC DSP. 3.1 Introducción a las comunicaciones serie. 3 Interfaz PC DSP

3 Interfaz PC DSP. 3.1 Introducción a las comunicaciones serie. 3 Interfaz PC DSP 3 Interfaz PC DSP 3.1 Introducción a las comunicaciones serie Las comunicaciones serie se utilizan para enviar datos a través de largas distancias, ya que las comunicaciones en paralelo exigen demasiado

Más detalles

Tema: Utilización del módulo CCP (PWM) en los microcontroladores PIC.

Tema: Utilización del módulo CCP (PWM) en los microcontroladores PIC. 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Microcontroladores Lugar de ejecución: Laboratorio de microprocesadores, Edif. 3 Electrónica. Tema: Utilización del módulo CCP (PWM) en los microcontroladores

Más detalles

Practica de PIC 16F84

Practica de PIC 16F84 Practica de PIC 16F84 Los PIC son circuitos que pueden controlar dispositivos y diferentes sistemas, son como los PLC (controles lógico programable), además debo decir que es un circuito que tiene todas

Más detalles

Figura 2. Formato de un dato serie síncrono.

Figura 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 detalles

Assembler para PICs. Permite la utilización de etiquetas, tanto para apuntar a direcciones como para definir valores constantes.

Assembler para PICs. Permite la utilización de etiquetas, tanto para apuntar a direcciones como para definir valores constantes. Características generales del lenguaje: Emplea los mnemotécnicos de las instrucciones del μc. En nuestro caso corresponderá al set de instrucciones de los PICs de la gama media (35 instrucciones). Permite

Más detalles

Tipos de Modulación. PCM Convencional

Tipos de Modulación. PCM Convencional Tipos de Modulación PCM Convencional Con PCM convencional, cada código es una representación binaria de signo y magnitud de una muestra en particular. Por lo tanto, los códigos de bit múltiple se requieren

Más detalles

Programa del PIC 16F877A

Programa del PIC 16F877A APÉNDICE B Programa del PIC 16F877A ;* "CONTROL AUTOMÁTICO DE VELOCIDAD VEHICULAR". * ;* EL PRESENTE PROGRAMA TIENE COMO FINALIDAD CONTROLAR LA VELOCIDAD DEL * ;* VEHÍCULO, DEPENDIENDO DE LA SEÑAL RECIBIDA

Más detalles

Tema: Utilización del módulo ADC en los microcontroladores PIC.

Tema: Utilización del módulo ADC en los microcontroladores PIC. 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Microcontroladores Lugar de ejecución: Laboratorio de microprocesadores, Edif. 3 Electrónica. Tema: Utilización del módulo ADC en los microcontroladores

Más detalles

TEMA 20 EL CONVERSOR A/D

TEMA 20 EL CONVERSOR A/D TEMA 20 EL CONVERSOR A/D Introducción Al Conversor Analógico/Digital Los microcontroladores PIC de la familia 16F78x, poseen un conversor A/D de 10 bits de resolución, y con 5 entradas para los dispositivos

Más detalles

Carrera: Técnico Superior en Técnicas Digitales. Alumnos: Emiliano Teseo y José Luis Fernández

Carrera: Técnico Superior en Técnicas Digitales. Alumnos: Emiliano Teseo y José Luis Fernández Carrera: Técnico Superior en Técnicas Digitales Instituto: CENT 57 Trabajo final Año 2005 Alumnos: Emiliano Teseo y José Luis Fernández 1 ILUMINACION PARA VIDRIERAS Descripción general (Guía para el usuario)

Más detalles

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata Muestreo de señales analógicas Principal requerimiento que surge al muestrear una señal continua: Definir el periodo de muestreo con suficiente exactitud. Ajustar el mismo a un valor adecuado de acuerdo

Más detalles

CAPITULO V. Implementación del Sistema de Transmisión y Recepción.

CAPITULO V. Implementación del Sistema de Transmisión y Recepción. CAPITULO V Implementación del Sistema de Transmisión y Recepción. Para que el operador tenga control constante del móvil debe haber una comunicación constante entre este y una terminal, en este caso una

Más detalles

El siguiente paso después del diseño y la construcción del secador de alimentos es

El siguiente paso después del diseño y la construcción del secador de alimentos es El siguiente paso después del diseño y la construcción del secador de alimentos es comenzar con el diseño electrónico. Una tarjeta de adquisición de datos y un circuito de control son necesarios para automatizar

Más detalles

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata Ejercicio: construir un datalogger El datalogger o registrador debe sensar la temperatura ambiente cada 1s y guardarla junto a la fecha y hora de adquisición en un archivo.txt alojado en una memoria µsd.

Más detalles

Apéndice A. Programas y Diagramas de Bloques para los Microprocesadores

Apéndice A. Programas y Diagramas de Bloques para los Microprocesadores Apéndice A Programas y Diagramas de Bloques para los Microprocesadores 120 Microprocesador PIC16F84A (Transmisor): Figura A.1 Diagrama de bloques del PIC16F84A en transmisor ;***********************************Transmisor.asm********************************

Más detalles

COMUNICACIÓN INALAMBRICA MEDIANTE EL PIC16F84A

COMUNICACIÓN INALAMBRICA MEDIANTE EL PIC16F84A COMUNICACIÓN INALAMBRICA MEDIANTE EL PIC16F84A Existen muchos medios de comunicación entre diferentes dispositivos, aquí se explica la comunicación inalámbrica unidireccional mediante el PIC16F84A y una

Más detalles

Se recomienda consultar el siguiente enlace y el datasheet del PIC18F2550.

Se recomienda consultar el siguiente enlace y el datasheet del PIC18F2550. Se recomienda consultar el siguiente enlace y el datasheet del PIC18F2550. http://picfernalia.blogspot.com.es/2012/07/conversor-adc.html ADCON0: - ADON: Habilita el módulo convertidor A/D. - GO/DONE: Con

Más detalles

a AV DD,AV SS o AN3/V REF+,AN2/V REF- F OSC /2, F OSC /8, F OSC /32, F RC (derivado de un oscilador RC configurar su TRISx<n>=1, y leen el PORTx<n>=0

a AV DD,AV SS o AN3/V REF+,AN2/V REF- F OSC /2, F OSC /8, F OSC /32, F RC (derivado de un oscilador RC configurar su TRISx<n>=1, y leen el PORTx<n>=0 /REF+ CONERIDOR A/D Características: Convertidor A/D de aproximaciones sucesivas Entrada multiplexada ANx, incluye circuito &H res tipos de convertidores, según el dispositivo: Convertidor A/D básico de

Más detalles

O B J E T I V O I N T R O D U C C I O N M A R C O T E O R I C O

O B J E T I V O I N T R O D U C C I O N M A R C O T E O R I C O O B J E T I V O Realizar un contador decimal que se exhiba en un display de 7 segmentos, cada número deberá estar exhibido durante un segundo. I N T R O D U C C I O N En la mayoría de los sistemas electrónicos

Más detalles

Registros SFR vistos hasta ahora: Microcontroladores PIC

Registros SFR vistos hasta ahora: Microcontroladores PIC Registros SFR vistos hasta ahora: Microcontroladores PIC Microcontroladores PIC: Timer Características del Timer TMR0: Cumple básicamente la función de contador de eventos (o divisor de frecuencia). El

Más detalles

Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA

Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA ESTRUCTURA Y CONTENIDO: SESIONES DE CLASE CONTENIDOS PRACTICA PRIMERA (5 horas ) SEGUNDA (5 horas

Más detalles

PRÁCTICA 2: Programas básicos. Tipos de direccionamiento.

PRÁCTICA 2: Programas básicos. Tipos de direccionamiento. SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 2: Programas básicos. Tipos de direccionamiento. Tipos de direccionamiento Ejemplos y ejercicios - 1 - 1. Objetivos - Introducir

Más detalles

CURSO: MICROCONTROLADORES UNIDAD 4: COMUNICACIÓN SERIE- ARDUINO PROFESOR: JORGE ANTONIO POLANÍA

CURSO: MICROCONTROLADORES UNIDAD 4: COMUNICACIÓN SERIE- ARDUINO PROFESOR: JORGE ANTONIO POLANÍA CURSO: MICROCONTROLADORES UNIDAD 4: COMUNICACIÓN SERIE- ARDUINO PROFESOR: JORGE ANTONIO POLANÍA Un receptor asíncrono / transmisor universal (UART) es un bloque de circuitería responsable de implementar

Más detalles

V = 3,4567 V M:4,45V m:0,23v

V = 3,4567 V M:4,45V m:0,23v Práctica 10 Módulo de conversión A/D: voltímetro digital Fecha: 28 de Abril de 2005 Se pretende realizar un programa que se encargue de efectuar la medida continua de una tensión analógica comprendida

Más detalles

PIC16F88. Características

PIC16F88. Características Osciladores PIC16F88. Características Osciladores a cristal: LP, XT y HS hasta 20Mhz Oscilador externo hasta 20Mhz Oscilador interno: 31Khz 8Mhz Periféricos Módulo PWM/CCP CCP (captura/comparación) ->

Más detalles

Tema: Comunicación serie entre PIC y PC.

Tema: Comunicación serie entre PIC y PC. 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Microcontroladores Lugar de ejecución: Laboratorio de microprocesadores, Edif. 3 Electrónica. Tema: Comunicación serie entre PIC y PC. Objetivo general

Más detalles

SISTEMA MÍNIMO BASADO EN EL PIC16F84

SISTEMA MÍNIMO BASADO EN EL PIC16F84 PRÁCTICA 0 CIRCUITO BASE SISTEMA MÍNIMO BASADO EN EL PIC16F84 1 PRÁCTICA 1_1 COMPUERTA AND DE TRES ENTRADAS Hardware X0 X1 X2 Y 2 Comportamiento esperado INICIO Configurar Puerto A como entradas y Puerto

Más detalles

Comunicación Serial: Conceptos Generales

Comunicación Serial: Conceptos Generales Comunicación Serial: Conceptos Generales Conceptos Generales Qué es la comunicación serial? Qué es RS-232? Qué es RS-422? Qué es RS-485? Qué es handshaking (o intercambio de pulsos de sincronización)?

Más detalles

Termostato electrónico con PIC y LCD

Termostato electrónico con PIC y LCD COMETARIO TECNICO Termostato electrónico con PIC y LCD Por el Departamento de Ingeniería de Electrónica Elemon S.A. 1N4148 El circuito centra su funcionamiento en el micro controlador PIC16F870 el cual

Más detalles

DESCRIPCIÓN DE LAS INSTRUCCIONES

DESCRIPCIÓN DE LAS INSTRUCCIONES Todas las instrucciones del PIC cumplen las siguientes condiciones: Las instrucciones son simples y rápidas. Todas tienen un tiempo de ejecución de un ciclo de instrucción (cuatro ciclos de reloj) a excepción

Más detalles

banda, mayor es la distorsión, y mayor es la probabilidad de que se cometan errores en el receptor.

banda, mayor es la distorsión, y mayor es la probabilidad de que se cometan errores en el receptor. banda, mayor es la distorsión, y mayor es la probabilidad de que se cometan errores en el receptor. Figura 1.10 Componentes en frecuencia de una onda cuadrada (T = 1/f). En la figura 1.11 se muestra una

Más detalles

PROFESOR: Práctica 9. Convertidor Analógico-Digital

PROFESOR: Práctica 9. Convertidor Analógico-Digital INSTITUTO POLITÉCNICO NACIONAL Centro de Estudios Científicos y Tecnológicos Nº 1 Gonzalo Vázquez Vela Academia de Sistemas Digitales Prácticas de Micro Electrónica Programable NOMBRE DEL ALUMNO: Apellido

Más detalles

RECURSOS FUNDAMENTALES

RECURSOS FUNDAMENTALES RECURSOS FUNDAMENTALES Los recursos que se considerarán son : Temporizadores Puertos de E/S La Palabra de Configuración EEPROM de datos 1 TEMPORIZADORES Una labor habitual en los programas de control suele

Más detalles

UART. Diseño de Sistemas con FPGA 1er cuatrimestre 2013 Patricia Borensztejn

UART. Diseño de Sistemas con FPGA 1er cuatrimestre 2013 Patricia Borensztejn UART Diseño de Sistemas con FPGA 1er cuatrimestre 2013 Patricia Borensztejn UART Universal Asynchronous receiver and transmitter: dispositivo (controlador ) que envía datos paralelos sobre una línea serie.

Más detalles

Diagrama a bloques 2

Diagrama a bloques 2 Arquitectura 1 Diagrama a bloques 2 Diagrama a bloques 3 Diagrama a bloques 4 Diagrama a bloques 5 Unidad aritmética-lógica La unidad Aritmética Lógica se encarga de realizar las operaciones Suma, Resta,

Más detalles

TUTORIAL II parte A. Observemos el diagrama de pines del microcontrolador 16F877A:

TUTORIAL II parte A. Observemos el diagrama de pines del microcontrolador 16F877A: 1 TUTORIAL II parte A OBJETIVOS Conocer el manejo de puertos del microcontrolador 16F877A, registros TRIS y PORT. Familiarizarse con las principales instrucciones del lenguaje y la estructura de un programa

Más detalles

ASÍ FUNCIONA LA CONVERSIÓN ANALÓGICO- DIGITAL DIGITALIZACIÓN DE LA SEÑAL ANALÓGICA

ASÍ FUNCIONA LA CONVERSIÓN ANALÓGICO- DIGITAL DIGITALIZACIÓN DE LA SEÑAL ANALÓGICA ASÍ FUNCIONA LA CONVERSIÓN ANALÓGICO- DIGITAL DIGITALIZACIÓN DE LA SEÑAL ANALÓGICA En una señal eléctrica analógica, los valores de tensión positivos y negativos pueden mantenerse con un valor constante,

Más detalles

EL módulo conversor A/D. (c) Domingo Llorente

EL módulo conversor A/D. (c) Domingo Llorente EL módulo conversor A/D (c) Domingo Llorente 2010 1 Características del conversor A/D Ocho entradas de señal analógica. (5 para el 16F876x) Resolución de la conversión de 10 bits. (0-1024) Distintas fuentes

Más detalles

Sensores inalámbricos de bajo

Sensores inalámbricos de bajo Sensores inalámbricos de bajo consumo. Parte 1. El sistema de telemetría con microcontroladores PIC Autor: Marc Ralita Álvarez Director proyecto: Francesc Sánchez Robert Sensores inalámbricos de bajo consumo

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso 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 detalles

El circuito integrado ADC1230, fabricado

El circuito integrado ADC1230, fabricado ADC12130 Conversor A/D serial de 12 bits GUILLERMO RAMOS RAMOS gramos@telesat.com.co Los conversores A/D seriales se caracterizan por su tamaño reducido y bajo costo. El circuito integrado que describimos

Más detalles

Tipos de Filtros Introducción

Tipos de Filtros Introducción Tipos de Filtros Introducción Tanto en los circuitos eléctricos como los sistemas de comunicaciones, se desea manejar información la cual debe estar dentro de ciertas frecuencias. Pero, ciertos grupos

Más detalles

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata Ing. Guillermo Murcia Ing. Jorge Luis Strack gjmurcia@fi.mdp.edu.ar jlstrack@fi.mdp.edu.ar Lecto-grabadora de SDcard - Se comunica con Arduino a través del protocolo de comunicación SPI. - Se comanda a

Más detalles

UNIVERSIDAD DE OVIEDO

UNIVERSIDAD DE OVIEDO UNIVERSI E OVIEO 1 Características generales en el PIC16F877 Ocho canales de conversión. Cinco pines E/S de PORT y los tres de PORTE. Convierte la señal analógica en un número digital de 10 bits. Tensión

Más detalles

TUTORIAL Comunicación Serial

TUTORIAL Comunicación Serial 1 TUTORIAL Comunicación Serial OBJETIVOS Manejar el módulo USART para comunicaciones seriales asíncronas. Realizar transmisiones y recepciones seriales útiles para el control y monitoreo de eventos. INTRODUCCIÓN:

Más detalles

Tema: Comunicación en Serie. Interfaz RS-232.

Tema: Comunicación en Serie. Interfaz RS-232. Redes de Comunicación Industrial. Guía 1 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Redes de Comunicación Industrial Lugar de ejecución: Instrumentación y Control (Edificio 3, 2da planta)

Más detalles

Microcontrolador PIC16F84: Arquitectura

Microcontrolador PIC16F84: Arquitectura Microcontrolador PIC16F84: Arquitectura La arquitectura del PIC es tipo Harvard: Mem. de Programa (instrucciones) (tipo FLASH) Control DIR DATOS µp (tipo RISC, pipeline de 2 etapas) Control DIR DATOS 14

Más detalles

ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR

ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR ORGANIZACIÓN de la MEMORIA Dentro del PIC16F877 se distinguen tres bloques de memoria. Memoria de programa En sus 8192 posiciones (8K) contiene el programa

Más detalles

Módulos CCP. Registro de captura Registro de comparación Registro de ciclo de servicio PWM

Módulos CCP. Registro de captura Registro de comparación Registro de ciclo de servicio PWM Módulos CCP Los PIC16F87X disponen de 2 módulos CCP (Capture/Compare/PWM): CCP1 y CCP2. Cada módulo CCP cuenta con un registro de 16 bits (CCPR1 y CCPR2) que puede operar como un Registro de captura Registro

Más detalles

CONVERTIDORES A/D Y D/A

CONVERTIDORES A/D Y D/A Memoria CONVERTIDORES A/D Y D/A Convertidores Introducción Las señales analógicas varían constantemente cuando tenemos que manejar señales de audio, temperatura, tensión o corriente Las señales analógicas

Más detalles

FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA LABORATORIO DE TEORÍA DE COMUNICACIONES PRÁCTICA N 5 COMUNICACIÓN SERIAL ENTRE DOS PCS

FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA LABORATORIO DE TEORÍA DE COMUNICACIONES PRÁCTICA N 5 COMUNICACIÓN SERIAL ENTRE DOS PCS FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA Carrera de Ingeniería Electrónica y Redes de Información LABORATORIO DE TEORÍA DE COMUNICACIONES 1. TEMA PRÁCTICA N 5 COMUNICACIÓN SERIAL ENTRE DOS PCS 2.

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA DIVISIÓN DE INGENIERÍA ELÉCTRICA DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA DIVISIÓN DE INGENIERÍA ELÉCTRICA DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA DIVISIÓN DE INGENIERÍA ELÉCTRICA DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN PRACTICAS LABORATORIO DE MICROCOMPUTADORAS Basadas en el Microcontrolador

Más detalles

PROFESOR: Práctica 10. Manejo de Tabla de datos con Microcontrolador PIC

PROFESOR: Práctica 10. Manejo de Tabla de datos con Microcontrolador PIC INSTITUTO POLITÉCNICO NACIONAL Centro de Estudios Científicos y Tecnológicos Nº 1 Gonzalo Vázquez Vela Academia de Sistemas Digitales Prácticas de Arquitectura de Microprocesadores y Microcontroladores

Más detalles

RMS1-RM Manual del usuario

RMS1-RM Manual del usuario R4 www.exemys.com 1 Los Productos están en permanente evolución para satisfacer las necesidades de nuestros clientes. Por esta razón, las especificaciones y capacidades están sujetas a cambios sin previo

Más detalles

CONVERSORES (ADC Y DAC) MICROPROCESADORES II

CONVERSORES (ADC Y DAC) MICROPROCESADORES II CONVERSORES (ADC Y DAC) MICROPROCESADORES II 1 Introducción Conversor A/D Conceptos Básicos Conversor D/A FEB-JUN 2009 MICROPROCESADORES II 1 El control de procesos con una computadora digital es cada

Más detalles

ÍNDICE INTRODUCCIÓN...17

ÍNDICE INTRODUCCIÓN...17 ÍNDICE INTRODUCCIÓN...17 CAPÍTULO 1. MICROCONTROLADORES...19 1.1 MICROCONTROLADOR...19 1.1.1 Controlador y microcontrolador...19 1.1.2 Diferencia entre microprocesador y microcontrolador...21 1.1.3 Aplicaciones

Más detalles

El Sistema de Control

El Sistema de Control CAPÍTULO 3 El Sistema de Control 3.1 INTRODUCCIÓN. El presente capítulo abarca el sistema de control implementado durante el proyecto. En él, podrá encontrarse una breve explicación referente al funcionamiento,

Más detalles

Bucles: o Bucles infinitos o Bucles finitos o Bucles anidados Medir tiempos con MPLAB Ejemplos y ejercicios

Bucles: o Bucles infinitos o Bucles finitos o Bucles anidados Medir tiempos con MPLAB Ejemplos y ejercicios SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 3: Bucles Bucles: o Bucles infinitos o Bucles finitos o Bucles anidados Medir tiempos con MPLAB Ejemplos y ejercicios -

Más detalles

INSTRUCCIONES DE ENSAMBLADOR

INSTRUCCIONES DE ENSAMBLADOR MPLAB INSTRUCCIONES DE ENSAMBLADOR ORGANIZACIÓN de la MEMORIA Dentro del PIC16F877 se distinguen tres bloques de memoria. Memoria de programa En sus 8192 posiciones (8K) contiene el programa con las instrucciones

Más detalles

Módulo Transceptor APC220-43

Módulo Transceptor APC220-43 Módulo Transceptor APC220-43 Características Hasta 800 mts de alcance (2400 bps) Potencia de salida de 20mW Rango de frecuencia entre 418Mhz y 455Mhz Más de 100 canales Modulación en GFSK Interfaz UART/TTL

Más detalles

Módulo de la Interfaz de Comunicación Serie

Módulo de la Interfaz de Comunicación Serie Módulo de la Interfaz de Comunicación Serie M.C. Jorge Eduardo Ibarra Esquer Interfaz de comunicación serie (SCI) Este módulo del HC08 permite realizar comunicación asíncrona de alta velocidad con diversos

Más detalles

Conversor A/D. Conversor Analógico a Digital

Conversor A/D. Conversor Analógico a Digital Conversor Analógico a Digital Analógico Analógico Controlador Sensor Nivel Valor Deseado V.D. Controlador Proceso Proceso V.D. Controlador Proceso Controlador Digital A/D Micro procesador D/A Conversor

Más detalles

DEPARTAMENTO DE CIENCIAS DE LA ENERGIA Y MECANICA Laboratorio de Automatización Industrial Mecánica. TEMA: Adquisición de datos

DEPARTAMENTO DE CIENCIAS DE LA ENERGIA Y MECANICA Laboratorio de Automatización Industrial Mecánica. TEMA: Adquisición de datos TEMA: Adquisición de datos Ejercicio: Recibir señales mediante el modulo NI USB 6009 Objetivo: Recibir señales analógicas y digitales mediante modulo NI USB 6009. Teoría: El modulo NI USB 6009, es un dispositivo

Más detalles

CAPÍTULO 3: DESCRIPCIÓN HARDWARE DEL

CAPÍTULO 3: DESCRIPCIÓN HARDWARE DEL CAPÍTULO 3: DESCRIPCIÓN HARDWARE DEL SISTEMA INFODINA. 1.- INTRODUCCIÓN. Como ya se ha mencionado anteriormente, el sistema InfoDina está constituido por dos módulos: una parte hardware, constituida por

Más detalles

Tema 10: Transmisión de datos

Tema 10: Transmisión de datos Tema 10: Transmisión de datos Solicitado: Tarea 08: Mapa conceptual: Transmisión de datos M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom

Más detalles

ANEXO 3 PROTOCOLO DE TELECOMUNICACIONES BEFA 15. El sistema Befa 15 como sistema de transmisión logra el enlace vía MODEM punto a punto.

ANEXO 3 PROTOCOLO DE TELECOMUNICACIONES BEFA 15. El sistema Befa 15 como sistema de transmisión logra el enlace vía MODEM punto a punto. ANEXO 3 PROTOCOLO DE TELECOMUNICACIONES BEFA 15 A3.1. Generalidades El sistema Befa 15 como sistema de transmisión logra el enlace vía MODEM punto a punto. El MODEM realiza las siguientes funciones: -

Más detalles

Transmisión de Datos Rubiel Leal Bernal Ing. De Sistemas Universidad de Nariño

Transmisión de Datos Rubiel Leal Bernal Ing. De Sistemas Universidad de Nariño Transmisión de Datos Rubiel Leal Bernal Ing. De Sistemas Universidad de Nariño Universidad de Nariño - Rubiel Leal B. 1 TRANSMISION DE DATOS El éxito de la transmisión de datos depende de 2 factores: Calidad

Más detalles

CONVERTIDOR ANÁLOGICO-DIGITAL (ADC)

CONVERTIDOR ANÁLOGICO-DIGITAL (ADC) Aplicar los conocimientos básicos de electrónica de manera teórica (lenguaje ANSI-C) y práctica (montaje de circuitos). Conocer las funciones que gobiernan las entradas y salidas del microcontrolador PIC18F47J53.

Más detalles

Manual de Usuario CTAD3E4S. Módulo de Control Entrada-Salida basado en microcontrolador y comunicación RS232

Manual de Usuario CTAD3E4S. Módulo de Control Entrada-Salida basado en microcontrolador y comunicación RS232 Manual de Usuario Módulo de Control Entrada-Salida basado en microcontrolador y comunicación RS232 LipSoft Electronics Controlador 3E/4S 1. INTRODUCCIÓN es un sistema electrónico diseñado como sistema

Más detalles

RMS1-RM Manual del usuario

RMS1-RM Manual del usuario R5 www.exemys.com 1 Los Productos están en permanente evolución para satisfacer las necesidades de nuestros clientes. Por esta razón, las especificaciones y capacidades están sujetas a cambios sin previo

Más detalles

MICROCONTROLADORES PIC

MICROCONTROLADORES PIC MICROCONTROLADORES PIC LOS TIMER DE LOS 16F87x TEMA EL TIMER 1 CCFF D.P.E. MÓDULO DE PROYECTOS 1 Diagrama de Bloques del TIMER1 CCFF D.P.E. MÓDULO DE PROYECTOS 2 INTRODUCCIÓN El módulo TIMER1 es un temporizador/contador

Más detalles

Introducción. Modo monitor. Cuaderno técnico 4: Grabación de microcontroladores PIC

Introducción. Modo monitor. Cuaderno técnico 4: Grabación de microcontroladores PIC Cuaderno técnico 4: Grabación de microcontroladores PIC [Introducción] [Modo monitor] [Arquitectura] [Autores] [Licencia] [Download] [Links] [Noticias] Introducción Los microcontroladores PIC se graban

Más detalles

Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica INFORMÁTICA ELECTRÓNICA

Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica INFORMÁTICA ELECTRÓNICA Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica INFORMÁTICA ELECTRÓNICA Escuela de Ingeniería Electrónica Departamento de Sistemas

Más detalles

SISTEMAS ELECTRÓNICOS DIGITALES

SISTEMAS ELECTRÓNICOS DIGITALES SISTEMAS ELECTRÓNICOS DIGITALES PRÁCTICA 6 SISTEMA DE ENCRIPTACIÓN 1. Objetivos - Estudio del funcionamiento de memorias RAM y CAM. - Estudio de métodos de encriptación y compresión de datos. 2. Enunciado

Más detalles

Conceptos básicos de comunicación de datos

Conceptos básicos de comunicación de datos Conceptos básicos de comunicación de datos Comunicación de Datos Es el proceso de comunicar información en forma binaria entre dos o más puntos. Requiere cuatro elementos básicos que son: Emisor: Dispositivo

Más detalles

Tema 09: Convertidor Analógico Digital

Tema 09: Convertidor Analógico Digital Tema 09: Convertidor Analógico Digital M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom 1 Contenido Convertidor A/D Funcionamiento básico

Más detalles

Transmisión de Imágenes a través del Protocolo SSTV

Transmisión de Imágenes a través del Protocolo SSTV Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ingeniería Mecánica Eléctrica Laboratorio de Electrónica Proyecto de Comunicaciones 1 Segundo Semestre 2017 Transmisión de Imágenes

Más detalles

MÓDULO COMPARADOR Y REFERENCIA DE TENSIÓN PARA LA COMPARACIÓN

MÓDULO COMPARADOR Y REFERENCIA DE TENSIÓN PARA LA COMPARACIÓN MÓDULO COMPARADOR Y REFERENCIA DE TENSIÓN PARA LA COMPARACIÓN - + Fernando Nuño García 1 Estos dos módulos existen en la versión de los PIC16F87xA pero NO en la versión PIC16F87x PIC16F877 PIC16F877A 2

Más detalles