¿Existe algún controlador de E / S USB deslizable?

1

Necesito controlar 17 salidas digitales y 1 entrada digital del software que se ejecuta en una PC genérica. Las dos interfaces que puedo esperar tener siempre disponibles son USB y Ethernet. No necesariamente necesito acceso de baja latencia a los puertos de E / S, y solo tengo que leer las entradas una vez cada pocos segundos, pero necesito alternar las salidas a intervalos precisos intervalos .

Para lograr esto, pensé que el mejor enfoque sería obtener un MCU genérico y de bajo costo con 18 pines IO y compatibilidad con USB, y programarlo para que acepte un búfer de comandos sencillos con sello de tiempo a través de USB, lo cual Haga cola y luego ejecute en los momentos adecuados. Las instrucciones se traducirían al inglés como: At +1.2s: output 1100101 00000100 0000 o At +1.3s: read inputs .

Luego me di cuenta de que lo que estaba por crear es totalmente genérico: se puede usar en cualquier aplicación, no solo en la mía. Esto me hizo pensar que algo como esto ya podría existir como un producto disponible comercialmente (un conector USB y MCU soldados a una tarjeta con orificios para las E / S). Pero no puedo encontrarlo, y no estoy seguro de qué palabras clave buscar. ¿Alguien sabe si puedo comprar algo como esto?

Editar: Después de hacer esta pregunta, encontré esta publicación relacionada: USB al módulo GPIO

    
pregunta Ponkadoodle

2 respuestas

3

Lo que estás describiendo allí es conocido como una Junta de Desarrollo de Microcontroladores. Hay muchas marcas diferentes alrededor.

El más común se llama Arduino (hecho en Italia) y consiste en una MCU Atmel (hay otras disponibles) en una PCB con una interfaz USB (normalmente otra MCU Atmel que actúa como una interfaz USB CDC / ACM para el puerto UART principal de la MCU).

Otros fabricantes de placas similares incluyen chipKIT (que usa el microcontrolador PIC32), Maple (que usan chips ST Micro ARM), así como los fabricantes de chips que los fabrican (como la serie de tablas Launchpad de Ti).

La mayoría de ellos están programados en C ++ usando una API semi-estándar (la API de Arduino se considera el estándar, y la mayoría de los demás lo intentan y emulan bastante cerca), pero algunos de ellos también proporcionan BASIC para la programación en también.

También hay tablas "más grandes", como la Raspberry Pi y la Beaglebone, que ejecutan una versión completa de Linux (también están disponibles algunos otros sistemas operativos), y con frecuencia ofrecen Ethernet (y / o WiFi). ) las interfaces así como las USB.

Las tablas varían en precio, desde unos pocos dólares (como el Launchpad, la mina IIRC cuesta $ 4.50 incluyendo la entrega) hasta $ 50- $ 100, como el Beaglebone.

Si está buscando algo menos programable, hay módulos basados en el chip FT285R disponibles. Este es un chip FIFO de USB a paralelo, al que se envían bytes y el valor equivalente de 8 bits se genera en 8 pines IO. También se puede utilizar como 8 entradas si lo desea. Eso significaría que toda la programación se haría en la PC, ya que el chip no es programable de ninguna forma.

    
respondido por el Majenko
0

Hardkernel ofrece una placa USB IO por $ 15. Si bien no parece admitir el tipo de almacenamiento en búfer descrito en la pregunta, sí admite salidas SPI, UART e I2C, así como (2) entradas ADC y PWM. Se basa en un PIC18F45K50 y parece tener 26 E / S utilizables.

El firmware para el chip también se puede reprogramar a través de la interfaz USB, por lo que sería posible parchear el firmware predeterminado para admitir comandos de marca de tiempo. Puede encontrar más información aquí .

    
respondido por el Ponkadoodle

Lea otras preguntas en las etiquetas