Alternativas a un interruptor DIP clásico

10

Estoy buscando una parte que permita a un usuario cambiar con frecuencia una configuración. En este momento estoy utilizando un interruptor DIP SMD conectado a un expansor de E / S I2C.

Lo que me molesta es la gran huella de estos componentes (interruptor DIP combinado con IO expansor IC) y la interfaz de usuario bastante tediosa. ¿Hay interruptores DIP o algo que cumple la misma función con la que puedo hablar a través de un bus digital como I2C para leer su estado?

También estoy abierto a enfoques completamente diferentes. Todo lo que necesito es algo que pueda modificarse mecánicamente de manera permanente y que permita al menos 64 estados diferentes. Es importante que la configuración se pueda realizar cuando el circuito no está encendido y proporciona retroalimentación visual de la configuración exacta al usuario. La única forma en que estaría bien encender el circuito es si la configuración y la retroalimentación visual son independientes sin la necesidad de control desde un microcontrolador o SoC.

La pregunta está algo relacionada con esta pregunta de hace 6 años: reemplazo del interruptor DIP

Editar: Hay algunas sugerencias excelentes en las respuestas y creo que dejo esta pregunta sin respuesta, los votos de la comunidad deberían decidir qué es útil y qué no. Si tiene el mismo problema que yo, revise todas las respuestas.

PTS
fuente
Si desea que sea elegante, conecte el módulo Bluetooth y configure todos los interruptores a través del teléfono inteligente.
Chupacabras
8
Mi primer pensamiento es que no es la huella real lo que hace que un interruptor DIP sea grande; Son los interruptores reales. Pasar a un protocolo en serie no necesariamente lo haría más pequeño.
tubería
3
¿Podría enseñarles a los usuarios a contar en Hex y usar uno o dos de estos ?
Brhans
Bueno, me gustaría deshacerme del multiplexor I2C / expansor de puertos. Si es solo el interruptor DIP, estaría bien. Entonces, si hay algo como "interruptor DIP digital", sería genial.
PTS
44
¿Cuánto más pequeño que un paquete pequeño de 6 interruptores espera que pueda hacerse antes de que ya no sea manipulable mecánicamente?
Phil Frost

Respuestas:

19

Puede usar un interruptor SIP en lugar de un DIP. El ahorro en el área de la placa le daría el espacio para su interfaz I2C (o una interfaz más simple como un registro de desplazamiento con pestillo de entrada):

ingrese la descripción de la imagen aquí

La imagen lo muestra horizontal pero en realidad se monta verticalmente.

Finbarr
fuente
De hecho, son agradables y los estoy considerando para mi diseño, aunque en una placa SMD multicapa es un poco difícil usar uno de estos sin bloquear un área grande para el enrutamiento.
PTS
1
Puede haber versiones SMD. Los paquetes SMD SIP generalmente tienen pies escalonados.
Passerby
SMD podría ser un desafío, Apem (quien hace el que está en la foto) no los hace, no recuerdo haberlos visto en ningún otro lado. Normalmente los tengo cerca del borde de la PCB donde el enrutamiento no siempre es tan crucial.
Finbarr
9

"Dip switch

En primer lugar, un interruptor "DIP" no tiene que ser grande. Aquí hay un interruptor SMD de 6 bits con clavijas de gancho en J y un paso de 1.27 mm:

CHS-06TAingrese la descripción de la imagen aquí

Potenciómetro

Si está desesperado por reducir la huella y puede molestar un poco al usuario, puede usar un potenciómetro conectado a un convertidor A / D. Dado que necesita 64 configuraciones, un convertidor de 12 bits debe tener un margen de resolución más que suficiente para discernir entre los pasos, dados algunos filtros y umbrales eléctricos y de software. Aquí hay una solución de 2 por 2 mm:

PVF2A

Sin embargo, nunca he visto un potenciómetro analógico con 64 retenes físicos. Esto significa que no tendrá ningún comentario táctico confiable para el usuario cuando configure el dispositivo. También es difícil encontrar de manera confiable la configuración correcta en el arranque, ya que se puede dejar justo en un umbral entre dos configuraciones: almacenaría la configuración anterior en una EEPROM, y si el potenciómetro está lo suficientemente cerca del valor almacenado en el arranque, I los consideraría iguales.

Además, probablemente no usaría esa recortadora de 2 por 2 mm, pero hay miles de trimpots diferentes.

