16FUSB - Un puerto USB 1.1 para la aplicación PIC16F628/628A

Introducción

¿Cuántos desarrolladores de CFP no utilizar el PIC16F628 al menos una vez en la vida? Este fue uno de los microcontroladores más populares jamás lanzado por Microchip. Muchos programadores PIC tuvo sus primeros pasos con este microcontrolador muy popular. De hecho, todavía está en producción y sigue siendo ampliamente utilizado por aplicaciones que no requieren recursos avanzados.

Hoy en día, con la necesidad de utilizar la comunicación a través del puerto USB, PIC 18F4550 y el 18F2550 se están convirtiendo cada vez más popular. Por supuesto, no sólo por su puerto USB, sino también para todos los demás elementos presentes en los chips de la familia 18F. Sin embargo, en algunos de los proyectos más simples pueden ser más interesante usar el viejo 16F628 que puede costar hasta tres veces menos que un PIC18F2550, por ejemplo.

Desde PIC16F628/628A no tienen ningún tipo de interfaz USB, un proyecto que requiere la comunicación con este autobús, en un primer momento, completamente lisiados con este chip. Pero lo que si tenemos una aplicación basada en el firmware de la USB? Eso es exactamente lo que el proyecto que aquí se presenta - 16FUSB - objetivos.

El 16FUSB es una implementación de software de la USB de baja velocidad para el microcontrolador PIC16F628/628A. Todo material de comunicación se realiza por el firmware, descartando completamente la necesidad de utilizar un chip adicional. Desde el núcleo 16FUSB es posible añadir las implementaciones de otros protocolos tales como, por ejemplo, I2C, SPI o datos simples de escritura desde el host USB (PC) directamente a los pines de CFP. Una implementación de USB de baja velocidad de software puede ser una gran alternativa para aquellos que quieren bajar los costos de los proyectos y al mismo tiempo, también no necesita de alta velocidad de transferencia de datos.

El proyecto es de código abierto y está alojado en Google Code, con la dirección: http://code.google.com/p/16fusb . A partir de ahí, se puede descargar el código fuente directamente desde el SVN, así como nuevos productos, actualizaciones y defectos de la pista. Para ello sólo necesitas una cuenta de Google.

Algunas de las ideas aquí presentadas han de inspiración de un diseño similar para los microcontroladores Atmel AVR: El IgorPlugUSB, que se encuentra en el 20% http://www.cesko.host.sk/IgorPlugUSB/IgorPlug-USB (AVR) _eng.htm .

Para entender el funcionamiento del firmware, se describe a continuación, es imprescindible tener conocimientos sobre el protocolo USB, que no será tratado con más detalle aquí. Una descripción directa y bueno se puede encontrar en http://www.beyondlogic.org/usbnutshell/usb1.shtml . El texto es fácil de entender y cubre todos los conceptos fundamentales del protocolo de nivel bajo y alto.




http://www.lendlocus.com/?q=16fusb
 
Última edición por un moderador:
Atrás
Arriba