ESP8266 ADC - múltiples sensores analógicos (2 / 3 paso)

Paso 2: La escritura de multiplexación.

Para multiplexar, sólo un sensor puede tener un circuito completo en un momento. Estableciendo la GPIO para alta, estamos enviando ~3.0v para que el sensor y completar el circuito. Los otros, se establece en baja no envían ningún voltaje. Esto esencialmente crea una conexión a tierra. Ninguna corriente.

Después de enviar el voltaje, leemos el pin ADC e imprimir el valor. También podemos guardar ese valor en una variable.
Este código ' var1 = adc.read(0)' va a funcionar. Entonces podemos manipular el valor y convertir como sea necesario.

Después de leer o guardar la lectura del sensor, nos lo apague y moverse al siguiente sensor.

El retraso no es necesario, pero me hace sentir mejor.

Todos los GPIOs se utiliza con sensores analógicos debe establecerse en baja excepto cuando leerlos.

No hay ninguna razón especial para usar GPIOs 16, 14 y 12. Haría tres. Evitar el uso de GPIO0.

Archivo de código fuente aquí.

___________________________________

--multisensor.lua
-- ---------------

--configurar pines
GPIO.Mode (0, gpio. SALIDA)--GPIO 16
GPIO.Mode (5, gpio. SALIDA)--GPIO 14
GPIO.Mode (6, gpio. SALIDA)--GPIO 12

--Fije todos los pines para bajo - no hay tensión
GPIO.Write (0, gpio. BAJO)
GPIO.Write (5, gpio. BAJO)
GPIO.Write (6, gpio. BAJO)

-imprimir el valor del ADC con los terminales de baja
Imprimir ("\nADC: comienzo ambos GPIOs baja:"... ADC.Read(0))
--Enviar voltaje a 16 GPIO completar el circuito para este sensor.
GPIO.Write (0, gpio. ALTA)
--breve retraso antes de la lectura, 100ms
TMR.Delay(100000)
--Leer el pin ADC o asigne a var varable = adc.read(0)
Imprimir ("\nADC: GPIO 16 alta LDR:"... ADC.Read(0))
--Retomar GPIO 16 bajo, no hay tensión.
GPIO.Write (0, gpio. BAJO)
--breve retardo de 100ms
TMR.Delay(100000)
-Repita para los otros dos sensores.
GPIO.Write (5, gpio. ALTA)
TMR.Delay(100000)
Imprimir ("ADC: GPIO 14 alta temperatura:"... ADC.Read(0))
GPIO.Write (5, gpio. BAJO)
TMR.Delay(100000)
GPIO.Write (6, gpio. ALTA)
Imprimir ("ADC: Slider GPIO 12 alto:"... ADC.Read(0))
GPIO.Write (6, gpio. BAJO)
--otra vez leer ADC, esta lectura debe ser muy cerca de la 'empezar a leer'
Imprimir ("\nADC: final de ambos GPIOs baja:"... ADC.Read(0))

Artículos Relacionados

ESP8266 ADC - sensores analógicos

ESP8266 ADC - sensores analógicos

Los módulos de ESP8266 tienen la capacidad para realizar muchas tareas útiles. Pines GPIO pueden manipularse con base en señales digitales para hacer a todo tipo de cosas útiles.Ampliado el firmware como NodeMCU han hecho que estos módulos muy flexib
Sensores analógicos - calcular la no linealidad introducida por una carga o Pull-Down Resistor

Sensores analógicos - calcular la no linealidad introducida por una carga o Pull-Down Resistor

¿Ha tenido alguna vez esa sensación terrible que añadir una resistencia de carga o 'bajar' a su sensor está arruinando todas las lecturas analógicas?Tal vez te estás preguntando ¿por qué queremos echar a perder un circuito perfectamente bueno poniend
Reloj de alcance: sensor analógico reloj y temperatura en un osciloscopio

Reloj de alcance: sensor analógico reloj y temperatura en un osciloscopio

Scopeclock es un equipo fácil de usar para hacer más útil tu osciloscopio analógico capaz de X-Y. Usando este simple utilizar hardware que puede convertir tu osciloscopio analógico en un reloj de alcance. Este proyecto era yo y mi amigo kshitij gupta
Múltiples entradas analógicas usando un perno de analoge