tubo
fuente
Interesante idea con el potenciómetro. Aunque la retroalimentación visual de la configuración exacta sería importante.
PTS
Están disponibles mini codificadores rotativos, de perfil similar a un potenciómetro de corte pero con salidas binarias, generalmente 4 bits / 16 pasos marcados 0-F con retenes claros.
John U
@JohnU Necesita dos de esos, lo que lleva a una solución más grande.
tubería
Dos de ellos (tal vez verticales en lugar de planos) podrían facilitar el embalaje.
John U
@PTS Si ya hay algún tipo de pantalla disponible en su dispositivo, puede abusar del software para leer el valor y mostrarlo. Suponiendo que ya tenga algún tipo de menú de configuración cargado, esto tampoco necesita ser mucho trabajo. Por supuesto, no podrá leer la pantalla mientras el dispositivo esté apagado.
Mástil
9

¿Tienes un ADC de repuesto?

Si tiene un ADC de 8 bits de repuesto en un microcontrolador cercano, probablemente podría deshacerse del expansor IO en favor de una red de resistencia, ya sea una escalera R-2R o una escalera ponderada binaria. Eso codificaría las posiciones del interruptor como un nivel analógico. Las escaleras de resistencia están disponibles en paquetes muy pequeños, pero no sé si obtendrá una más pequeña que su expansor I2C.

¿Cuántas líneas de propósito general IO qué tiene?

Si puede sobrevivir con menos líneas IO, ¿tal vez pueda deshacerse del expansor IO y usar las que tiene? Puede multiplexar los interruptores en menos de seis líneas IO. De hecho, si tiene espacio para 3 diodos y su microcontrolador tiene pines tristados, entonces puede manejarlos con solo 3 pines.

¿Pueden sus usuarios administrar algo un poco técnico?

Si sus usuarios pueden seguir las instrucciones, y la configuración solo cambia raramente, podría tener terminales abiertos donde puedan colocar una resistencia. Mediría la resistencia con un ADC, o midiendo la constante de tiempo que produce contra un condensador. Debería poder distinguir 64 valores de resistencia, lo que podría ser complicado con este último enfoque. Y, por supuesto, sus usuarios necesitarían tener a mano los valores de resistencia / estilos de caja correctos.

Jack B
fuente
Con las resistencias, también puede hacer 2 resistencias, luego solo necesita un convertidor A / D de 4 bits y necesita menos cantidad de resistencias para distribuir, por lo que ahorra el precio
Ferrybig
Reescribí mi pregunta. No es necesariamente el tamaño del interruptor DIP lo que me preocupa, sino la necesidad del componente adicional en forma de un expansor de E / S. Además de mi autobús I2C, solo me quedan 3 IO.
PTS
Tres líneas IO de tres estados son suficientes para direccionar seis conmutadores. En general, puede direccionar n ^ 2-n interruptores con n líneas IO yn diodos. ¿Debo agregar un esquema?
Jack B
7

Uno o más interruptores rotativos codificados son lo que está buscando.

Teóricamente, los puentes ofrecen más configuraciones cuando se requieren cientos de opciones porque los usuarios pueden combinar cualquier cantidad de ellas en diferentes configuraciones, agregar resistencias, condensadores, diodos, etc. ¡Pero eso es muy técnico para los usuarios y para que la placa descifre!

Graeme Wicksted
fuente
Lo siento, debo haber perdido tu respuesta cuando agregué la mía. De hecho, son una gran alternativa a los interruptores DIP.
PTS
4

NFC NTAG del teléfono inteligente NXP +. Básicamente es una EEPROM I2C, que también se puede leer y escribir sobre NFC sin alimentación del sistema.

filo
fuente
2

¡Muchas opciones geniales aquí! Uno más oscuro: use un receptor de infrarrojos y luego use un control remoto del televisor o una computadora para ver la configuración. Así es como lo hacen las luces RGB.

Dithermaster
fuente
1
IR proporciona un poco de energía, por lo que podría funcionar cuando el dispositivo en sí no está alimentado, pero ¿cómo se daría cuenta de eso en el hardware?
MSalters
2

Mientras investigaba esto, recibí una recomendación para interruptores codificados rotativos. Su huella es comparable a un interruptor DIP de paso de 1,27 mm equivalente. Aunque en mi opinión, ofrecen interfaces de usuario muy superiores en comparación con los conmutadores DIP / SIP.

