ENCICLOPEDIA DE RADIOELECTRÓNICA E INGENIERÍA ELÉCTRICA Conexión de una gran cantidad de botones a una entrada de microcontrolador. Enciclopedia de radioelectrónica e ingeniería eléctrica. Enciclopedia de radioelectrónica e ingeniería eléctrica. / diseñador radioaficionado La idea de la solución propuesta fue presentada en [1]. Su esencia es conectar la cantidad máxima de sensores de contacto (interruptores de láminas, botones) al microcontrolador utilizando la cantidad mínima de sus salidas. Esta idea se implementó utilizando el temporizador universal KR1441VI1. El circuito RC de puesta en hora del temporizador está formado por un condensador y un conjunto de resistencias conectadas en serie con cada botón. Cierto botón cerrado corresponde a su propia frecuencia de pulsos generados por el temporizador, que es medido por el microcontrolador [2]. La versión original tiene dos inconvenientes significativos. Uno de ellos es el uso de dos entradas de microcontrolador. Los pulsos generados se aplican a uno de ellos. El segundo sirve para determinar si el botón está cerrado, aunque esto se puede hacer fácilmente por software, por lo que esta entrada del microcontrolador se puede utilizar para otros fines. Otra desventaja es la medición de la frecuencia y no del período de repetición del pulso. Como resultado, para obtener una dependencia lineal de la frecuencia del número de botón, se utilizó una gran cantidad de resistencias de ajuste de tiempo de diferentes clasificaciones.
La solución técnica propuesta, cuyo esquema se muestra en la Fig. 1 está libre de estas deficiencias. El temporizador KR1441VI1 de la estructura CMOS (análogo del LMC555) opera en modo autooscilante con un ciclo de trabajo de 2 [3]. En este modo, el período de repetición del pulso es igual a T = 2 ln2 C R, donde C y R son, respectivamente, la capacitancia y la resistencia de los elementos del circuito de temporización. Con C = C1 y R = R1 N, formado por N (según el número de botones) resistencias idénticas con resistencia R1 conectadas en serie, el período T es igual a: T≈1,39 C1 R1 N Se obtiene proporcional al número de resistencias entre el condensador C1 y el primer botón cerrado SB1 - SB32 y puede medirse fácilmente por el microcontrolador. Como en la fuente original, cuando se cierran varios botones a la vez, tiene prioridad el que tiene un número más bajo. Se necesita la resistencia R38 para mantener la generación de pulsos cuando todos los botones están abiertos. La resistencia de corte R35 establece la relación del período de oscilación del temporizador y la duración del intervalo de medición formado por el microcontrolador, necesarios para determinar correctamente el número del botón presionado. El programa de demostración del microcontrolador por interrupción IRQ0 mide la duración del período T, lo traduce en un número de botón y lo muestra en la pantalla LCD MT-16S2S [4]. La comunicación entre el microcontrolador y la pantalla LCD se organiza a través de una interfaz serial de tres hilos. Solo cuatro salidas del microcontrolador están ocupadas por la entrada y salida de información, el resto se puede utilizar para otros fines. Para medir el período se utilizó un temporizador-contador 0 de ocho bits del microcontrolador. De acuerdo con la diferencia de nivel ascendente en la entrada de la solicitud de interrupción IRQ0, el programa lee la duración del período medido y reinicia el registro de conteo. Para mejorar la precisión de la medición, también se restablece el preescalador del contador. Dado que el preescalador de todos los temporizadores/contadores en los microcontroladores ATtiny es común, esto puede afectar la duración de los intervalos de tiempo generados por el temporizador/contador 1 cuando se usa con un preescalador que no sea uno. Cuando los contactos de todos los botones están abiertos, el contador que mide el período se desborda. De acuerdo con la interrupción correspondiente, se determina el estado abierto. El número máximo de botones reconocidos depende de la inestabilidad de los intervalos de tiempo formados por el temporizador y el microcontrolador. Al sincronizar el microcontrolador desde un generador RC interno y usar un condensador de película con un TKE pequeño, resistencias con un TCR pequeño y una desviación del valor nominal de no más del 1%, la cantidad de botones puede llegar a 12-16 en el tiempo circuito RC. Con una selección más precisa de resistencias, se reconocieron 32 botones. La estabilización de la frecuencia del generador de reloj del microcontrolador mediante un resonador de cuarzo puede permitir aumentar aún más su número. El diseño del dispositivo utiliza un condensador de película importado C1 (analógico K73-17) y resistencias R1 - R32 para montaje en superficie CR1206-FX-5621ELF con una resistencia de 5,62 kOhm ± 1%. De las 50 resistencias de una cinta, se seleccionaron 32 piezas con una diferencia entre la resistencia máxima y mínima de no más de 20 ohmios. Para reducir la influencia en el período de oscilación de la dependencia del voltaje de salida del temporizador DA1 en el número de resistencias conectadas R1-R32, las resistencias con menor resistencia tienen números de posición más bajos y las salidas del temporizador 3 y 7 están conectadas entre sí. La resistencia de ajuste R35 debe ser multivuelta, por ejemplo, SP5-3 o similar. El ajuste se realiza de la siguiente manera. Cierre el botón con una posición número uno menos que el máximo (en este caso, SB31) y busque dos posiciones del motor de resistencia de sintonización R35, correspondientes a un cambio en las lecturas de la pantalla LCD de 31 a 32 y de 31 a 30. Configure el motor al medio entre las posiciones encontradas.
La verificación del dispositivo y la depuración del programa del microcontrolador se realizaron en el diseño que se muestra en la fig. 2. Los bytes de configuración del microcontrolador se programaron de la siguiente manera: bajo - 0xBF, alto - 0xD4, adicional - 0xFF. Dado que no se encontró la cantidad requerida de botones para el diseño, tuvimos que usar el interruptor PP7-4LV en su lugar. Las resistencias de montaje en superficie se sueldan directamente en los tableros de interruptores. Con resistencias seleccionadas en condiciones ambientales, la cantidad de contactos de interruptores cerrados se determinó correctamente, aunque el microcontrolador funcionó desde un generador RC interno. El programa del microcontrolador se puede descargar desde ftp://ftp.radio.ru/pub/2016/11/key-tx.zip. Literatura
Autor: S. Ivanov Ver otros artículos sección diseñador radioaficionado. Lee y escribe útil comentarios sobre este artículo. Últimas noticias de ciencia y tecnología, nueva electrónica: Máquina para aclarar flores en jardines.
02.05.2024 Microscopio infrarrojo avanzado
02.05.2024 Trampa de aire para insectos.
01.05.2024
Otras noticias interesantes: ▪ Controlador universal GP-LC7028-Q5D ▪ El plástico se convierte en hongos comestibles ▪ Los elefantes no le temen a los ratones, sino a las abejas ▪ Enrutador ASUS RT-AC3200 3200 Mbps Feed de noticias de ciencia y tecnología, nueva electrónica
Materiales interesantes de la Biblioteca Técnica Libre: ▪ sección del sitio Transporte personal: terrestre, acuático, aéreo. Selección de artículos ▪ artículo de Wilhelm Bush. Aforismos famosos ▪ artículo La Casa del Viajero. Consejos de viaje ▪ artículo Antenas de banda ancha simples. Enciclopedia de radioelectrónica e ingeniería eléctrica.
Deja tu comentario en este artículo: Todos los idiomas de esta página Hogar | Biblioteca | Artículos | Mapa del sitio | Revisiones del sitio www.diagrama.com.ua |