Múltiples entradas analógicas usando un perno de analoge

¡ Hola!En este instructible voy a explicar cómo leer valores de más de un sensor mediante el uso de solamente una clavija de entrada analógica.Te preguntarás por qué desea esto.Cuando se utiliza un tablero de Nodemcu, como se muestra en la imagen, un
Robot de AAA (autónoma analógico Arduino)

Robot de AAA (autónoma analógico Arduino)

la AAA Robot es un robot perfecto para principiantes. Es versátil, fácil de construir y discute muchos de los temas entre deben aprender, incluyendo pero no limitado a interruptores de transistor, motor de sensores analógicos de nad. Este Instructabl
Arduino: Lectura de voltaje analógico

Arduino: Lectura de voltaje analógico

En esta lección usarás dos resistores - una resistencia estática y una resistencia variable - para crear un divisor de tensión que le permite comprender efectivamente la intensidad de luz detectada por el fotoresistor - esencialmente un medidor de lu
Cómo configurar un portador del chip con Sharp Sensor de distancia analógico GP2Y0A60SZLF

Cómo configurar un portador del chip con Sharp Sensor de distancia analógico GP2Y0A60SZLF

Como empecé tratando de usar este sensor, que tenía algunas dificultades mientras que configurarlo.El problema surge cuando se empieza a convertir el voltaje analógico en distancia. Como pueden o no saben, que el sensor produce una salida de voltaje
Crear un circuito sensor de luz de transpondedor analógico!

Crear un circuito sensor de luz de transpondedor analógico!

Este es un divertido proyecto para asustar a su gato, perro, compañero o vecino. Utiliza fotocélula, o luz, sensores como resistores en un circuito analógico para crear sonidos extraños. Puede usarse cualquier sensor, pero las fotocélulas son baratos
Cómo hacerlo te hacen propio Phidgets analógico Sensor Cables

Cómo hacerlo te hacen propio Phidgets analógico Sensor Cables

Cuando se trabaja con Phidgets de sensores, los cables vienen en un número limitado de longitudes (60cm, 10cm y 350cm). Hay momentos cuando usted necesita un periodo más específico o algo más. Aquí está una manera bastante fácil de hacer su propia!Ca
Estación meteorológica de fácil IoT con múltiples sensores

Estación meteorológica de fácil IoT con múltiples sensores

¡Hola a todos!En este tutorial, te dejaré ver cómo construir una estación del tiempo IOT fácil y barata. Todos los que tienen alguna experiencia de arduino básico pueden hacer este proyecto. Los datos recuperados se empujan mediante un escudo de wifi
Velocímetro de bicicleta "Analógico"

Velocímetro de bicicleta "Analógico"

En este instructable voy a mostrar cómo hacer un velocímetro "análogo" fácil utilizando un arduino nano, un servo motor y algunos componentes extras más.Es la parte analógica del proyecto sólo en la pantalla de la velocidad, todas las de detecci
Acelerómetro analógico Control de un Servo

Acelerómetro analógico Control de un Servo

Se trata de un método de usar la salida de pulso cuadrado de un acelerómetro de dos ejes de Memsic para controlar un servo. Sin embargo, a diferencia de otros métodos que utilizan un dispositivo microcontrolador, te voy a mostrar cómo directamente to
Termistor de KY-013 analógico (Arduino)

Termistor de KY-013 analógico (Arduino)

Tuve un tiempo difícil encontrar información "plug & play" y códigos, conexiones, etc. sobre el Sensor de temperatura analógico KY-013. Yo no soy un programador para hacer un montón de ensayos y errores, sobre todo, pero finalmente conseguí
Indicador de fase lunar reloj analógico de Steampunk

Indicador de fase lunar reloj analógico de Steampunk

hice un reloj steampunk utilizando una caja de teléfono de madera antiguo, tres indicadores analógicos, switches, una ventana y un mecanismo de cuerda. El reloj muestra las horas, minutos y segundos en los relojes y cuando lo adquieres, muestra el me