Las Interrupciones en el ESP32

Поділитися
Вставка
  • Опубліковано 22 гру 2024

КОМЕНТАРІ • 37

  • @marianomorenoperez6038
    @marianomorenoperez6038 4 роки тому +4

    Muchas gracias por el aporte, son unos vídeos muy claros y prácticos. Seria muy interesante uno sobre servidor Web y bases de datos.

    • @ingenieroencasa
      @ingenieroencasa  4 роки тому

      Me alegro de que te gusten los vídeos. Ya lo siento, pero de servidores web y bases de datos no controlo mucho.

  • @leonardomendozadelarosa1118

    Que buen video, explicas bn chido y das detalles que algunos otros creadores pasan por alto.
    No había entendido la función milis hasta que vi este video, Genial..!

  • @luisfernandoalvarez5500
    @luisfernandoalvarez5500 Рік тому

    Mil gracias. Un abrazo desde Colombia

  • @adrijimenezmartinez78
    @adrijimenezmartinez78 3 роки тому +4

    Te recomiendo que las variables donde almacenas millis(), las declares como unsigned long mejor que long solamente, enhorabuena por el vídeo. Un saludo

  • @jolugama
    @jolugama 4 роки тому +2

    Gracias por el video.

  • @jairorodriguezpercu
    @jairorodriguezpercu 4 роки тому +1

    Gracias por tu ayuda compañero , has más video de esp32 explicando cosas así e importantes

  • @DiegoRodriguez-xl3ut
    @DiegoRodriguez-xl3ut 2 роки тому

    excelente amigo. Me sirvió de mucho tu explicacion

  • @marialeliaguzmanramirez8046
    @marialeliaguzmanramirez8046 2 роки тому +1

    MUCHAS FELICIDADES!! TENDRAS EL LINK DONDE MUESTRAS TODOS TUS VIDEOS, POR FAVOR, GRACIAS

  • @guillermocarrillo5406
    @guillermocarrillo5406 2 роки тому

    Hola amigo gracias por tu vídeo. Como podría agregar q cuando se oprima el botón número uno se imprima un mensaje cuando se suelte otro mensaje?. Con el botón dos el mismo principio pero diferentes mensajes

  • @ernestorivero9909
    @ernestorivero9909 Рік тому

    Hola mi amigo podrías indicarme como se podría hacer una interrupción por software o mejor dicho cambiar el estado de un pin sin tener que usar botones

  • @darwinnicolas9739
    @darwinnicolas9739 Рік тому

    saludos cordiales ; los pulsadores se van a poner normalmente abiertos o normalmente cerrado ?

  • @jul-oz6qy
    @jul-oz6qy Рік тому

    se puede usar micros() dentro de una interrupcion?

  • @lucianoraffagnini8347
    @lucianoraffagnini8347 4 роки тому

    Amigo sos un capo, excelente video

  • @MrFranco207800
    @MrFranco207800 3 роки тому

    hola , gracias por tu tiempo. cuanto tiempo puede tardar en mostrarse en thingspeak las lecturas dadas por los sensores desde que inicia el esp32

  • @jmch1369
    @jmch1369 11 місяців тому

    Excelente ,Gracias ,,

  • @miguelangelrosas799
    @miguelangelrosas799 3 роки тому

    las interrupciones tambien funcionan en el void setup()?

  • @keeper1855
    @keeper1855 2 роки тому

    Can you change GitHub diagram with correct sketch because lora cant communicate.I found problem with bad pin out with mosi and values ms in sketch?What else can be improve to work correctly?

  • @abelalbors1366
    @abelalbors1366 Рік тому

    Buenas Excelente vídeo!! Consulta cómo sería su código para subirlo a Telegram!? Si me puedes ayudar con esto

  • @anabella.a5
    @anabella.a5 2 роки тому

    Hola soy casi neofita en estas cuestiones, sucede que había programado la placa el viernes y hoy cuando estaba guardando todo (esp32 en su protoboard y demás componentes) apreté accidentalmente el boton boot. Le hace algo malo?, la programación se ha borrado de la placa?. Ayudaaa

  • @xaviibanyez1496
    @xaviibanyez1496 11 місяців тому

    Hola.
    ¿Se puede generar la interrupción en cualquier pin?
    En los Arduino no todos valen
    Gracias.

    • @edwinninar
      @edwinninar 2 місяці тому

      Cada microcontrolador tiene sus características revísalo

  • @apollodorusII
    @apollodorusII 4 роки тому +2

    Buen video!!!
    Una pregunta, tengo el Esp8266.
    He visto que el Esp8266 es más económico que el Esp32.
    Merece la pena???
    Que mejoras trae????

    • @ingenieroencasa
      @ingenieroencasa  4 роки тому +1

      Hola, el ESP32 es más potente, tiene más pines disponibles y además incorpora Bluetooth. También tiene un consumo de energía menor en el modo de Deep Sleep.
      Si mereca la pena o no depende de lo que quieras hacer con ellos, tendrás que decidir cuál es el más adecuado para tu aplicación.

  • @franciscotassone1027
    @franciscotassone1027 3 роки тому

    Estimado, sabes como lograr leer e imprimir, mediante Serial.Print el valor del Stack Pointer del ESP32?
    Lo quiero usar para ver si al llamar a las interrupciones, se regresa al valor anterior, luego de atenderla, y no se queden anidadas, con lo cual en algún momento, puede tener un overflow.
    Con micros de los años 90 en assembler yo sabía hacerlo, pero con este pequeño mounstruo ESP32, ni idea... y no encuentro en internet nada al respecto, que sea entendible
    Mil gracias !

  • @edgardoferoci3863
    @edgardoferoci3863 Рік тому

    Hola Buenísimo... Pero porque no funciona en un ESP8266

  • @jolugama
    @jolugama 4 роки тому +1

    Vengo de arduino, y hay pocos videos de esp32, entonces todas las entradas son de 3v? para que usar el vin entonces, ejemplos?. podrías hacer más videos sobre esto, como poner un lcd con i2c, etc?. si conecto algo que requiera 3v y usa i2c, el i2c si se mueve a 5v, hay que hacer algo mas? ..... son muchas preguntas, muchas dudas.

    • @ingenieroencasa
      @ingenieroencasa  4 роки тому +1

      Hola. Correctamente, las entradas/salidas son de 3.3V. El Vin lo debes usar para alimentar cualquier cosa que necesite 5V, como la LCD que indicas. Aunque el I2C se mueva a 5V, yo he probado de utilizarlo con el ESP32 y no he tenido ningún problema (supongo que te refieres a la típica pantalla LCD 16x02 con I2C). Piensa que el adaptador I2C ya lleva resistencias pull-up de unos 4.7kOhm, en los dos pines (SCL y SDA) así que la corriente que pueda entrar por el pin del ESP32 va a ser demasiado pequeña como para afectarle. Lo que no deberías hacer es conectar 5V directamente al pin. Saludos.

    • @jolugama
      @jolugama 4 роки тому +1

      @@ingenieroencasa Gracias por contestar ;)

  • @conesth
    @conesth 3 роки тому +1

    Mi esp32 con atach interrump se crashea y se reinicia alguíen más le pasa? Sin embargo el mismo Código en un mega va bien

    • @omarvelasco2329
      @omarvelasco2329 3 роки тому

      Me pasa lo mismo en una ESP8266, has resuleto tu problema?

    • @conesth
      @conesth 3 роки тому

      @@omarvelasco2329 que va , al final lo e tenido que hacer con millis, devolviendo el tiempo cada 60 milisegundos y eso de momento me a funcionado bien ,también lo que hice fue poner un mega que me contaba las interrupciones , las guardaba y las enviaba atraves de pulsos de un segundo de duración , por un pin digital al esp32 eso fue lo máximo que llegue hacer

    • @cristianyamith27
      @cristianyamith27 2 роки тому

      Hola ¿Tal vez resolviste el problema? Llevo algunos días sin poder resolverlo

    • @holaapellido687
      @holaapellido687 2 роки тому

      @@cristianyamith27 no lo pide solucionar, leí que las interrupciones no puedes estar funcionando siempre , lo que hice fue utilizar millis , y tomar el valor cada X mili segundos

    • @sebastianangelini3116
      @sebastianangelini3116 Рік тому

      Para usar interrupciones en la ESP32 es necesario que las rutinas tengan el atributo IRAM_ATTR, según la documentación de ESP32. Es decir que cuando declares la función de interrupción le tenes que agregar adelante IRAM_ATTR.
      Por ejemplo:
      void IRAM_ATTR isrUp()
      {
      detachInterrupt(UP);//desactivo interrupción del pin UP
      static uint32_t lastMillis = 0;
      if (millis() - lastMillis > 800)
      {
      lastMillis = millis();
      contUpDown++;
      Serial.println("Interrupción UP");
      Serial.println(contUpDown);
      }
      attachInterrupt(UP, isrUp, FALLING);//activo interrupción del pin UP
      }
      Es un ejemplo que hice para detectar interrupción por un pin al cual denominé UP.
      Otra cosa que te recomiendo que hagas es que desactives la interrupción en la misma rutina, una vez que implementes tu rutina, la volves a activar.
      Por último, no uses Delay() u otra función similar dentro de la rutina de interrupción, esto te va a bloquear el micro y no es una buena práctica.. además es muy probable que tengas problemas. Si ves el ejemplo de arriba, para implementar un antirrebote (en el pin UP hay conectado un pulsador) lo hice con la función mili()

  • @nahuel3256
    @nahuel3256 2 роки тому

    Lo que haces en 10:25 se llama "polling". Ahora le est'as pidiendo al CPU que compruebe contantemente si los botones est'an apretados. El propósito de las "interrupts" es que no tengas que hacer "polling" y que el procesador no tenga que terminar con todas las instructions antes de efectuar las rutinas de servicio.

  • @hugocalcoen
    @hugocalcoen 8 місяців тому

    Perdon es a 5V o a 3.3V.-