Si tiene alguna pregunta, comentario o propuesta de negocio, póngase en contacto con nosotros en [email protected] Si tiene problemas con cualquiera de nuestros productos o sólo necesita información adicional, deje un ticket en www.mikroe.com/en/support Si quiere saber más de nuestros productos, por favor visite nuestra página web www.mikroe.com Todos los sistemas de desarrollo de MikroElektronika son unas herramientas insustituibles para la programación y el desarrollo de los dispositivos basados en microcontroladores. Los componentes elegidos con atención debida y el uso de las máquinas de la última generación para montarlos y probarlos son la mejor garantía de alta fiabilidad de nuestros dispositivos. Gracias a un diseño simple, gran número de los módulos complementarios y ejemplos listos para ser utilizados todos nuestros usuarios, sin reparar en su experiencia, tienen la posibilidad de desarrollar sus proyectos en una manera fácil y eficiente. Manual de usuario Sistema de desarrollo EasyAVR6 ™ TÉRMINOS Y CONDICIONES ESTIMADOS CLIENTES, Querría darles las gracias por estar interesados en nuestros productos y por tener confianza en Mikroelektronika. Nuestro objetivo es proporcionarles con los productos de la mejor calidad. Además, seguimos mejorando nuestros rendimientos para responder a sus necesidades. Nebojsa Matic Director general Todos los productos de Mikroelektronika son protegidos por la ley y por los tratados internacionales de derechos de autor. Este manual es protegido por los tratados de derechos de autor, también. Es prohibido copiar este manual, en parte o en conjunto sin la autorización previa por escrito de MikroElektronika. Se permite imprimir este manual en el formato PDF para el uso privado. La distribución y la modificación de su contenido son prohibidas. Mikroelektronika proporciona este manual “como está” sin garantías de ninguna especie, sean expresas o implícitas, incluyendo las garantías o condiciones implícitas de comerciabilidad y aptitud para fines específicos. Aunque Mikroelektronika ha puesto el máximo empeño en asegurar la exactitud de la información incluida en este manual, no asume la responsabilidad de ninguna especie de daños derivados del acceso a la información o de los programas y productos presentados en este manual (incluyendo daños por la pérdida de los beneficios empresariales, información comercial, interrupción de negocio o cualquier otra pérdida pecuniaria).Las informaciones contenidas en este manual son para el uso interno. Pueden ser modificadas en cualquier momento y sin aviso previo. ACTIVIDADES DE ALTO RIESGO Los productos de Mikroelektronika no son tolerantes a fallos y no están diseñados, fabricados o pensados para su uso o reventa como equipo de control en línea en entornos peligrosos que requieran un funcionamiento sin fallos, como en instalaciones nucleares, en la navegación aérea o en sistemas de comunicaciones, de tráfico aéreo, máquinas de auxilio vital o sistemas de armamento, en los que un fallo del software podría conducir directamente a la muerte, lesiones corporales o daños físicos o medioambientales graves (“Actividades de alto riesgo”). MikroElektronika y sus proveedores niegan específicamente cualquier garantía expresa o implícita de aptitud para Actividades de alto riesgo. MARCAS REGISTRADAS El nombre y logotipo de Mikroelektronika, el logotipo de Mikroelektronika, mikroC, mikroC PRO, mikroBasic, mikroBasic PRO, mikroPascal, mikroPascal PRO, AVRflash, PICflash, dsPICprog, 18FJprog, PSOCprog, AVRprog, 8051prog, ARMflash, EasyPIC5, EasyPIC6, BigPIC5, BigPIC6, dsPIC PRO4, Easy8051B, EasyARM, EasyAVR5, EasyAVR6, BigAVR2, EasydsPIC4A, EasyPSoC4, EasyVR Stamp LV18FJ, LV2433A, LV32MX, PIC32MX4 MultiMedia Board, PICPLC16, PICPLC8 PICPLC4, SmartGSM/GPRS, UNI-DS son maracas comerciales de Mikroelektronika. Todas las demás marcas aquí mencionadas son propiedad de sus respectivas compañías. Todos los demás productos y nombres corporativos utilizados en este manual pueden ser marcas comerciales registradas, son propiedad de sus respectivas compañías y se utilizan para fines de redacción, en beneficio de sus propietarios sin intención de infringir sus derechos. El nombre y el logo de Atmel, el logo de Atmel, AVR, AVR (logo), AVR Freaks, AVR Freaks (logo), AVR Studio, IDIC, megaAVR, megaAVR (logo), picoPower ® y tinyAVR ® son marcas comerciales de Atmel Coorporation. ©MikroelektronikaTM, 2010, Todos los derechos reservados. 3 página Sistema de desarrollo EasyAVR6 TABLA DE CONTENIDO Introducción a la placa de desarrollo EasyAVR6 .............................................................................. 4 Prestaciones principales .................................................................................................................. 5 1.0. Conexión del sistema al PC ...................................................................................................... 6 2.0. Microcontroladores soportados .................................................................................................. 7 3.0. Programador USB 2.0 AVRprog en la placa .............................................................................. 8 4.0. Programador externo AVRISP mkII........................................................................................... 9 5.0 Conector JTAG .......................................................................................................................... 10 6.0 Oscilador de reloj....................................................................................................................... 10 7.0. Alimentación............................................................................................................................... 11 8.0. Interfaz de comunicación RS-232.............................................................................................. 12 9.0. Módulo USB UART..................................................................................................................... 13 10.0. Sensor de temperatura DS1820 .............................................................................................. 14 11.0. Entradas de prueba del conversor A/D.................................................................................... 15 12.0. Diodos LED.............................................................................................................................. 16 13.0. Botones de presión................................................................................................................. 17 14.0. Teclados.................................................................................................................................. 18 15.0. Visualizador LCD alfanumérico 2x16 ...................................................................................... 19 16.0. Visualizador LCD 2x16 incorporado con comunicación serial................................................. 20 17.0. Visualizador LCD gráfico 128x64............................................................................................. 21 18.0. Panel táctil............................................................................................................................... 22 19.0. Puertos de E/S........................................................................................................................ 23 20.0. Extensor de puertos (Puertos de E/S adicionales).................................................................. 25 MikroElektronika página 4 Sistema de desarrollo EasyAVR6 Introducción a la placa de desarrollo EasyAVR6 El sistema de desarrollo EasyAVR6™ es una herramienta de desarrollo extraordinaria, adecuada para la programación y la experimentación con los microcontroladores AVR® de la compañía Atmel®. Este sistema dispone de un programador incorporado que proporciona una interfaz entre el microcontrolador y el PC. Se espera de usted que escriba un código en alguno de nuestros compiladores, que genere un fichero .hex y que programe el microcontrolador utilizando el programador AVRprog™. Los numerosos módulos incorporados como visualizador gráfico LCD de 128x64 píxeles, visualizador LCD alfanumérico de 2x16 caracteres, visualizador LCD integrado en la placa de 2x16 caracteres con comunicación serial, teclado 4x4, extensor de puertos etc, le permiten simular con facilidad el funcionamiento del dispositivo destino. Placa de desarrollo para los microcontroladores AVR con DEVELOPMENT todas las prestaciones y de BOARD uso amigable. AVR Programador de alto rendimiento con comunicación USB 2.0 integrado en la placa. Extensor de puertos incorporado proporciona una fácil expansión E/S (2 puertos adicionales) utilizando conversión de formato de datos. Visualizador alfanumerico LCD integrado en la placa de 2x16 caracteres con comunicación serial Visualizador LCD gráfico con retroiluminación ™ El programa AVRflash™ proporciona una lista completa de todos los microcontroladores soportados. La última versión de este programa con la lista actualizada de los microcontroladores soportados se puede descargar desde nuestra página web: www.mikroe.com El paquete contiene: Placa de desarrollo : CD: Cables: Documentación: EasyAVR6 CD del producto con el software apropiado cable USB manueles EasyAVR6 y AVRflash, guía rápida Instalación de los controladores USB y Esquema eléctrico del sistema Especificación del sistema: Alimentación: por el conector DC (7 -23V AC o 9-32V DC) o por el cable USB (5V DC) Consumo de corriente: 50mA en estado inactivo (los módulos incorporados están inactivos) Dimensiones: 26,5 x 22cm (10,4 x 8,6 pulgadas) Peso: ~417g (0.92lbs) MikroElektronika 5 1 2 4 3 5 6 7 8 página Sistema de desarrollo EasyAVR6 9 10 29 11 28 12 27 13 26 14 25 24 23 22 21 20 19 Prestaciones principales 1. 2. 3. 4. 5 6. 7. 8. 9. Regulador de voltaje de alimentación Conector USB del programador integrado en la placa Programador USB 2.0 integrado en la placa AVRprog Conector del programador externo AVRISP® Conector de interfaz JTAG® Entradas de prueba del conversor A/D Módulo USB UART Visualizador LCD integrado en la placa de 2x16 caracteres Interruptores DIP que permiten el funcionamiento de las resistencias pull-up/pull-down 10. Selección del modo pull-up/pull-down 11. Conectores de los puertos de E/S 12. Zócalos para inserción de microcontroladores AVR 13. Controlador del panel táctil 14. Extensor de puertos 18 17 16 15 15. Potenciómetro de contraste del visualizador gráfico LCD de 128x64 caracteres 16. Conector del visualizador gráfico LCD de 128x64 caracteres 17. Oscilador de reloj 18. Conector de panel táctil 19. Teclado MENU 20. Teclado 4x4 21. Botones de presión para simular las entradas digitales 22 Selector del estado lógico 23. Puente para poner en cortocircuito la resistencia protectora 24. Botón para reiniciar el microcontrolador 25. 35 diodos LED para indicar el estado lógico de los pines 26. Zócalo para el sensor de temperatura DS1820 27 Ajuste de contraste del visualizador LCD alfanumérico 28. Conector del visualizador LCD alfanumérico 29. Conector para comunicación RS-232 MikroElektronika página 6 Sistema de desarrollo EasyAVR6 1.0.Conexión del sistema al PC Paso 1: Siga las instrucciones para instalación de los controladores USB y del programador AVRflash proporcionadas en los manuales relevantes. No es posible programar los microcontroladores sin haber instalado estos dispositivos anterirormente. En caso de que Ud. ya tenga algún compilador de Mikroelektronika instalado en el PC, no es necesario reinstalar el programador AVRflash ya que se instala automáticamente junto con el compilador. Paso 2: La conexión del sistema EasyAVR6 al PC se realiza por medio del cable USB. Una punta del cable USB proporcionado con un conector de tipo USB B se conecta al sistema de desarrollo como se muestra en la Figura 1-2. La otra punta del cable (de tipo USB A) se conecta al PC. Al establecer la conexión, asegúrese de que el puente J6 esté colocado en la posición USB como se muestra en la Figura 1-1. Conector AC/DC Conector USB 1 selector de la fuente de alimentación J6 2 Figura 1-2: Conexión del cable USB (puente J6 en la posición USB) Interruptor POWER SUPPLY Figura 1-1: Alimentación Paso 3: Encienda el sistema de desarrollo al poner el interruptor de alimentación en la posición ON. Se encenderán dos diodos LED etiquetados como “POWER” y “USB LINK” para indicar que el sistema de desarrollo está listo para su uso. Utilice el programador incorporado AVRprog y el programa AVRflash para cargar el código en el microcontrolador. Después de hacerlo, utilice la placa para probar y desarrollar sus proyectos. NOTA: Si utiliza algunos módulos adicionales, tales como LCD, GLCD, placas adicionales etc, es necesario colocarlos apropiadamente en el sistema de desarrollo antes de encenderlo. De lo contrario, pueden quedarse dañados permanentemente. Refiérase a la Figura 1-3 para colocar los módulos apropiadamente. Figura 1-3: Colocar los módulos adicionales en la placa MikroElektronika 7 página Sistema de desarrollo EasyAVR6 2.0. Microcontroladores soportados El sistema de desarrollo EasyAVR6 dispone de ocho zócalos separados para inserción de microcontroladores AVR en los encapsulados DIP40, DIP28, DIP20, DIP14 y DIP8. El sistema de desarrollo viene con el microcontrolador en el encapsulado DIP40. Hay dos zócalos para los microcontroladores AVR en los encapsulados DIP40, DIP20 y DIP8. El zócalo a utilizar depende únicamente de la disposición de los pines en el microcontrolador utilizado. Los puentes J10, J11 y J20 que están junto a los zócalos DIP28 y DIP8 se utilizan para seleccionar las funciones de los pines del microcontrolador: Puente Posición PB3 PB3 es un pin de E/S J10 CLK Una señal de reloj del oscilador incorporado se lleva al pin PB3. J11 VCC Pin está conectado a VCC PC7 PC7 es un pin de E/S CLK Una señal de reloj del oscilador incorporado se lleva al pin PB3. PB6 PB6 es un pin de E/S J20 Figura 2-1: Zócalos del microcontrolador Función Los microcontroladores AVR pueden utilizar el oscilador incorporado (interno) o el oscilador integrado en la placa (exterior) como una fuente de señal de reloj. El oscilador de reloj integrado en la placa genera las señales de reloj para la mayoría de los microcontroladores soportados. - Microcontroladores insertados en el zócalo DIP8A utilizan el oscilador interno para la generación de reloj y no están conectados al oscilador externo. - Microcontroladores insertados en el zócalo DIP8B pueden utilizar tanto el oscilador interno como el oscilador externo, lo que depende de la posición del puente J10. 1 3 4 Figura 2-2: Insertar el microcontrolador en el zócalo apropiado Antes de colocar el microcontrolador en el zócalo adecuado, asegúrese de que la fuente de alimentación esté apagada. En la Figura 2-2 se muestra cómo colocar correctamente un microcontrolador. La Figura 1 muestra el zócalo DIP 40 vacío. Coloque una punta del microcontrolador en el zócalo como se muestra en la Figura 2. Entonces ponga lentamente el microcontrolador más abajo hasta que los pines encajen en el zócalo, como se muestra en la Figura 3. Compruebe una vez más si todo está colocado correctamente y presione el microcontrolador lentamente hasta que encaje en el zócalo completamente, como se muestra en la Figura 4. NOTA: En la placa de desarrollo se puede colocar un sólo microcontrolador. MikroElektronika página 8 Sistema de desarrollo EasyAVR6 3.0. Programador USB 2.0 AVRprog en la placa El programador AVRprog es una herramienta utilizada para cargar el código hex en el microcontrolador. El sistema de desarrollo EasyAVR6 dispone del programador AVRprog en la placa que permite establecer una conexión entre el microcontrolador y el PC. La figura 3-2 muestra la conexión entre el compilador, el programa AVRflash y el microcontrolador. Conector USB del programador Puente J8 utilizado para seleccionar el programador (interno o externo) que va a ser utilizado para la programación del chip AVR Chip del programador Figura 3-1: Programador AVRprog 1 Escriba el programa en alguno de los compiladores AVR y genere un fichero .hex; Compilar el programa Cargar el código hex 1 2 MCU 1110001001 Bin. 0110100011 0111010000 2FC23AA7 1011011001 F43E0021A Hex. DA67F0541 3 2 Utilice el programa AVRlash para seleccionar un microcontrolador apropiado y para cargar el fichero .hex; 3 Haga click en el botón Write para programar el microcontrolador. En el lado derecho de la ventana principal de programa AVRflash se encuentran los numerosos botones que facilitan el proceso de programación. En el fondo de la ventana se encuentra una opción que permite monitorizar el progreso de la programación. Escriba un código en alguno de los compiladores AVR y genere un fichero .hex. El programador en la placa se encargará de cargar los datos en el microcontrolador. Figura 3-2: Principio de funcionamiento del programador NOTA: Para obtener más informaciones del programador AVRprog refiérase al manual relevante proporcionado con el sistema de desarrollo EasyAVR6. MikroElektronika Los microcontroladores AVR se programan por medio de la comunicación serial SPI utilizando los siguientes pines del microcontrolador: MISO, MOSI y SCK. Build-in programmer AVRprog Multiplexer MISO MOSI SCK Programming lines MISO MOSI PROG CHIP VCC DD+ GND USB DATA SCK User interface R R R Durtante la programación, un multiplexor desconecta los pines del microcontrolador, utilizados para la programación, del resto de la placa y los conecta al programador AVRprog. Una vez terminada la programación, los pines se desconectan del programador y se pueden utilizar como los pines de E/S. 4.0. Programador externo AVRISP mkII Además del programador integrado en la placa, el sistema de desarrollo EasyAVR6 puede utilizar también el programador externo AVRISP de la compañía Atmel para la programación de los microcontroladores. Este programador está insertado en el conector AVRISP. Para programar un microcontrolador, es necesario poner el puente J8 en la posición EXTERNAL antes de encender el programador. Entonces utilice el puente J7 para seleccionar el zócalo del microcontrolador apropiado. Puente J8 en la posición EXTERNAL habilita el programador externo AVRISP Puente J8 en la posición ONBOARD habilita el programador integrado en la placa. Posición del puente J7 cuando el programador externo se utilice para la programación de los microcontroladores en los encapsulados DIP20B y DIP8. Posición del puente J7 cuando el programador externo se utilice para la programación de los microcontroladores en el encapsulado DIP14. Figura 4-1: Configurar el puente J7 Posición del puente J7 cuando el programador externo se utilice para la programación de los microcontroladores en los encapsulados DIP40 y DIP20A. Posición del puente J7 cuando el programador externo se utilice para la programación de los microcontroladores en el encapsulado DIP28. Figura 4-2: AVRISP mkII conectado al sistema de desarrollo MikroElektronika página 9 Sistema de desarrollo EasyAVR6 página 10 Sistema de desarrollo EasyAVR6 5.0.Conector JTAG JTAG ICE es un emulador utilizado para los microcontroladores AVR con la interfaz incorporada JTAG (microcontroladores Mega AVR). Antes que nada, JTAG ICE está destinado a trabajar con el programa AVR Studio. El conector JTAG incorporado en los microcontroladores AVR es una versión modificada de la interfaz original JTAG. Habilita cambiar el contenido de las memorias internas EEPROM y FLASH (programación de los microcontroladores). El emulador JTAG ICE utiliza un conector macho 2x5 para establecer la conexión con el sistema de desarrollo Figura 5-1: Conector JTAG Figura 5-2: JTAGICE mkII conectado al sistema de desarrollo El conector JTAG está directamente conectado a los pines del microcontrolador así que no depende de la configuración de los puentes J7 y J8. De contrario esta conexión debe ser realizada utilizando los programadores AVRprog y AVRISP. 6.0. Oscilador de reloj Hay un oscilador de reloj proporcionado en la placa utilizado como una fuente externa de señal de reloj. El cristal de cuarzo utilizado con el propósito de estabilizar la frecuencia de reloj está insertado en el zócalo apropiado y por eso siempre se puede reemplazar por otro. Su valor máximo depende de la frecuencia de funcionamiento máxima del microcontrolador. 1M U9E 74HC04 VCC U9C 74HC04 EXT CLOCK X2 8MHz R65 1K Figura 6-1: Oscilador VCC C34 C35 22pF 22pF C33 100nF ATmega16 R64 Cristal de cuarzo X2 insertado en el zócalo apropiado, lo que permite reemplazarlo con facilidad. PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 DIP40 Figura 6-2: Esquema de conexión del oscilador MikroElektronika PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 VCC 11 página Sistema de desarrollo EasyAVR6 7.0. Alimentación El sistema de desarrollo EasyAVR6 puede utilizar una de dos fuentes de alimentación: 1. Fuente de alimentación de +5V desde el PC por el cable USB de programación; 2. Fuente de alimentación externa conectada a un conector DC en la placa de desarrollo. El regulador del voltaje MC34063A y el rectificador Gretz permiten que el voltaje de alimentación externa sea AC (en el rango de 7V a 23V) o DC (en el rango de 9V a 32V). El puente J6 se utiliza como selector de la fuente de alimentación. Cuando se utilice la fuente de alimentación USB, el puente J6 debe estar en la posición USB. Cuando se utilice la fuente de alimentación externa, el puente J6 debe estar en la posición EXT. El sistema de desarrollo se enciende/apaga al poner el interruptor POWER SUPPLY en la posición ON. Conector AC/DC Regulador de voltaje de alimentación Conector USB Puente J6 utilizado para seleccionar la fuente de alimentación Interruptor POWER SUPPLY Figura 7-1: Alimentación J6 El sistema se alimenta por el conector AC/DC EXT USB J6 Side view USB El sistema se alimenta por el conector USB 330 35A 8N6 EXT A OFF K 221 SWC SWE CT GND E1 330uF D12 D15 C8 VCC VCC-5V VCC-USB LD42 POWER J6 D7 R56 R55 1K 3K MBRS140T3 A K 106 10V Side view E2 E3 10uF 330uF 106 10V Side view MC 34063A Bottom view L2 220uH DRVC IPK Vin CMPR MC34063A 220pF Side view Top view U10 D14 AC/DC CN16 Side view 0.22 4x1N4007 D13 ON R57 Side view R14 2K2 + Side view Figura 7-2: Esquema de conexión de la fuente de alimentación MikroElektronika página 12 Sistema de desarrollo EasyAVR6 8.0. Interfaz de comunicación RS-232 USART (universal synchronous/asynchronous receiver/transmitter) - transmisor/receptor asíncrono/universal es una de las formas más frecuentes de intercambiar los datos entre el PC y los periféricos. La comunicación serial RS-232 se realiza por medio de un conector SUB-D de 9 pines y el módulo USART del microcontrolador. Para habilitar esta comunicación, es necesario establecer una conexión entre las líneas de comunicación RX y TX y los pines del microcontrolador, que están conectados con el módulo USART, utilizando un interruptor DIP SW9. Los pines del microcontrolador utilizados en esta comunicación serial están marcados de la siguiente manera: RX (receive data) - recibir datos y TX (transmit data) - transmitir datos. La velocidad de transmisión de datos es hasta 115 kbps. Para habilitar que el módulo USART del microcontrolador reciba las señales de entrada con diferentes niveles de voltaje, es necesario proporcionar un convertidor de nivel de voltaje como MAX-202C. Conector RS-232 Figura 8-1: Módulo RS-232 La función de los interruptores DIP SW7 y SW8 es de determinar cuál de los pines de microcontrolador se utilizará como líneas RX y TX. La disposición de los pines difiere dependiendo del tipo de microcontrolador. La Figura 8-2 muestra la conexión entre el módulo RS-232 y el microcontrolador en el encapsulado DIP40 (ATMEGA16). SW9: RX=PB2, TX=PB3 = ON SW9 VCC C28 100nF C1+ V+ C29 100nF T1 OUT C2+ R1 IN C2- R1 OUT T2 OUT R2 IN RS232 SUB-D 9p PB2 PD0 PD2 PB3 PD1 PD3 RX GND C1- V- C 31 100nF TX T1 IN T2 IN R2 OUT VCC R54 1K MAX202 VCC 9 5 6 1 Bottom view 1 5 9 6 ATmega16 C30 100nF VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 VCC DIP40 Figura 8-2: Esquema del módulo RS-232 NOTE: Asegúrese de que su microcontrolador esté proporcionado con el módulo USART, ya que no está necesariamente integrado en todos los microcontroladores AVR. MikroElektronika 13 página Sistema de desarrollo EasyAVR6 9.0. Módulo USB UART Al utilizar el módulo USB UART, es posible conectar el microcontrolador en el sistema de desarrollo al dispositivo USB externo. El módulo USB UART dispone del circuito FT232RL sirviendo de una interfaz entre un dispositivo USB y el módulo UART serial del microcontrolador. Para establecer una conexión entre el microcontrolador y el módulo USB UART es necesario colocar los puentes J16 y J17, como se muestra en la Figura 9-2, de manera que se conecten los pines RX-MCU y TX-MCU del circuito FT232RL a los pines PD0 y PD1 del microcontrolador. Al conectar el módulo UART al microcontrolador es necesario combinar las líneas de transmitir y recibir datos, o sea conectar el pin RX del módulo UART al pin TX del microcontrolador, y TX pin del módulo UART al pin RX del microcontrolador. En caso contrario, no sería posible conectar la línea de transmisión (TX) del módulo UART a la línea de transmisión (TX) del microcontrolador. En otras palabras, el microcontrolador no sería capaz de recibir y transmitir los datos. Conector USB Figura 9-1: Módulo USB UART (J16 y J17 no están colocados) Figura 9-2: Módulo USB UART (J16 y J17 están colocados) Puentes J16 y J17 están colocados Figura 9-3: Esquema de conexión del módulo USB USART al microcontrolador MikroElektronika página 14 Sistema de desarrollo EasyAVR6 10.0. Sensor de temperatura DS1820 La comunicación serial 1-wire® permite la transmisión de datos por medio de una sóla línea de comunicación, mientras que el proceso mismo está bajo el control del microcontrolador maestro. La ventaja de tal comunicación es que se utiliza sólo un pin de microcontrolador. Todos los dispositivos esclavos disponen de un código ID único por defecto, lo que permite que el dispositivo maestro identifique fácilmente los dispositivos que comparten la misma interfaz. DS1820 es un sensor de temperatura que utiliza el estándar 1-wire para su funcionamiento. Es capaz de medir las temperaturas dentro del rango de -55 a 125°C y proporcionar la exactitud de medición de ±0.5°C para las temperaturas dentro del rango de -10 a 85°C. Para su funcionamiento el DS1820 requiere un voltaje de alimentación de 3 a 5.5V. El DS1820 tarda como máximo 750 ms en calcular la temperatura con una resolución de 9 bits. El sistema de desarrollo EasyAVR6 proporciona un zócalo separado para el DS1820. Puede utilizar uno de los pines PA4 o PB2 para la comunicación con el microcontrolador. El próposito del puente J9 es de seleccionar el pin que será utilizado para la comunicación 1-wire. En la Figura 10-4 se muestra la comunicación 1-wire con el microcontrolador por el pin PA4. NOTA: Asegúrese de que el semicírculo en la placa coincida con la parte redonda del DS1820. Figura 10-1: Conector DS1820 (no se utiliza la comunicación 1-wire) Figura 10-2: Puente J9 en la posición a la izquierda (comunicación 1wire por el pin PA4) Puente J9 está en la posición PA4 Figura 10-4: Esquema de conexión de comunicación 1-wire MikroElektronika Figura 10-3: Puente J9 en la posición a la derecha (comunicación 1wire por el pin PB2) 15 página Sistema de desarrollo EasyAVR6 11.0. Entradas de prueba del conversor A/D Un conversor A/D (analógico-digital) se utiliza con el propósito de covertir una señal analógica a un valor digital apropiado. El conversor A/D es lineal, lo que quiere decir que el número convertido es linealmente dependiente del valor del voltaje de entrada. El conversor A/D dentro del microcontrolador convierte un valor de voltaje analógico a un número de 10 bits. Por las entradas de prueba del conversor A/D se puede llevar el voltaje que varía de 0 a 5V. El puente J12 se utiliza para seleccionar uno de los siguientes pines: PA0, PA1, PA2, PA3 or PA4. La resistencia R63 tiene la función protectora. Se utiliza para limitar el flujo de corriente por el potenciómetro o por el pin del microcontrolador. El valor del voltaje analógico de entrada se puede cambiar linealmente utilizando el potenciómetro P1 (10k). PA0 es la entrada A/D VCC VCC PB0 PB1 PB3 PB2 PA7 PA6 GND PA0 PA1 PA2 PA3 PA4 PA5 VCC J12 R63 P1 10K DIP14 Figura 11-2: El pin PA0 utilizado como el pin de entrada para la conversión A/D Figura 11-1: ADC (posición por defecto del puente) P1 10K 220R Top view Figura 11-3: Conexión del microcontrolador AVR en el encapsulado DIP14 a las entradas de prueba del conversor A/D. PA0 es la entrada A/D PA0 es la entrada A/D VCC J12 ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 R63 P1 10K 220R VCC J12 P1 10K VCC VCC Top view PB0 PB1 PB2 PB3 VCC GND PB4 PB5 PB6 PB7 PA0 PA1 PA2 PA3 AGND AVCC PA4 PA5 PA6 PA7 R63 P1 10K 220R VCC P1 10K Top view DIP20 DIP40 Figura 11-4: Conexión del microcontrolador AVR en el encapsulado DIP40 a las entradas de prueba del conversor A/D. Figura 11-5: Conexión del microcontrolador AVR en el encapsulado DIP20B a las entradas de prueba del conversor A/D. NOTA: Para que un microcontrolador pueda realizar una conversión A/D con exactitud, es necesario apagar los diodos LED y las resistencias pull-up/pull-down en los pines de puertos utilizados por el conversor A/D. MikroElektronika página 16 Sistema de desarrollo EasyAVR6 12.0. Diodos LED El diodo LED (Light-Emitting Diode) - Diodo emisor de luz, representa una fuente electrónica de luz de muy alta eficacia. Al conectar los LEDs es necesario colocar una resistencia para limitar la corriente cuyo valor se calcula utilizando la fórmula R=U/I donde R se refierre a la resistencia expresada en ohmios, U se refierre al voltaje en el LED, I se refierre a la corriente del LED. El voltaje común del LED es aproximadamente 2.5V, mientras que la intensidad de corriente varía de 1 a 20mA dependiendo del tipo del diodo LED. El sistema de desarrollo EasyAVR6 utiliza los LEDs con la corriente I=1mA. El sistema de desarrollo EasyAVR6 tiene 35 LEDs que indican visualmente el estado lógico en cada pin de E/S del microcontrolador. Un diodo LED activo indica la presencia de un uno lógico (1) en el pin. Para habilitar que se muestre el estado de los pines, es necesario seleccionar el puerto apropiado PORTA/E, PORTB, PORTC o PORTD utilizando el interruptor DIP SW8. Muesca indica el cátodo SMD LED A PA0 PA1 PA2 PA3 PA4 K I A R=U/I K SMD LED 472 R Microcontrolador MCU Resistencia SMD limita el flujo de corriente por un LED Figura 12-1: LEDs SW8: PORTA = ON ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 LD1 PA1 LD2 PA2 LD3 RN13 8x4K7 PA3 LD4 PA4 LD5 PA5 LD6 PA6 LD7 PA7 LD8 SW8 PORTA/E VCC DIP40 Figura 12-2: Esquema de conexión de los LEDs al puerto PORTA MikroElektronika PA0 17 página Sistema de desarrollo EasyAVR6 13.0. Botones de presión El estado lógico de todos los pines de entrada digitales del microcontrolador se puede cambiar al utilizar los botones de presión. El puente J13 se utiliza para determinar el estado lógico que será aplicado al pin deseado del microcontrolador al presionar el botón apropiado. El propósito de la resistencia protectora es de limitar la máxima corriente lo que impide la ocurrencia de un corto circuito. Los usuarios con más experiencia pueden, si es necesario, pueden poner en cortocircuito esta resistencia utilizando el puente J18. Justamente junto a los botones de presión, se encuentra un botón RESET que no está conectado al pin MCLR. La señal de reset se genera por el programador. VCC R20 10K RSTbut RESET Botón de RESET C32 100nF Puente J18 utilizado para poner en cortocircuito la resistencia protectora Top view Inside view Bottom view Side view Puente J13 utilizado para seleccionar el estado lógico que se aplicará al pin al pulsar el botón Botones de presión utilizados para simular las entradas digitales Figura 13-1: Botones de presión utilizados para simular las entradas digitales Al pulsar cualquier botón de presión (PA0-PA7) cuando el puente J13 se encuentre en la posición VCC, un 1 lógico (5V) será aplicado al pin apropiado del microcontrolador como se muestra en la Figura 13-2. Puente J13 en la posición VCC ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 5V 0V VCC J13 VCC 5V 0V VCC PA7 PA6 PA5 PA4 PA3 PA2 PA1 J13 PA0 J18 R58 220R DIP40 Figura 13-2: Esquema de conexión de los botones de presión al puerto PORTA MikroElektronika página 18 Sistema de desarrollo EasyAVR6 14.0. Teclados En el sistema de desarrollo EasyAVR6 se encuentran dos teclados. Estos son el teclado 4x4 y el teclado MENU. El teclado 4x4 representa un teclado alfanumérico estándar conectado al PORTC del microcontrolador. El funcionamiento de este teclado está basado en el principio de escanear los pines según el que los pines PC0, PC1, PC2 y PC3 se configuran como las entradas conectadas a las resistencias pull-down. Los pines PC4, PC5, PC6 y PC7 se configuran como las salidas de voltaje da alto nivel. Al presionar cualquier botón un uno lógico (1) se aplicará a los pines de entrada. La detección del botón de presión se realiza por medio de software. Por ejemplo, al presionar el botón de presión ‘6’ un uno lógico (1) aparece en el pin PC2. Para detectar qué botón de presión fue presionado, un uno lógico (1) se aplica a cada pin de entrada PC4, PC5, PC6 y PC7. Los botones del teclado MENU están conectados de la manera similar a los botones en el puerto PORTA. La única diferencia yace en la disposición de los botones. Los botones del teclado MENU están colocados de tal manera que porporcionen una navegación fácil por menús. PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 "1" "1" "1" "1" Pull-down Figura 14-1: Teclado 4x4 Figura 14-2: Rendimieno del teclado 4x4 El puente J13 está en la posición VCC. Los pines PC0, PC1, PC2 y PC3 están conectados a las resistencias pulldown por el interruptor DIP SW3 Figura 14-4: Esquema de conexión de los teclados (4x4 y MENU) al microcontrolador MikroElektronika Figura 14-3: Teclado MENU 19 página Sistema de desarrollo EasyAVR6 15.0. Visualizador LCD alfanumérico 2x16 El sistema de desarrollo EasyAVR6 dispone de un conector integrado en la placa en el que se coloca el visualizador alfanumérico LCD 2x16. Este conector está conectado al microcontrolador por el puerto PORTD. El potenciómetro P7 se utiliza para ajustar el contraste del visualizador. El interruptor con la etiqueta DISP-BCK en el interruptor DIP SW10 se utiliza para encender/apagar la retroiluminación del visualizador. La comunicación entre un visualizador LCD y el microcontrolador se establece utilizando el modo de 4 bits. Los dígitos alfanuméricos se visualizan en dos líneas de las que cada una contiene hasta 16 caracteres de 7x5 píxeles. Conector para la colocación del visualizador LCD alfanumérico Potenciómetro para ajustar el contraste Figura 15-1: Conector del visualizador LCD alfanúmerico 2x16 Figura 15-2: Visualizador LCD 2x16 SW10: DISP-BCK = ON VCC SW10 P7 10K PD3 PD2 Top view PD7 PD6 DISP-BCK VCC PD5 PD4 R43 10 GND VCC VCC VO PD2 GND PD3 GND GND GND GND PD4 PD5 PD6 PD7 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 CN7 1 GND VCC VO RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 LED+ LED- ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 DIP40 LCD Display 4-bit mode Figura 15-3: Esquema de conexión del visualizador LCD alfanumérico 2x16 MikroElektronika Sistema de desarrollo EasyAVR6 16.0. Visualizador LCD 2x16 incorporado con comunicación serial El visualizador LCD 2x16 incorporado está conectado al microcontrolador por medio del extensor de puertos. Para utilizar este visualizador es necesario poner todos los interruptores (1-6) del interruptor DIP SW10 en la posición ON de modo que el visualizador LCD incorporado se conecte al puerto 1 del extensor de puertos. Los siguientes interruptores DIP SW6, S7 y SW9 permiten que el extensor de puertos utilice la comunicación serial. El potenciómetro P5 se utiliza para ajustar el contraste del visualizador. A diferencia del visualizador LCD, el visualizador LCD incorporado no dispone de retroiluminación y recibe los datos por medio del extensor de puertos que utiliza la comunicación SPI para comunicarse con el microcontrolador. Este visualizador también visualiza los dígitos en dos líneas de las que cada una contiene hasta 16 caracteres de 7x5 píxeles. Potenciómetro para ajustar el contraste El interruptor DIP SW10 utilizado para enecender el visualizador LCD incorporado 2x16 Figura 16-1: Visualizador LCD incorporado 2x16 SW6, SW7: CS, RST, SCK, MISO, MOSI = ON SW10: 1-6 = ON SW9 PE-INTA PE-INTB PD2 PD3 LCD Display COG 2x16 P1.3 SW7 VCC SPI-MOSI PB5 PB3 PB0 PA6 PB6 PB4 PB1 PA5 P1.5 P1.6 P1.7 VCC SW6 PB7 PB5 PB2 PA4 PB1 PB3 PB2 PB5 P1.4 CN17 SPI-MISO VCC PE-CS# SPI-SCK SPI-SCK SPI-MOSI SPI-MISO P5 10K PE-CS# PE-RST# DIP40 Top view Figura 16-2: Esquema de conexión del visualizador LCD incorporado 2x16 MikroElektronika U5 P1.2 COG-RS COG-E COG-D4 COG-D5 COG-D6 COG-D7 DISP-BCK P01_LED PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 SW10 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 VCC ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 GND Vo VCC RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 página 20 R2 100K GPB0 GPB1 GPB2 GPB3 GPB4 GPB5 GPB6 GPB7 VCC GND CS SCK SI SO GPA7 GPA6 GPA5 GPA4 GPA3 GPA2 GPA1 GPA0 INTA INTB RESET A2 A1 A0 MCP23S17 VCC PE-INTA PE-INTB PE-RST# 21 página Sistema de desarrollo EasyAVR6 17.0. Visualizador LCD gráfico 128x64 El visualizador LCD gráfico (128x64 GLCD) proporciona un método avanzado de visualizar los mensajes gráficos. Está conectado al microcontrolador por los puertos PORTC y PORTD. El visualizador GLCD dispone de la resolución de pantalla de 128x64 píxeles que permite visualizar diagramas, tablas y otros contenidos gráficos. Puesto que el puerto PORTD también es utilizado por el visualizador LCD alfanumérico 2x16, no es posible utilizar los dos simultáneamente. El potenciómetro P6 se utiliza para ajustar el contraste del visualizador GLCD. El interruptor 7 en el interruptor DIP SW10 se utiliza para encender/apagar la retroiluminación del visualizador. . Potenciómetro para ajustar el contraste Conector GLCD Conector del panel táctil Figura 17-2: Conector GLCD Figura 17-1: Visualizador GLCD SW10: DISP-BCK = ON SW10 P6 10K Top view DISP-BCK VCC VCC GND R28 10 PD2 PD3 GND VCC Vo PD4 PD5 PD6 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PD7 Vee PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 VCC CN6 1 CS1 CS2 GND VCC Vo RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 RST Vee LED+ LED- ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 20 DIP40 Figura 17-3: Esquema de conexión del visualizador GLCD MikroElektronika Sistema de desarrollo EasyAVR6 18.0. Panel táctil Un panel táctil es un panel fino, autoadhesivo, transparente y toque senistivo. Se coloca sobre el visualizador GLCD. El propósito principal de este panel es de registrar la presión en un punto específico del visualizador y enviar sus coordenadas en la forma del voltaje analógico al microcontrolador. Los interruptores 5,6,7 y 8 en el interruptor DIPSW9 se utilizan para conectar el panel táctil al microcontrolador. 4 3 1 Figura 18-1: Panel táctil La Figura 18-1 muestra cómo colocar un panel táctil sobre un visualizador GLCD. Asegúrese de que el cable plano esté a la izquierda del visualizador GLCD como se muestra en la Figura 4. 1 CS1 CS2 GND VCC Vo RS R/W E D0 D1 D2 D3 D4 D5 D6 D7 RST Vee LED+ LED- VCC-MCU 20 SW8 Q15 BC856 VCC-MCU R48 1K R49 1 0K RIGHT Q13 BC846 R44 1K R47 1 0K BOTTOM LEFT DRIVEA DRIVEB PA0 PA1 PA2 PA3 Q14 BC856 TOP R46 1 0K VCC RIGHT TOP LEFT BOTTOM GLCD C25 100nF LEFT SW8: BOTTOM, LEFT, DRIVEA, DRIVEB = ON Q12 BC846 R52 100K R45 1 0K VCC-MCU BOTTOM Q16 BC846 R53 100K R50 1K R51 1 0K TOUCHPANEL CONTROLLER PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 ATmega16 VCC-MCU CN13 C26 100nF página 22 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 VCC DIP40 Figura 18-2: Esquema de conexión del panel táctil 1 3 4 Figura 18-3: Colocación del panel táctil La Figura 18-3. muestra detalladamente cómo conectar un panel táctil al microcontrolador. Acerque la punta del cable plano al conector CN13 como se muestra en la Figura 1. Inserte el cable en el conector, como se muestra en la Figura 2, y presiónelo lentamente de modo que la punta del cable encaje en el conector completamente, como se muestra en la Figura 3. Luego inserte el visualizador GLCD en el conector apropiado como se muestra en la Figura 4. NOTA: Los LEDs y las resistencias pull-up/pull-down en el puerto PORTA tienen que estar apagados al utilizar un panel táctil. MikroElektronika 23 página Sistema de desarrollo EasyAVR6 19.0. Puertos de Entrada/Salida A lo largo de la parte derecha del sistema de desarrollo están siete conectores de 10 pines que están conectados a los puertos de E/S del microcontrolador. Unos están conectados directamente a los pines del microcontrolador, mientras que otros están conectados por medio de los puentes. Los interruptores DIP SW1-SW5 permiten que cada pin de conector esté conectado a una resistencia pull up/pull down. Si los pines de puertos están conectados a una resistencia pull-up o pull-down depende de la posición de los puentes J1-J5. Conector macho 2x5 del puerto PORTB Puente para seleccionar una resistencia pull-up o pull-down Figura 19-2: Puente J3 en la posición Pull-Down Interruptor DIP enciende las resistencias pull-up/pull-down para cada pin Módulo adicional conectado al puerto PORTC Figura 19-3: Puente J3 en la posición Pull-Up Figura 19-1: Puertos de E/S SW1: 1-8 = OFF Puente J1 en la posición pull-down Puente J13 en la posición VCC VCC 8x10K RN1 J1 SW1 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 up pull down ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 PA0 LD1 PA1 LD2 PA2 LD3 PA3 LD4 PA4 LD5 PA5 LD6 PA6 LD7 PA7 LD8 RN13 8x4K7 VCC PORTA PA0 PA1 PA2 PA3 PA4 PA5 PA7 PA6 CN8 VCC VCC DIP40 PA0 PA1 PA2 PA3 PA4 PA5 PA6 J13 PA7 J18 T1 T2 T3 T4 T5 T6 T7 R58 220R T8 Figura 19-4: Esquema de conexión del puerto PORTA MikroElektronika página 24 Sistema de desarrollo EasyAVR6 Las resistencias pull-up/pull-down permiten determinar el nivel lógico en todos los pines de entrada del microcontrolador cuando estén en el estado inactivo. El nivel lógico depende de la posición pull-up/pull-down del puente. El pin PA0 junto con la resistencia DIP SW1 pertinente, el puente J1 y el botón de presión PA0 con el puente J13 se utilizan con el próposito de explicar el funcionamiento de las resistencias pull-up/pull-down. El principio de su funcionamiento es idéntico para todos los pines del microcontrolador. VCC ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 up pull down 8x10K RN1 J1 SW1 VCC J13 PA0 J18 R58 220R VCC Para conectar los pines en el puerto PORTA a las resistencias pull-down, es necesario poner el puente J1 en la posición Down. Esto permite que se lleve un cero lógico (0) a cualquier pin en el puerto PORTA en el estado inactivo por medio del puente J1 y de la red de resistencias de 8x10K. Para llevar esta señal al pin PA0, es necesario poner el interruptor PA0 en el interruptor DIP SW1 en la posición ON. Por consiguiente, cada vez que se presiona el botón de presión PA0 un uno lógico (1) aparecerá en el pin PA0, con tal de que el puente J13 esté colocado en la posición VCC. 5V 0V DIP40 Figura 19-5: Puente J1 en la posición pull-down y el puente J13 en la posición pull-up VCC ATmega16 VCC PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 AREF GND AVCC PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PD7 up pull down RN1 J1 8x10K SW1 VCC J13 PA0 J18 R58 220R VCC Para conectar los pines en el puerto PORTA a las resistencias pull-up, y para llevar un cero lógico (0) a los pines de entrada en el puerto, es necesario poner el puente J1 en la posición Up (5V) y el puente J13 en la posición GND (0V). Además, el pin PA0 en el interruptor DIP SW1 se debe colocar en la posición ON. Esto permite llevar un uno lógico (5V) a todos los pines de entrada del puerto PORTA en el estado inactivo por medio de la resistencia de 10k. El voltaje se lleva al pin PA0 por medio de la resistencia de 10k y el interruptor PA0. Por consiguiente, cada vez que se presiona el botón de presión PA0 un cero lógico (0) aparecerá en el pin PA0. 5V 0V DIP40 Figura 19-6: Puente J1 en la posición pull-up y puente J13 en la posición pull-down VCC up pull down J1 VCC J13 5V 0V Figura 19-7:. Puentes J1 y J13 en las mismas posiciones MikroElektronika En caso de que los puentes J1 y J13 tengan el mismo estado lógico, al presionar cualquier botón de presión no cambia de estado lógico de los pines de entrada. 25 página Sistema de desarrollo EasyAVR6 20.0. Extensor de puertos (Puertos de Entrada/Salida adicionales) Las líneas de comunicación SPI y el circuito MCP23S17 proporcionan el sisrema de desarrollo EasyAVR6 con recursos de incrementar en dos el número de los puertos de E/S disponibles. Si el extensor de puertos se comunica con el microcontrolador por los interruptores DIP SW6 y SW7, los pines del microcontrolador utilizados para la comunicación SPI no se pueden utilizar como los pines de E/S. Los interruptores INTA e INTB en el interruptor DIP SW9 habilitan una interrupción utilizada por el circuito MCP23S17. Puente para seleccionar una resistencia pull-up/ pull-down PORT0 PORT1 Interruptor DIP conecta el extensor de puertos al microcontrolador Figura 20-2: Interruptores DIP SW6 y SW7 cuando el extensor de puertos está habilitado Figura 20-1: Extensor de puertos El microcontrolador se comunica con el extensor de puertos (circuito MCP23S17) utilizando la comunicación serial (SPI). La ventaja de esta comunicación es que sólo cuatro líneas son utilizadas para transmitir y recibir los datos simultáneamente: MOSI MISO SCK CS - Master Output (Salida de maestro), Slave Input (Entrada de esclavo) - salida del microcontrolador, entrada de MCP23S17 - Master Input (Entrada de maestro), Slave Output (Salida de esclavo) - entrada de microcontrolador, salida de MCP23S17 - Serial Clock (Reloj de sincronización) - señal de reloj del microcontrolador - Chip Select (Selección de chip) - habilita la transimisión de datos La transmisión de datos se realiza en ambas direcciones simultáneamente por medio de las líneas MOSI y MISO. La línea MOSI se utiliza para transmisión de datos del microcontrolador al extensor de puertos, mientras que la línea MISO transmite los datos del extensor de puertos al microcontrolador. El microcontrolador inicializa la transmisión de datos cuando el pin CS es llevado a bajo (0V) El microcontrolador envía la señal de reloj (SCK) e inicia el intercambio de datos. SPI Master AVR MCU MOSI Serial output PORT EXPANDER MOSI MISO MISO SCK SCK CS Parallel input CS 8bit PORT0 8bit PORT1 Los puentes J19 se utilizan para determinar la dirección del hardware del extensor de puertos. Asimismo se utilizan para llevar un uno lógico (1) o un cero lógico (0) a los pines A2, A1 y A0 del extensor de puertos. Los puentes J19 están puestos por defecto en posición Down (un cero lógico). SPI Slave MCP23S17 Figura 20-3: Diagrama de bloque de la comunicación SPI El principio de funcionamiento de los puertos 0 y 1 del extensor de puertos es casi idéntico al funcionamiento de otros puertos en el sistema de desarrollo. La única diferencia yace en que las señales de los puertos se reciben en formato paralelo. El MCP23S17 covierte estas señales al formato serial y se las envía al microcontrolador. El resultado es el número reducido de las líneas utilizadas para enviar las señales de los puertos 0 y 1 al microcontrolador. MikroElektronika página 26 Sistema de desarrollo EasyAVR6 SW6: CS#=PB1, RST=PB2, SCK = PB7 SW7: PB6 =MISO, PB5=MOSI Puentes J14 y J15 en la posición pull-up Figura 20-4: Esquema de conexión del extensor de puertos MikroElektronika TÉRMINOS Y CONDICIONES ESTIMADOS CLIENTES, Querría darles las gracias por estar interesados en nuestros productos y por tener confianza en Mikroelektronika. Nuestro objetivo es proporcionarles con los productos de la mejor calidad. Además, seguimos mejorando nuestros rendimientos para responder a sus necesidades. Nebojsa Matic Director general Todos los productos de Mikroelektronika son protegidos por la ley y por los tratados internacionales de derechos de autor. Este manual es protegido por los tratados de derechos de autor, también. Es prohibido copiar este manual, en parte o en conjunto sin la autorización previa por escrito de MikroElektronika. Se permite imprimir este manual en el formato PDF para el uso privado. La distribución y la modificación de su contenido son prohibidas. Mikroelektronika proporciona este manual “como está” sin garantías de ninguna especie, sean expresas o implícitas, incluyendo las garantías o condiciones implícitas de comerciabilidad y aptitud para fines específicos. Aunque Mikroelektronika ha puesto el máximo empeño en asegurar la exactitud de la información incluida en este manual, no asume la responsabilidad de ninguna especie de daños derivados del acceso a la información o de los programas y productos presentados en este manual (incluyendo daños por la pérdida de los beneficios empresariales, información comercial, interrupción de negocio o cualquier otra pérdida pecuniaria).Las informaciones contenidas en este manual son para el uso interno. Pueden ser modificadas en cualquier momento y sin aviso previo. ACTIVIDADES DE ALTO RIESGO Los productos de Mikroelektronika no son tolerantes a fallos y no están diseñados, fabricados o pensados para su uso o reventa como equipo de control en línea en entornos peligrosos que requieran un funcionamiento sin fallos, como en instalaciones nucleares, en la navegación aérea o en sistemas de comunicaciones, de tráfico aéreo, máquinas de auxilio vital o sistemas de armamento, en los que un fallo del software podría conducir directamente a la muerte, lesiones corporales o daños físicos o medioambientales graves (“Actividades de alto riesgo”). MikroElektronika y sus proveedores niegan específicamente cualquier garantía expresa o implícita de aptitud para Actividades de alto riesgo. MARCAS REGISTRADAS El nombre y logotipo de Mikroelektronika, el logotipo de Mikroelektronika, mikroC, mikroC PRO, mikroBasic, mikroBasic PRO, mikroPascal, mikroPascal PRO, AVRflash, PICflash, dsPICprog, 18FJprog, PSOCprog, AVRprog, 8051prog, ARMflash, EasyPIC5, EasyPIC6, BigPIC5, BigPIC6, dsPIC PRO4, Easy8051B, EasyARM, EasyAVR5, EasyAVR6, BigAVR2, EasydsPIC4A, EasyPSoC4, EasyVR Stamp LV18FJ, LV2433A, LV32MX, PIC32MX4 MultiMedia Board, PICPLC16, PICPLC8 PICPLC4, SmartGSM/GPRS, UNI-DS son maracas comerciales de Mikroelektronika. Todas las demás marcas aquí mencionadas son propiedad de sus respectivas compañías. Todos los demás productos y nombres corporativos utilizados en este manual pueden ser marcas comerciales registradas, son propiedad de sus respectivas compañías y se utilizan para fines de redacción, en beneficio de sus propietarios sin intención de infringir sus derechos. El nombre y el logo de Atmel, el logo de Atmel, AVR, AVR (logo), AVR Freaks, AVR Freaks (logo), AVR Studio, IDIC, megaAVR, megaAVR (logo), picoPower ® y tinyAVR ® son marcas comerciales de Atmel Coorporation. ©MikroelektronikaTM, 2010, Todos los derechos reservados. Todos los sistemas de desarrollo de MikroElektronika son unas herramientas insustituibles para la programación y el desarrollo de los dispositivos basados en microcontroladores. Los componentes elegidos con atención debida y el uso de las máquinas de la última generación para montarlos y probarlos son la mejor garantía de alta fiabilidad de nuestros dispositivos. Gracias a un diseño simple, gran número de los módulos complementarios y ejemplos listos para ser utilizados todos nuestros usuarios, sin reparar en su experiencia, tienen la posibilidad de desarrollar sus proyectos en una manera fácil y eficiente. Manual de usuario Sistema de desarrollo Si tiene alguna pregunta, comentario o propuesta de negocio, póngase en contacto con nosotros en [email protected] Si tiene problemas con cualquiera de nuestros productos o sólo necesita información adicional, deje un ticket en www.mikroe.com/en/support Si quiere saber más de nuestros productos, por favor visite nuestra página web www.mikroe.com UNI-DS3 ™