En lugar de necesitar convertir un número decimal o hexadecimal a binario y mover una tonelada de pequeños interruptores, simplemente puede girar 1 o 2 de estos interruptores rotativos y trabajar con números hexadecimales. Mucho más fácil decirle a un usuario que "ingrese" E6 que ordenarle que active muchos interruptores en un patrón específico.

ingrese la descripción de la imagen aquí

PTS
fuente
1

Un enfoque diferente podría ser un codificador rotatorio, una EEPROM y 6 LED pequeños.

El estado se guarda en la EEPROM y los LED indican el modo seleccionado actual.

Girando el codificador cambiará entre modos.

Probablemente tampoco ahorre mucho espacio: su codificador típico tiene un eje de 6 mm y luego también necesita espacio para los LED.

El simple uso de un solo interruptor giratorio no parece prometedor. Con 64 posiciones, terminaría con poco menos de 6 ° por posición, sintiendo que o el etiquetado se volverá difícil.


Simplemente lea su comentario @Trevors answer, por lo que este enfoque también es inútil.

Arsenal
fuente
Sin embargo, gracias de todos modos, su idea al menos no requeriría que se inicie todo el sistema. Agregué eso como una forma aceptable de la pregunta.
PTS
Sin embargo, un pequeño botón con los LED para ciclismo podría funcionar. Apuesto a que esa es la forma en que utilizan para reprogramar tricorders en Star Trek TNG
PlasmaHH
1

Tres opciones

  1. Término análogo. Un divisor de voltaje ajustable. El usuario suministra sus propias resistencias de rango estándar del 5% para establecer el valor.

  2. PWM Un circuito de estilo optoaislado PWM o RC con 64 pasos que su dispositivo lee. Se pueden alimentar por separado o desde la misma fuente, pero como está optoaislado, su dispositivo no estará encendido. Puede deshabilitar el circuito PWM después del arranque.

  3. Digital. Un potenciómetro digital con control de botón. Nuevamente, el circuito puede ser alimentado independientemente de su dispositivo.

Transeúnte
fuente
1

Codificadores de la rueda del pulgar? Estos van de 0 a 9, son apilables y tienen salidas binarias:

Codificadores de ruedecilla

Peter
fuente
2
¿Es esto realmente más pequeño que un interruptor DIP SMD?
tubería
Ay no. Es casi tan grande como mi incapacidad para leer una pregunta simple ... Por favor vote como mejor le parezca. Lo siento por hacerte perder el tiempo.
Peter
0

Siempre puede sacar el I2C u otra interfaz, tal vez USB, y dejar que el usuario conecte su teléfono con una aplicación personalizada que le permite configurar alguna dirección EEPROM interna.

Sin embargo, usar una aplicación de teléfono puede ser bastante problemático. Debería admitir la aplicación y mantenerse actualizado con las últimas tecnologías, y necesitaría admitir muchos proveedores de teléfonos.

O puede proporcionar un "Dongle" personalizado que se conecta y le permite hacer algo similar.

Pero dudo que te ahorre mucho espacio.

Si tiene otras entradas del usuario, digamos dos o tres botones y algún tipo de indicador, también es posible, con la entrada apropiada del usuario en los botones (tiempo de espera, etc.), poner el dispositivo en un modo de programación y configurarlo de esa manera. Lo mismo que se ve en los electrodomésticos como termostatos, ablandadores de agua, computadoras, etc.

Puede hacer muchísimo con dos o tres botones y un LED.

Si necesita configurarse sin alimentación, está atascado con interruptores o puentes.

Trevor_G
fuente
3
Usar una aplicación de teléfono puede ser bastante problemático, ya que los teléfonos son bastante volátiles. Un sistema embebido puede sobrevivir fácilmente entre 5 y 10 generaciones de teléfonos y brindar soporte durante todo el período puede ser problemático.
AndrejaKo
@AndrejaKo buen punto ... buen enuf para un complemento :)
Trevor_G
3
Desafortunadamente, la aplicación requiere que el usuario pueda cambiar la configuración sin tener el circuito encendido, por lo tanto, necesito que sea configurable mecánicamente. Algunas ideas interesantes sin embargo.
PTS
2
@PTS, entonces estás prácticamente atrapado con interruptores o puentes.
Trevor_G