Go Down

Topic: (SOLUCIONADO) Pulsadores en wemos d1 r1 (Read 495 times) previous topic - next topic

helius

Dec 15, 2018, 12:21 am Last Edit: Dec 15, 2018, 06:40 pm by helius
Alguno sabe cuantos pulsadores se pueden controlar con un wemos d1 r1 ?
Que pines son los que se pueden usar a tal efecto?

Necesito poder controlar 5 pulsadores, un potenciometro y un lcd 16x2 con un wemos y estoy atascado en lo mas tonto con los pulsadores y no consigo que me funcione....


Gracias.

surbyte

Yo puse en Google : Wemos D1 R1 y salió esto entre los resultados https://wiki.wemos.cc/products:d1:d1

y leo

Quote
11 digital input/output pins, all pins have interrupt/pwm/I2C/one-wire supported(except for D0)
1 analog input(3.2V max input)
Micro USB connection
Power jack, 9-24V power input.
Compatible with Arduino
Compatible with nodemcu
No era algo que podrias haber encontrado por tu cuenta?

Te invito a que leas las normas del foro y busques antes de consultar.
No lo tomes a mal pero te evitarás perdidas de tiempo.


helius

Gracias por buscar en google, me alegra decirte que yo tambien lo habia hecho antes de postear, pero.... seguro que todas las salidas/entradas digitales de esta placa pueden usarse para control de pulsador pull up/down??

Esto es lo que preguntaba. Si existe alguna particularidad con esta placa que no permita usar todas las entradas/salidas digitales.

surbyte

Quote
Alguno sabe cuantos pulsadores se pueden controlar con un wemos d1 r1 ?
Que pines son los que se pueden usar a tal efecto?
A ver.. en tu comentario incial no dices cuántas entradas dispone el WEMOS y si hubieras leído las normas del foro verías que al presentar algo debes decirnos qué sabes, qué investigaste, etc!

Yo por tu pregunta asumo que no sabes de cuantos pines dispones o que no entiendes las conexiones, y como todo se resuelve leyendo, pues me remito a las especificaciones del dispositivo.

Si dice tener 11 entradas/salidas, entonces las 11 pueden ser entradas Pull-up o down.
Un Mega tiene 54 entradas/salidas o sea solo imagina la cantidad posible.

Cada entrada digital puede configurarse para leer un pulsador sea con la resistencia a masa/gnd (PULL-DOWN) o a VCC PULL-UP.



Te dejo el link de Luis Llamas leer un pulsador con Arduino

helius

Gracias de nuevo Surbyte.  No me tomo a mal nada, porque el que da algo sin esperar nada a cambio ya esta dando mucho, aunque solo sea una apreciacion o una busqueda de google.

Te/os cuento, porque tal vez di por sabido lo que se y lo que no, que dicho sea de paso no es mucho.

El problema que tengo es que no consigo hacer funcionar un pulsador, ni si quiera uno.
En otros arduinos uno, mega etc, lo hago sin problemas.

Lo he intentado de las dos formas que conozco a masa y con el +, pero no responde.

El squetch solo tiene en el loop un if, donde comprueba el estado LOW o HIGH del pin digital donde estoy midiendo, vamos que es la minima expresion de squetch. Luego por la salida serie imprimo el estado que recoge y veo que no cambia.

Creo que a estas alturas he probado todos los pines digitales, solo reservandome el D3 y D4 para el lcd 16x2.

En principio mi wemos d1 funciona bien en otro aspectos, conecta correctamente al wifi y si uso algun pin digital para por ejemplo manejar un motor pap (con easydriver) , lo hace sin problemas, con lo que descarto que sea una unidad defectuosa.

En algun foro "en comodo ingles" crei entender que solo se podian usar los pines d3 y d4, y creo que el 11 (de cabeza lo digo).

Por eso me decidi a preguntar por si alguno tiene experiencia en el manejo de pulsadores usando esta placa, me pudiese orientar, por si sencillamente es imposible por la arquitectura de la misma (en el datasheet no veo la restriccion), o es que yo estoy cometiendo algun error, que seguramente sera la mas probable....

Estoy usando resistencia de 1k, protoboard y varios pulsadores que ya probe a intercambiar.

No se que mas puedo aportar para que veais clara mi duda.


Quedo en espera de noticias.... Saludos.

surbyte

#5
Dec 15, 2018, 02:52 pm Last Edit: Dec 15, 2018, 05:41 pm by surbyte
Creo que 1k es un valor demasiado bajo, intenta con 4k7 o 10k como siempre se muestra en los esquemas.

Luego de una colaboración remota he comprobado que no funciona, sin embargo haciendo lo mismo con un nodemcu mío, no hubo problema.

Este es el código que probé y funciona bien

Code: [Select]
const byte buttonPin = D4;
const byte ledPin = BUILTIN_LED;

bool buttonState, buttonStateAnt = false;

void setup() {
  pinMode(buttonPin, INPUT);
  pinMode(ledPin, OUTPUT);

  // set initial state, LED off
  digitalWrite(ledPin, buttonState);
}

void loop() {
  // read button state, HIGH when pressed, LOW when not
  buttonState = digitalRead(buttonPin);

  // if the push button pressed, switch on the LED
  if (buttonState != buttonStateAnt) {
      if (buttonState)
         digitalWrite(ledPin, HIGH);  // LED on
      else
         digitalWrite(ledPin, LOW); // LED off
  }
}


Asi que voy a observar el esquema del Wemos a ver si hay algo que tener en cuenta ya que varias personas reportan problemas similares.

helius

SOLUCION: No usen protoboard!!


Después de echar un rato con surbyte, probar con la resistencia de 10k por si pudiese ser, verificar cableado, pulsadores,codigo etc... no funcionaba.

Hasta que me dio por cambiar la protoboard y se acabo el problema, funcionando con 5 pulsadores de D4 a D8!!

Ya tengo la proto en la basura, no volverá a pasarme y espero que a alguien le ahorre alguna hora de ensayo/error el leer esto.

Gracias Surbyte.

Go Up