PROCESO DE SIMULACIÓN EN PROTEUS



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

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA

WINDOWS : TERMINAL SERVER

Checklist para utilización de PC-Adapter MPI/RS232

Manual del usuario de GenLI-RS

Guía de Usuario Programador USB

Manual del usuario. Flash Point Genius. FLASH POINT GENIUS: Programación Serial para turismos

EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET

ArduLab. 1. Qué te pasa Nerea? 2.Este robot no funciona bien y no sé que le pasa

Manual BmwScanner 1.40

10 En este caso indica la dirección GPIB del instrumento.

GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS.

Manual IOCard USB DimControl. Fecha:19/08/15 Rev.:1.1

El resultado del proceso elimina todos los datos y cuentas dejando el producto como en su primer uso.

Introducción. Conexión de los terminales a la toma telefónica. Instalación del módem ADSL. Conexión del módem. Desinstalación del módem y la conexión

Red ADSL. Adaptador USB HomePNA 1.0. Guía de resolución de problemas:

Preguntas frecuentes T920

PROTEUS Depuración de programas para microprocesadores

- 1 - ÍNDICE. PASO 3: Primero le hará falta elegir su lengua en esta pantalla:

USB (Universal Serial Bus)

Además del Sistema Operativo necesitaremos un adaptador inalámbrico que vamos a describir en el punto siguiente.

Redes Locales: El protocolo TCP/IP

LA FACTURACIÓN DE LA ELECTRICIDAD

T3-Rondas V 1.1. Help-Pc, S.L. C/ Pintor Pau Roig, 39 L Premià de Mar Barcelona Tel. (93) Fax marketing@t2app.

5.2.- Configuración de un Servidor DHCP en Windows 2003 Server

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

Instrucciones de instalación de TrueCode

Descripción técnica. Sicherheit-TES Versión 1.0

NORMA (SEPA) 22/11/2013

Memoria del Trabajo Fin de Máster realizado por MARTA FERNÁNDEZ GARCÍA. para la obtención del título de

1.- DESCRIPCIÓN Y UTILIDAD DEL SOFTWARE DAEMON TOOLS.

JHAN EVER ANDRADE CASTRO

Tutorial de uso. ScanIPTV V.4.7

Notas para la instalación de un lector de tarjetas inteligentes.

Conexión inalámbrica a un CNC (con puerto Serie RS232C)

COMO HACER UNA INSTALACION LIMPIA DE WINDOWS XP (Formateando e Instalando XP)

PERSONALIZACIÓN DE LOS CIRCUITOS INTEGRADOS FT232R CONVERTIDORES RS232 a USB

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

En principio, comenzaremos a esbozar el menú principal que nos muestra el DVR, tal como se muestra a continuación:

Versatils. Apéndice. ODBC Orígenes de datos. ODBC Orígenes de datos.

Uso de la Firma Electrónica. en la. Universidad de Granada

Manual de usuario para Android de la aplicación PORTAFIRMAS MÓVIL

Descarga Automática. Manual de Usuario. Operador del Mercado Ibérico de Energía - Polo Español Alfonso XI, Madrid

Conexiones Centralita telefónica

Teclado sobre una PDA para Personas con Parálisis Cerebral

WINDOWS : COPIAS DE SEGURIDAD

Iniciando con Motores a Pasos: Primera parte

Acceso al Disco Compartido y Dispositivos USB y DVD

SOFTWARE CSU-485. Para conectar el dispositivo CSU-485 lo podemos hacer de dos maneras:

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

MANUAL DE AYUDA PARA LA UTILIZACIÓN DEL LECTOR DE TARJETAS SI NO POSEE EL CD DE INSTALACION DEL LECTOR DE TARJETAS DEBE SEGUIR LOS SIGUIENTES PASOS.

Práctica No. 1. Consulta de las versiones del SO

Manual del Módulo Externo Impresión de Códigos de Barra para Impresoras SATO

CITRIX Citrix Application Streaming

Windows XP Instalación y configuración de hardware

