dispositivo USB con un número de serie y 3 LEDs

1

Estoy buscando una manera de construir una llave USB. Tengo un poco de experiencia con el Arduino, sin embargo, para este proyecto que parece ser un poco excesivo.

La clave debe contener un número de serie único (EEPROM?), ya sea para ser programado o configurado de fábrica (lo que sea más fácil). Además del número de serie, necesito controlar 3 LEDs. Cada LED tiene 3 estados (encendido, apagado y parpadeando).

Se me ocurrió comenzar con un UART TTL USB basado en CP2102 .

Para la EEPROM: AT25010B (SPI) o AT24C01B (I 2 C) o un chip dedicado

El software (linux) debe comunicarse con el puerto RS232 y poder recuperar el número de serie y configurar cada LED en los 3 estados diferentes.

Leí sobre I 2 C y SPI. Parece que SPI es más fácil de controlar, pero necesitas más pines para conectarlo.

Mis preguntas son:

1) ¿Cuál sería el mejor protocolo I2C o SPI (en términos de implementación 'fácil')?

2) Suponiendo que no puede conectar los LED y la EEPROM directamente a la UART. Necesito algún tipo de PIC para facilitar la comunicación. ¿Qué sería un PIC para esto?

No estoy seguro de si es importante pero: una vez que tengo un prototipo en funcionamiento, necesito poder producir por lotes algunos cientos de estos.

    
pregunta Roger

2 respuestas

6

No necesitas una EEPROM externa para esto. En su lugar, obtenga un microcontrolador con EEPROM, que es más pequeño y más fácil de usar, porque ya no necesita un módulo SPI o I 2 C. Además, puede programar fácilmente la EEPROM desde la computadora.

Básicamente, quieres un PIC u otro microcontrolador con:

  • (E) U (S) conexión ART
  • EEPROM
  • 3 pines GPIO para los LED

La mayoría de los fabricantes de microcontroladores tienen una herramienta de selección de piezas. Para microchip, eso es MAPAS . Así es como puedes buscar qué chip necesitas.

Para estos requisitos (muy minimalistas), un chip lo suficientemente pequeño. Eche un vistazo a la PIC12F1822 : 8 pines, XLP si lo necesita, 256 bytes de EEPROM, etc. Este chip tiene solo suficientes pines de E / S para sus tres LED.

Sin embargo, a partir de tu pregunta, parece que eres un principiante en PIC, y tal vez sea un mejor comienzo un chip algo más grande pero más fácil de conectar. Luego, eche un vistazo a la PIC16F88 : tiene todo lo que necesita y más pines de E / S, para más LEDs, si es necesario. Lo divertido del 16F88 es que es más fácil programarlo. Para el 12F1822, ponen todo en una caja pequeña y hay que inicializar todo (¡mucho!) Correctamente, lo que puede ser difícil, especialmente para un principiante. El 16F88 es más fácil para empezar.

    
respondido por el Keelan
4

Es posible que pueda salir con solo un IC serie FTDI USB- > como el FT232R

No he usado una para una aplicación como esta pero la hoja de datos lo dice puede tener un número de serie grabado durante la fabricación (por ejemplo, para usarlo como dongle de seguridad) y el puerto IO se puede configurar para controlar los LED.

El chip FTDI tiene la ventaja de que los controladores son comunes y se admiten en muchas plataformas.

    
respondido por el Craig

Lea otras preguntas en las etiquetas