Cableando un botón momentáneo a USB

0

Por favor, perdona mi falta de conocimiento ya que todo esto es MUY nuevo para mí ... perros viejos y trucos nuevos y todo;)

Quiero conectar un cable USB a un simple botón momentáneo para usarlo como un botón de pulsar para hablar. He hecho algunas cosas LIGHT FIT; cuadros de botones construidos con tablas de latencia cero y similares, pero no estoy seguro de cómo encontrar esta respuesta. Heck, no estoy muy seguro de cómo buscar la pregunta.

El botón es 2 puntas por supuesto. No quiero utilizar una placa (aprender arduino ahora, pero no hay espacio para una tabla en su proyecto) si se puede evitar, pero preferiría simplemente tener el botón conectado al cable y enchufarlo para tener Windows Reconocerlo como un botón.

¿Puedo simplemente conectar este botón a un cable USB? Si es así, ¿qué ocupa las 2 posiciones restantes en el conector USB (pines de datos, en mi opinión) en todo caso? No quiero hacer explotar mi PC recién construida;)

Gracias de antemano por entretener mi ignorancia.

    
pregunta Darksider72

3 respuestas

2

No, el USB no admite simplemente la conexión de un interruptor a través de los pines. USB utiliza un complejo protocolo de comunicación que requiere un chip.

Dicho esto, podría realizar una detección de contacto simple utilizando un chip FTDIchip.com FT232 en el modo gpio bitbang; Estos están ampliamente disponibles y tienen un soporte de software decente. Pero no hay forma de detectar un simple cierre de interruptor sin ningún circuito adicional. He leído las especificaciones de usb.org No se parece en nada a los antiguos puertos paralelos de la impresora.

    
respondido por el MarkU
2

Lamentablemente, no puede conectar un botón directamente a un cable USB. Esto no funcionará. Necesitará una MCU para monitorear su botón y comunicarse a través de USB. Usar algo como un ATmega32u4 que tenga un transceptor USB incorporado funcionaría. Dale a este tutorial de sparkfun una lectura.

Tenga en cuenta que no está limitado a usar la placa sparkfun. Elegí ese tutorial porque es compatible con Arduino. Podría usar una MCU diferente que tenga un transceptor USB.

También investigaría la diferencia entre un puerto COM virtual a través de USB (que proporciona un enlace en serie entre su MCU y la PC) y un USB configurado como un HID (Dispositivo de interfaz humana). Para su aplicación, me imagino que le gustaría emular un teclado (HID).

    
respondido por el Daniel
-1

Hay una forma sencilla de administrar un botón en un puerto USB sin un dispositivo completo con protocolo USB completo. Todo lo que necesita es jalar el cable D + a 3.3V a través de una resistencia de 1.5k con su botón. Puede obtener 3.3V de VBUS (cable rojo) con algún límite de un diodo Zener de 3.3 - 3.6 V. Esto generará un evento de "conexión" en el puerto USB, y el sistema intentará averiguar qué está conectado. Entonces no podrá obtener ningún descriptor y aparecerá un mensaje de error.

Luego, debe encontrar una forma de interceptar este mensaje de Windows que diga algo como "dispositivo no reconocido" (creo que los scripts de VBA tienen medios para hacerlo). Y activa tu aplicación desde allí.

ADDENDUM: Lo anterior fue una idea realmente descabellada. En casos como el OP, generalmente recomiendo el chip multifuncional MCP2221 (puente UART / I2C), que también tiene pocos GPIO, e incluso ADC / DAC, todos con bibliotecas en el lado del host para administrar los pines. El dispositivo USB completo puede caber en un área de 10 x 10 mm y puede colocarse completamente en el sobremoldeado del conector USB. No es demasiado rápido y las bibliotecas pueden no estar en formato de Visual Studio 2017, pero de todos modos.

    
respondido por el Ale..chenski

Lea otras preguntas en las etiquetas