Int. a las ciencias computacionales

SMS PUSH SMS ENCUESTAS INTERNET FAX

Cómo gestionar menús en Drupal 7

1. Instalación de una Unidad de Disco Duro (HDD) Pág Instalación de un HDD IDE Pág Instalación de un HDD SATA Pág.

Comercial Cartas de Fidelización

En esta unidad añadiremos información sobre EXT3 y trabajaremos con aspectos visibles que nos proporcionan estos sistemas de archivos.

Conexión a red LAN con servidor DHCP

AD a 24Vcc 100mA (1) SI SI SI 100 mw 1Km (2) 256 bytes AD a 24Vcc 500mA (1) SI SI SI 500 mw 3km (2) 256 bytes

Configuración de Exchange en Blackberry

Se trata de una herramienta de desarrollo visual muy fácil de usar, con la que incluso los no programadores podrán desarrollar sus aplicaciones.

Para subir archivos usando los datos que nos proporcionaron vía correo electrónico.

CERTIFICADOS ELECTRÓNICOS Y LECTORES DE TARJETAS LTC31 USB

Conexión de GPS a Open CPN.

Configuración de la red

PROPUESTAS COMERCIALES

- 1 - ÍNDICE. Haga clic en Instalar Software. PASO 3: Primero le hará falta elegir su lengua en esta pantalla:

Redes Paso a Paso. Descripción. Redes en Educación 2

Instalación del programa PSPP y obtención de una distribución de frecuencias.

TRANSFERIR ARCHIVOS E INSTALAR BIBLIOTECAS (librarys)

En el presente capítulo se describe la programación del instrumento virtual y cómo

TEMA EL BUS I 2 C (Inter Integrated Circuit Bus) I2C EN C

KIRA N10020 Preguntas Frecuentes

Kit de Autenticación con Tarjetas. Guía Técnica de Configuración

2.- PLATAFORMA ARDUINO (HARDWARE)

Tener la WiFi abierta implica tener nuestra conexión a Internet compartida, además de otros riesgos:

La publicación. Pere Barnola Augé P08/93133/01510

Sesión No. 2. Contextualización: Nombre de la sesión: Paquetería ASPEL - COI PAQUETERÍA CONTABLE

Direccionamiento IPv4

Escritorio remoto y VPN. Cómo conectarse desde Windows 7

Capítulo 2. Cuestiones previas

1 MANUAL DE INSTALACIÓN

Especificaciones técnicas. Power, Inputs and Outputs. Operating Voltage Input Voltage (recommended) Input Voltage (limits) Analog Input Pins

GUIA RAPIDA DE LECTORA BIOMETRICA IN01-A ID PARA CONTROL DE ASISTENCIA Y ACCESO.

Curso: FT433 - Introducción a la virtualización con VirtualBox

Manual de software. Dynamic Cloud. 10/2014 MS-Dynamic_Cloud v1.2

Notarnet S.L. Manual Instalación

Usar Widex USB Link con Compass

RESOLUCIÓN DE INCIDENCIAS PROCURADORES

Imprimir en impresoras Windows (servidor \\IMPRESION) desde equipos

INVENTARIO INTRODUCCIÓN RESUMEN DE PASOS

IMAGE RESIZER FOR WINDOWS, ÚTIL PARA REDUCIR EL TAMAÑO O REDIMENSIONAR IMÁGENES Y FOTOGRAFÍAS (DV00409C)

Prototipado y ejecución de aplicaciones SD con GeneXus

Impress : Programa de presentaciones de OpenOffice.

Transcripción:

USB PROCESO DE SIMULACIÓN EN PROTEUS Departamento de Electrónica Fundación San Valero Microchip PIC18F4550 1

