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 el gran tamaño de estos componentes (interruptor DIP combinado con IC de expansión de E/S), así como la interfaz de usuario bastante tediosa. ¿Hay interruptores DIP o algo que tenga 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 ser alterado mecánicamente de forma 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 informació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 responder, los votos de la comunidad deberían decidir qué es útil y qué no. Si tienes el mismo problema que yo, revisa todas las respuestas.
En primer lugar, un interruptor "DIP" no tiene que ser grande. Aquí hay un interruptor SMD de 6 bits con pines de gancho en J y un paso de 1,27 mm:
Si está desesperado por reducir el espacio ocupado y puede incomodar un poco al usuario, podría usar un potenciómetro conectado a un convertidor A/D. Dado que necesita 64 configuraciones, un convertidor de 12 bits debería 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:
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 al configurar 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, yo los consideraría iguales.
Además, probablemente no usaría ese trimmer de 2 por 2 mm, pero hay miles de trimpots diferentes.
¿Tienes un ADC de repuesto?
Si tiene un ADC de 8 bits de repuesto en un microcontrolador cercano, probablemente podría deshacerse del expansor de IO en favor de una red de resistencias, 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 E/S de propósito general tiene?
Si puede arreglárselas con menos líneas de E/S, ¿quizás pueda deshacerse del expansor de E/S y usar las que tiene? Puede multiplexar los conmutadores en menos de seis líneas de E/S. De hecho, si tiene espacio para 3 diodos y su microcontrolador tiene pines de tres estados, puede manejarlo con solo 3 pines.
¿Tus usuarios pueden manejar algo un poco técnico?
Si sus usuarios pueden seguir las instrucciones y la configuración solo cambia en raras ocasiones, 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 capacitor. Debería poder distinguir 64 valores de resistencia, lo que podría ser complicado con el último enfoque. Y, por supuesto, sus usuarios necesitarán tener a mano los valores de resistencia/estilos de caja correctos.
Uno o más interruptores giratorios codificados son lo que está buscando.
Teóricamente , los puentes ofrecen más configuraciones cuando se requieren cientos de opciones porque los usuarios pueden acortar cualquier número de ellos en diferentes configuraciones, agregar resistencias, capacitores, diodos, etc. ¡pero eso es muy técnico para los usuarios y para que la placa lo descifre!
NFC NTAG de NXP + teléfono inteligente. Es básicamente una EEPROM I2C, que también se puede leer y escribir a través de NFC sin alimentación del sistema.
Mientras investigaba esto, obtuve una recomendación para los interruptores codificados giratorios. Su huella es comparable a un interruptor DIP de paso de 1,27 mm equivalente en bits. Aunque, en mi opinión, ofrecen interfaces de usuario muy superiores en comparación con los interruptores DIP/SIP.
En lugar de tener que convertir un número decimal o hexadecimal a binario y accionar un montón de pequeños interruptores, simplemente puede girar 1 o 2 de estos interruptores giratorios y trabajar con números hexadecimales. Es mucho más fácil decirle a un usuario que "ingrese" E6 que indicarle que active muchos interruptores en un patrón específico.
¡Muchas opciones geniales aquí! Uno más un tanto oscuro: use un receptor IR y luego use un control remoto de TV o una computadora para transmitir la configuración. Así es como lo hacen las luces RGB.
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.
Girar el codificador cambiará entre modos.
Probablemente tampoco ahorre mucho espacio: su codificador típico tiene un eje de 6 mm y también necesita espacio para los LED.
El solo 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 etiquetar será difícil.
Solo lea su comentario @Trevors answer, por lo que este enfoque también es inútil.
Tres opciones.
Cosa análoga. Un divisor de voltaje ajustable. El usuario proporciona sus propias resistencias de rango estándar del 5 % para establecer el valor.
PWM. Un circuito de estilo PWM o RC opto aislado con 64 pasos que lee su dispositivo. Se pueden alimentar por separado o desde la misma fuente, pero dado que está optoaislado, su dispositivo no estará encendido. Puede deshabilitar el circuito PWM después del arranque.
Digital. Un potenciómetro digital con control de botón pulsador. Nuevamente, el circuito se puede alimentar independientemente de su dispositivo.
Siempre puede mostrar el I2C u otra interfaz, tal vez USB, y dejar que el usuario conecte su teléfono con una aplicación personalizada que le permita configurar alguna dirección EEPROM interna.
Sin embargo, usar una aplicación de teléfono puede ser bastante problemático. Necesitará admitir la aplicación y mantenerse actualizado con las últimas tecnologías, y deberá admitir muchos proveedores de teléfonos.
O puede proporcionar un "Dongle" personalizado que se conecte y le permita hacer algo similar.
Pero dudo que te ahorre mucho espacio.
Si tiene otras entradas de usuario, digamos dos o tres botones y algún tipo de indicador, también es posible, con la entrada adecuada del usuario en los botones (mantener presionado el tiempo, etc.), poner el dispositivo en un modo de programación y configurarlo. de esa manera. Lo mismo que se ve en electrodomésticos como termostatos, ablandadores de agua, computadora de lata, etc.
Puedes hacer muchísimas cosas con dos o tres botones y un LED.
Si necesita configurarse mientras no está encendido, está prácticamente atascado con interruptores o puentes.
chupacabras
tubo
brahans
timonsku
Spehro Pefhany
phil escarcha
como se llama
brian carlton