USB y PIC 18F2550 Desarrollo de Proyectos en ASM

March 18, 2018 | Author: isjua | Category: Usb, Microcontroller, Pic Microcontroller, Data Buffer, Bit


Comments



Description

10/11/2014USB y PIC 18F2550 Desarrollo de proyectos en ASM uControl Noviembre 11, 2014, 02:00:33 Bienvenido(a), Visitante. Por favor, ingresa o regístrate. ¿Perdiste tu email de activación? Siempre Ingresar Ingresar con nombre de usuario, contraseña y duración de la sesión Buscar INICIO AYUDA BUSCAR INGRESAR REGISTRARSE uControl > Programación de Microcontroladores > ASM (Moderadores: Leon Pic, Suky) > USB y PIC 18F2550 Desarrollo de proyectos en ASM « anterior próximo » Páginas: [1] 2 3 Ir Abajo Autor IMPRIMIR Tema: USB y PIC 18F2550 Desarrollo de proyectos en ASM (Leído 17599 veces) 0 Usuarios y 1 Visitante están viendo este tema. Moyano Jonathan Amigo de uControl PIC16F Desconectado Mensajes: 602 USB y PIC 18F2550 Desarrollo de proyectos en ASM « : Febrero 16, 2010, 12:03:20 » Hola a todos En esta ocación vengo para empezar a desarrollar entre todos una librería de USB usando el lenguaje ensamblador para la familia de microcontroladores PIC18FXX5X. La razón de esto , es porque hay muchos usuarios que son expertos manejando ASM pero no saben utilizar bien el lenguaje C o lenguajes de alto nivel. También otra razón es que quiero que todos entendamos de una manera más profunda el funcionamiento del módulo USB de la familia microchip...y luego de esto poder "tratar" de implementar la comunicación USB en cualquier microcontrolador... Para empezar a trabajar con el puerto USB del microcontrolador veremos todos los registros del micro asociados con este periférico , su funcionamiento y luego poco a poco comenzaremos a confeccionar los primeros programas. En línea Moyano Jonathan Amigo de uControl PIC16F Desconectado Mensajes: 602 Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #1 : Febrero 16, 2010, 12:43:14 » Bueno para empezar veremos donde están hubicados los pines D- y D+ ( correspondientes a las señales de datos del puerto USB en el PIC18F2550 y en el PIC18F4550) , asi como también los otros pines que intervienen en su funcionamiento. http://www.ucontrol.com.ar/forosmf/programacion-en-asm/usb-y-pic-18f2550-desarrollo-de-proyectos-en-asm/ 1/7 Existe un puerto paralelo para transmitir grandes cantidades de datos (SSP).0) que permite la comunicación rápida entre cualquier dispositivo USB y el microcontrolador PIC®. pero actualmente se ve bien.ar/forosmf/programacion-en-asm/usb-y-pic-18f2550-desarrollo-de-proyectos-en-asm/ 2/7 . « Última modificación: Febrero 16. 2010.0) y “de poca velocidad” (1.receptor interno. utilizando el transmisor . Se proporciona memoria de puerto dual en la memoria de datos del dispositivo (RAM del USB) para tener acceso directo a la memoria desde el núcleo del microcontrolador y desde el SIE. Creo que seremos unos cuantos que vamos a seguir de cerca los post. no lo permite.3V para alimentar el transmisor-receptor interno en aplicaciones de 5V. 01:16:10 » Yo lo puedo ver bien la imagen ahora. El SIE puede interconectarse directamente al USB. ¿podrías chequear los link? Pareces que has ingresado código HTML y la ventana del foro. a los buffer de memoria externos. El PIC tiene un regulador interno de 3. 01:02:19 » Excelente tema Moyano Jonathan. Se han incluido algunas características especiales en el hardware para mejorar el funcionamiento.10/11/2014 USB y PIC 18F2550 Desarrollo de proyectos en ASM Breve descripción del funcionamiento del módulo USB: La familia de dispositivos PIC18FX455/X550 contiene una interfaz serie compatible con el SIE (serial interface engine o máquina con comunicación serie en español) USB “full-speed” (2. Daniel. 2010. Saludos. para esto se ha proporcionado la ayuda de transferencia ininterrumpida de volúmenes de datos grandes. el_vpi Moderador PIC18F Desconectado Mensajes: 1266 Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #3 : Febrero 16. nadie llega al PADRE si no es por mi. 2010. o puede conectarse a través un transmisor-receptor externo..ucontrol.com. 2010. 01:07:50 por Moyano Jonathan » Leon Pic Moderator dsPIC Desconectado Sexo: Mensajes: 5320 En línea Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #2 : Febrero 16. la VERDAD y la VIDA. 02:01:03 » Bueno ahora veremos en detalle como se comunica la SIE con el exterior y las diferentes opciones a nivel conexionado del USB con el exterior: http://www. También se proporcionan unos buffer para que el programador elija libremente el uso de la memoria dentro del espacio de la RAM del USB... 02:16:46 por Leon Pic » En línea Cumulonimbus Jesús dijo. No se si lo arreglo o todavia no. 2010. No logro ver las imágenes. Edito: Ahora puedo verlos. yo soy el CAMINO. « Última modificación: Febrero 16. por ejemplo datos síncronos. En línea Moyano Jonathan Amigo de uControl PIC16F Desconectado Mensajes: 602 Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #4 : Febrero 16. por lo que se verá muy superficialmente.10/11/2014 USB y PIC 18F2550 Desarrollo de proyectos en ASM Antes que nada veremos las notas a las referencias 2 y 3 que están dentro de la inmágen. Nota* 3:El regulador de voltaje de 3.ucontrol. En caso de tener una fuente externa de 3.ar/forosmf/programacion-en-asm/usb-y-pic-18f2550-desarrollo-de-proyectos-en-asm/ 3/7 . por lo que se estudiará también en su momento. tenemos que desactivar el módulo interno del regulador. el fin de este tutorial no es el estudio de los módulos externos . La activación o desactivación de estas resistencias se hace mediante el bit UPUEN.3v conectada a Vusb. podemos usar un transceptor externo.. Algo ¡ Muy importante ! que tenemos que ver es el puente bidireccional entre la SIE y el SSP..después sigo En línea http://www. Aclarar que estas notas son importantes para no cometer equivocaciones a la hora de programar el código que lo configura.3v.. nos provee de tensión al módulo USB en aplicaciones de 3. Vemos en la inmágen los diferentes pines que según configuración de la SIE . pero si queremos usarlas hay que desactivar las propias resistencias de pull .3v.ups externas son opcionales . Ver la siguiente inmágen en donde se muestra dicho puente: Espero les sirva . entonces: Nota* 2:Las pull .que se verá más adelante...com..up internas que tiene el microcontrolador.este puente nos va a permitir el transporte a alta velocidad de grandes flujos de datos en modo sincrono. Para generar un reinicio válido. eliminando errores y certificaciones del USB. Activar este bit setea el módulo y resetea todos los bits PPBI en el Buffer a ‘0’. Así. Hay que tener cuidado de ceder la corriente mínima cuando el dispositivo entre en el modo de suspensión. BIT3: El bit USBEN.Cuando se activa el bit PPBRST. este bit puede utilizarse como una unión/separación al USB.la operación total del módulo USB se controla con este bit. El registro UFCG contiene la mayor parte de los bits que dirigen el comportamiento del módulo USB.Pong se fijan a los buffers intermedios. cuando se utiliza el modo Doble . BIT2: El bit RESUME. BIT1: El bit SUSPND. Este lo bit activa el SIE cuando recibe un SETUP para permitir su procesamiento. se tiene que configurar el módulo del hardware interno y/o externo. tiene que borrarse por firmware. sólo borrar. al despejarlo el SIE continua la transmisión y/o recepción. 2010. BIT4: El bit PKTDIS. El registro contiene los bits que gobiernan lo siguiente: • • • • Permiso del periférico principal del USB Reset de los punteros tipo ping-pong Control del modo al suspender Desactivar la transferencia de paquetes El significado de los diferentes bits se muestra a continuación: BIT7: Bit no implementado se lee como "0" BIT6: El bit PPBRST. todos los buffers Ping . La mayor parte de la configuración se realiza con el registro UCFG. 03:29:08 » Desconectado Mensajes: 602 Registro de configuración del USB: Antes de comunicarse con el USB. Nota:Cuando esté en el modo de suspensión. Este bit también activa el regulador de tensión del chip y conecta las resistencias pull-up.permite al periférico realizar un reinicio ejecutando la señal resume.com.Buffering o modo Ping Pong.Este bit se ignora en los modos de buffer que no usen el buffer ping-pong. este bit debe supervisarse para determinar si las líneas de datos han salido de una condición de single-ended cero (sólo se manda cero). BIT0: Bit no implementado se lee como "0" En línea Moyano Jonathan Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM Amigo de uControl PIC16F « Respuesta #6 : Febrero 16. La salida de control de estos bits permite el monitor de estado y generación de patrones “de ojo”. se encarga de controlar el estado del reset. el bus del dispositivo USB se limita al 500μA de corriente. Ésta es la corriente completa cedida por el dispositivo PIC y su circuito de soporte. Activar este bit antes de un IDLEIF dará lugar a comportamiento imprevisible del bus. 2010.se utiliza para indicar el estado del bus. Este bit no lo puede activar el microcontrolador. Éstos incluyen: • • • • Velocidad del bus (“Alta velocidad” vs “Baja velocidad”) Permiso de las resistencias pull-up del chip Permiso del transmisor del chip Uso del buffer ping-pong El registro UCFG también contiene dos bits que ayudan a probar el módulo. sigue estando el dispositivo unido al bus pero las salidas del transmisor-receptor permanecen en reposo.ar/forosmf/programacion-en-asm/usb-y-pic-18f2550-desarrollo-de-proyectos-en-asm/ 4/7 . Debe borrarse por firmware después de observar una interrupción ACTVIF. Este bit debe activarse por software dentro de la respuesta a una interrupción IDLEIF. Cuando se permite el módulo USB. 1 = prueba del patrón “de ojo” permitido. El bit PPBRST. Cuando este bit está activo. El regulador de tensión del USB se maneja con la configuración de los registros. el módulo necesita preconfigurarse antes de activar este bit. Los registros son: • Registro de control del USB (UCON) • Registro de configuración del USB (UCFG) • Registro de estado de la transferencia del USB (USTAT) • Registro de dirección de dispositivo USB (UADDR) • Registros del número del frame (UFRMH: UFRML) • Registros activadores de los Endpoints de 0 a 15 (UEPN) El primer registro que estudiaremos será el UCON (registro de control del USB): En la siguiente inmágen veremos como está constituido: Este registro de control contiene los bits necesarios para determinar el comportamiento del bus durante las transferencias. http://www.10/11/2014 USB y PIC 18F2550 Desarrollo de proyectos en ASM Moyano Jonathan Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM Amigo de uControl PIC16F Desconectado Mensajes: 602 « Respuesta #5 : Febrero 16.ucontrol. Cualquier acontecimiento pendiente dentro del buffer intermedio todavía estará disponible. 02:57:05 » Estado y control del módulo USB: En total hay 22 registros para manejar las transacciones del USB. 0 = prueba del patrón “de ojo” inhabilitado. El reloj de entrada al SIE se desactiva. si sólo se manda un cero. indicado dentro del registro USTAT en el buffer FIFO. Aunque se ignoran todos los estados y bits de control si este bit está borrado.regulador de tensión) en un modo de baja potencia. BIT 7: UTEYE: Bit de permiso del test patrón “de ojo” del USB. La tensión en el pin VUSB puede variar dependiendo del valor de este bit. si se permiten.es un flag que indica si el SIE ha inhabilitado la transmisión y la recepción de paquetes. Esto ayuda a distinguir el estado de ciclo inicial de la señal de reset del USB. por firmware se debe activar el RESUME durante 10ms y entonces borrar el bit. BIT5: El bit SE0.coloca el módulo y soporte del circuito (es decir. están conduciendo. 1 = señal del UOE* activa. 10:59:20 » Viendo un poco el registro UCFG. En línea Moyano Jonathan Amigo de uControl PIC16F Desconectado Mensajes: 602 Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #7 : Febrero 16. 0 = transmisor del chip activo. Luego tenemos UTRDIS. Estos valores se deben preconfigurar antes de permitir el módulo. No se recomienda cambiar estos ajustes mientras que el módulo esté funcionando. http://www.ar/forosmf/programacion-en-asm/usb-y-pic-18f2550-desarrollo-de-proyectos-en-asm/ 5/7 . el transceptor es desactivado y las lineas C4 y C5 quedan para poder ser usadas como entradas digitales unicamente. En caso de que el bit sea seteado a 1 . indica los intervalos durante los cuales las líneas D+/D. BIT 2: FSEN: Bit de permiso del Full-Speed. la transmisión y las pull-up deben configurase solamente durante la fase de activación del módulo. BIT 1-0 PPB1:PPB0: Bits de configuración de los buffer ping-pong.Up internas del módulo USB o configuraran el módulo USB para trabajar a full . Nota 2: La velocidad del USB. que es un bit de control de estado del USB que vigila los errores y es un generador de patrones. 2: Los bits UPUEN. la interfaz digital del transmisor permitida.speed o slow . según sea su configuración activarán o desactivarán las Resistencias Pull . Este bit nos muestra cuando las lineas D+ y D.10/11/2014 USB y PIC 18F2550 Desarrollo de proyectos en ASM BIT 6: UOEMON: Bit de permiso del monitor OE del USB. 2010.Pong. BIT 4: UPUEN: Bit de permiso del pull-up del chip. requiere un reloj de 6MHz. 0 = señales del UOE* inactivas. 0 = dispositivo de poca velocidad: controla los flancos del transmisor. en donde se encuentra el bit UTEYE. activamos el transceptor y los pines C4 y C5 son usados para conectar el dispostivo USB. 11 = buffers ping-pong permitidos en los End-Points 1 a 15.con FSEN=0).speed. Veamos el circuito lógico que realiza estas acciones y una pequeña tabla donde se muestran las posibles configuraciones. Luego tenemos al bit UOEMON. 1 = Pull-up del chip permitido (pull-up en D+ con FSEN=1 o en D. se ignora. si no. requiere un reloj de 48MHz. 3: Este bit solamente es válido cuando el transmisor del chip está activo (UTRDIS = 0). 1 = dispositivo Full-speed: controla los flancos del transmisor.com. UTRDIS y FSEN no deben cambiarse mientras el módulo USB esté permitido. 10 = buffers ping-pong permitidos en todos los End-Points. la señal UOE* estará activa independiente del ajuste del bit UOEMON. en caso de que el bit sea 0 .están conduciendo y lo que estos valores representan según el siguiente cuadro: Ahora tenemos 2 bit que trabajan de forma conjunta FSEN y UPUEN. 01 = buffer ping-pong permitido en los End-Points de salida 0. 0 = Pull-up del chip desactivado. Por último tenemos los bits de configuración BIT 1-0 PPB1:PPB0: que establecen la configuración del modo Ping . Nota 1: 1: Si se activa UTRDIS.ucontrol. que habilita o deshabilita el transmisor del chip. BIT 3: UTRDIS: Bit inhabilitador del transmisor del chip 1 = Transmisor del chip inhabilitado. 00 = buffers ping-pong inhabilitados. Una vez que se active UTEYE... Se utiliza para depurar los fallos obtenidos por el ruido de las señales que pueden afectar los flancos del sistema.solo programo en asm y esto de usb lo tengo re-lejos . La secuencia se repetirá indefinidamente mientras que el test patrón “de ojo” esté permitido. 2010. asi que estare pendiente de lo Mensajes: 11 que expongas para aprender sobre el tema Salu2 En línea Emiliano Moderador PIC16F Desconectado Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #9 : Febrero 16. 2010. 12:49:15 » Permiso de la salida del monitor del USB: El monitor del USB OE* proporciona información de la operación del SIE si está escuchando el bus o está conduciendo por el bus.com.. el módulo tiene que estar permitido. pero si lo haces realmente lo entiendes" "Cuando llegue la inspiración. Además. En línea HJ Moderador dsPIC Desconectado Sexo: Mensajes: 5460 Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #11 : Febrero 17. 2010. 09:06:24 » Hasta ahora muy clarito.ucontrol. Gracias por compartir !! Sexo: Mensajes: 877 '67 Caprice En línea Moyano Jonathan Amigo de uControl PIC16F Desconectado Mensajes: 602 Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #10 : Febrero 17. Aunque el patrón de ojo no significa que se sustituya la prueba más compleja de certificación del USB. 2010. uniones de impedancias mal hechas y proximidad a otros componentes. 11:27:56 » Gracias por compartir esta informacion .. 2010. 12:37:41 » Muy de a poco desarrollaremos esto del USB en ASM. las resistencias pullup y el modo transmisor. Esto se permite por defecto al usar un transmisor externo o cuando UCFG<6>=1. La salida del patrón “de ojo” dependerá de los ajustes del módulo. el módulo emula un cambio a una recepción para transmitir el estado y comenzará a transmitir una secuencia de bits J-K-J-K (K-J-K-J en “velocidad completa”). Este modo de prueba se utiliza para ayudar con las verificaciones internas de las pruebas de certificación USB. si lo lees lo aprendes. No comprueba correctamente la transición de un estado de recepción a uno de transmisión. 11:59:27 » Buena info Moyano. Permiso del test patrón “de ojo”: Se genera una prueba automática al activar el bit UCFG<7> del patrón “de ojo”. La supervisión del USB OE* es útil para el eliminar errores del sistema inicial. 2010.10/11/2014 USB y PIC 18F2550 Desarrollo de proyectos en ASM En línea om@r PIC10F Desconectado Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #8 : Febrero 16. significando que el usuario es el primer responsable de configurar los ajustes del reloj SIE. 01:00:19 » http://www. Sigue así. Saludos En línea "si te lo dicen se te olvida. que me encuentre trabajando" [Pablo Picasso] Moyano Jonathan Amigo de uControl PIC16F Desconectado Mensajes: 602 Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #12 : Febrero 17. pero ayuda durante el primer test para eliminar errores del sistema. Observar que este bit no se debe activar mientras que el módulo está conectado con un sistema real USB. En línea Moyano Jonathan Amigo de uControl Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #13 : Febrero 17..todo depende de como valla intepretando lo que voy aprendiendo asi lo expongo acá .ar/forosmf/programacion-en-asm/usb-y-pic-18f2550-desarrollo-de-proyectos-en-asm/ 6/7 . Muy bueno el aporte. 20 | SMF © 2011.ucontrol. o igual con el regulador inhabilitado.011s. Nota: La corriente de VUSB es suficiente para controlar un pull-up externo y el transmisor interno. Cabe aclarar que se pueden colocar capacitores de mayor capacidad pero no es necesario ya que con 220nF (±20%) funciona correctamente.3V al pin VUSB para alimentar el transmisor interno. Para que el regulador sea estable se necesita un condensador externo de 220nF (±20%). pero como no tengo ni papa de C siempre me he quedao colgado en los proyectos con usb muchas gracias tio y continua. Si el transmisor interno no se utiliza. me siento identificado con el primer post totalmente. Cuando el regulador está desactivado. 3q) http://www. 06:54:23 » Desconectado Mensajes: 39 POR FIN ¡¡¡¡¡¡¡¡¡¡¡ Tio sigue sigue que esto esta genial. (Pretty URLs adds 0. Simple Machines SMFAds for Free Forums Página creada en 0. la tensión es visible en el pin VUSB. VDD debe ser mayor que VUSB en cualquier momento. En línea IMPRIMIR Páginas: [1] 2 3 Ir Arriba « anterior próximo » Ir a: => ASM ir Powered by SMF 1.204 segundos con 28 consultas. 2010. se tiene que conectar una fuente de 3.ar/forosmf/programacion-en-asm/usb-y-pic-18f2550-desarrollo-de-proyectos-en-asm/ 7/7 . El regulador se activa por defecto y puede inhabilitarse a través del bit de configuración VREGEN. USB en ASM perfect¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ Todo mi apoyo para seguir explicando te escuchamos. Cuando está activo.3V para proporcionar energía al transmisor interno y proporcionar una fuente para el pull-up interno y externo.com.1. VUSB tampoco se activa. no soy ningun experto en asm. En línea caeshark PIC10F Re: USB y PIC 18F2550 Desarrollo de proyectos en ASM « Respuesta #14 : Febrero 22.10/11/2014 USB y PIC 18F2550 Desarrollo de proyectos en ASM PIC16F Desconectado Mensajes: 602 Regulador de voltaje interno: Los dispositivos PIC18FX455/X550 tienen un regulador incorporado 3.
Copyright © 2024 DOKUMEN.SITE Inc.