Microchip Firmware PIC18F4550 La velocidad de transferencia a ido aumentando rápidamente a lo largo de estos años. Caben destacar 3 de estos: USB 1.0: baja velocidad (hasta 1.5Mbit/seg) usado en dispositivos de interfaz humana (HID) como ratones y teclados. USB 2.0: Alta Velocidad (hasta 480Mbit/seg) unos 60Mg/seg. USB 3.0: Giga Velocidad, en fase experimental, (hasta 4.8Gbit/seg) unos 600 Mg/seg. Los buses son mucho más rápido debido a la incorporación de una fibra óptica al enlace de cobre. La transmisión del USB se realiza mediante un cable de cobre de par trenzado con una impedancía de unos 90 ohm llamados D+ y D-. Estos pueden dar energía a dispositivos externos, con una tensión de 5V y un máximo consumo de 500mA. Microchip Firmware PIC18F4550 Conector USB: 1=Vbus 2=D- 3=D+ 4=Gnd 2

Microchip Firmware PIC18F4550 Vamos a usar un PIC 18F4550 que gestione mediante software la comunicación USB2.0 con nuestro ordenador. También hay que configurar dos parámetros esenciales en todo dispositivo que son el VID e ID. VID (Vendor ID): Es el identificador de la empresa. Cada empresa tiene un identificador, el cual puede vender diferentes productos a los que se les incluye el ID. ID (Product ID): Es el identificador del producto. Por tanto un dispositivo tendrá un VID e ID fijos que les hace únicos con lo que no pueden sufrir incompatibilidad con otros dispositivos. Microchip Firmware PIC18F4550 Estos son únicos para cada dispositivo que existe en el mercado, ya que si hubiese en nuestro ordenador dos dispositivos con el mismo VID/ID causarían conflictos entre ellos, impidiendo el correcto funcionamiento de ambos. Para asegurarnos que no existen conflictos debemos pagar y tener nuestro único e indivisible VID/ID, solamente si queremos comercializarlo no nos quedará más remedio que comprar una licencia. 3

Microchip Firmware PIC18F4550 El código principal en el microcontrolador para crear nuestro USB 2.0 es el siguiente: Librerías utilizadas para configuración USB según Microchip Configurar Oscilador PIC18F4550 Una cuestión muy importante es el PLL del PIC Necesitamos que a nuestro micro le lleguen sólo 4MHz por lo que hay que usar un prescaler. Para ello en CCS se usa la sentencia PLLX (descrita en Fuses), donde X significa la división de nuestro clock. Así pues si tenemos un cristal de 20MHz, el prescaler tendrá que ser 20 : 4 = 5 ->PLL5. Si por el contrario nuestro cristal es de 12MHz sería PLLl3. 4

Donde personalizar nuestro PIC? Esta se realiza en el archivo usb_desc_cdc.h en las siguientes líneas de código. la numeración hexadecimal de la descripción del VID / ID va al revés, es decir, el primero número hex. será el último y viceversa. Donde personalizar nuestro PIC? La longitud de la cadena tiene que ser exacta, sino saldrán caracteres que no tienen que ver con nuestro dispositivo si el número de la cadena es mayor o se suprimirán caracteres si el número de la cadena es inferior, para ello hay una fórmula muy sencilla que es: (Número de letras + 1)*2 = longitud a poner Ejemplo en string1 queremos poner JVR, esta tiene 3 caracteres por tanto: longitud a poner = ( 3 + 1 ) + 2 = 4 + 2 = 8 5

Donde personalizar nuestro PIC? Es recomendable cambiar la velocidad de comunicación del CRC desde el PIC (baudrate) ya que así nos aseguraremos de no tener error alguno en nuestro dispositivo. Esto lo podemos realizar desde el archivo usb_cdc.h cambiando la siguiente línea de código en la función void usb_cdc_init(void): Para que nuestro dispositivo sea detectado por el ordenador lo primero que tenemos que hacer es configurar nuestro driver. Para ello abriremos con el archivo mchpcdc.inf que se encuentra en la url en la cual se encuentre en nuestro ordenador Proceso de instalación Una vez configurado el driver a nuestro gusto, pasaremos a la instalación del puerto de comunicaciones virtual. Lo primero será conectar nuestro dispositivo a algún puerto usb libre que tengamos. Nada más conectar el usb al ordenador aparecerá el asistente para hardware nuevo encontrado, si este nos pregunta conectarnos a Windows Update le diremos "No por el momento" y pulsaremos siguiente. 6

Proceso de instalación A continuación seleccionaremos "Instalar desde una lista o ubicación específica (avanzada)" y pulsamos siguiente. Proceso de instalación Seleccionaremos "Buscar el controlador más adecuado en estas ubicaciones", "Incluir esta ubicación en la búsqueda", para a continuación pulsar sobre el botón con la etiqueta "Examinar". Aparecerá un explorador de windows donde iremos a los archivos bajados de la sección de download "Drivers CRC" y accederemos a la url donde se encuentre. Pulsaremos sobre el botón "Aceptar" del explorador y a continuación al botón "Siguiente" de la ventana del asistente. 7

Proceso de instalación Para asegurarnos que nuestro puerto serie de comunicaciones ha sido correctamente instalado tendremos que acceder al administrador de dispositivos que se encuentra en: Inicio -> Panel de Control -> Sistema -> Hardware -> Administrador de dispositivos USB en ISIS Proteus versión 7.0 ya incorpora herramientas de simulación de circuitos con USB El dispositivo se denomina: USBCONN, el cual permite conectar y desconectar el bus Y el visualizador llamado analizador de transiciones USB 8

USB en ISIS El conector USBCONN permite conectar y desconectar el bus. Proteus incorpora los drivers necesarios para la simulación. Para instalarlos hay que ir a Inicio>programas>Proteus 7 professional>virtual usb>install usb drivers. USB en CCS C La versión del compilador para poder compilar programas realizados con el PIC18F4550 es la 4.013 9

USB en CCS C Las librerias que suministra son: Pic_usb.h: driver de capa hardware de la familia PIC16C765 Pic_18usb.h: driver de la capa hardware de la familia PIC18F4550 Usbn960x.h: driver de capa hardware para el dispositivo externo USBN9607/04. De esta forma se puede utilizar el bus USB con cualquier PIC Usb.h: Definiciones y prototipos utilizados en el driver USB Usb.c: El USB stack, que maneja las interrupciones USB Usb_cdc.h: driver que permite utilizar una clase de dispositivo CDC USB emulando un dispositivo RS232 y lo muestra como un puerto COM en Windows USB en CCS C Las funciones más importantes son: Usb_init(): Inicializa el hardware USB. Espera en un bucle infinito hasta que el periférico USB es conectado al bus (aunque eso no significa que ha sido enumerado por el PC). Habilita y utiliza la interrupción USB. Usb_task(): Si se utiliza una detección de conexión para la inicialización, entonces se debe llamar periódicamente a esta función para controlar el pin de detección de conexión. Cuando el PIC es conectado o desconectado del bus, esta función inicializa el periférico USB o resetea el USB stack y el periférico. Usb_enumerated(): Devuelve un TRUE si el dispositivo ha sido enumerado por el PC y, en este caso, el dispositivo entra en modo de operación normal y puede enviar y recibir paquetes de datos. 10

USB en CCS C Las funciones específicas para CDC son: Usb_cdc_putc(c): Es idéntica a put( c) y envía un carácter. Coloca un carácter en el buffer de transmisión; en el caso de que esté lleno esperará hasta que pueda enviarlo. Usb_cdc_getc( c): Es idéntica a get( c) y lee un carácter. Recibe un carácter del buffer de transmisión; en el caso de estar vacío esperará hasta que se reciba. USB en CCS C Ejemplo de programa: Drectivas del preprocesador: #include <18F4550.h> #fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN #use delay(clock=48000000) #include <usb_cdc.h> Programa principal: main() {.. usb_cdc_init(); // Inicializar puerto usb como conexión puerto serie usb_init(); // Inicialización general usb do { usb_task(); // Inicializar o resetear la conexión para ello hacemos una llamada periódica if (usb_enumerated()) // Para comprobar que ha sido enumerado por el Host (PC) {.... } while (1); } 11

USB en CCS C 12