TIMER 1 modo PWM 🔥 frecuencia 2, 5 y 10 KHz 💥 ARDUINO con Registros ATMega328P - tiempo MUERTO

Sdílet
Vložit
  • čas přidán 20. 08. 2024
  • En este video se explica como programar el Timer 1 en un Arduino Uno, pero accediendo a los registros del microcontrolador ATMega328P usando el manual, en modo PWM,, paso a paso. Ademas como simular en Proteus con un archivo .HEX. Frecuencias de 2, 5 y 10 KHz. PWM negada canal B, como inlcuir tiempo muerto.
    ¿Porque programar con registros?
    Porque si lo programas directamente NO❌ puedes tener mucho control en Ancho de Pulso, Frecuencias exactas y en las aplicaciones REALES necesitas EXACTITUD.
    💣TERMINA💣 con solo saber digitalWrite();
    Revisa nuestras redes sociales:
    ✅ Facebook: cutt.ly/Facebo...
    ✅ Instagram: cutt.ly/InstaWolf
    ✅ Tienda Online: cutt.ly/Tienda...
    ✅ Correo electrónico: info@wolfelectronics.net
    #Arduino #Registros #atmega328p #robotica #sensores #hex #proteus #PWM #Timers #frecuencia

Komentáře • 50

  • @enriquepalacios6771
    @enriquepalacios6771 Před 2 lety +2

    Excelente forma de explicar , haces ver mas sencillo. Espero sigas compartiendo sus conocimientos de manejo de registros. Gracias

  • @alanmacedo4233
    @alanmacedo4233 Před 3 lety +2

    El video el bueno. En mi caso, no obtenía ninguna salida por el pin determinado (D9), a pesar del tener el código igual. Luego de muchos intentos, probé agregar la línea "pinMode (9, OUTPUT)" en el "void setup" y el problema se corrigió. Aun así, buen video.

    • @maximus4733
      @maximus4733 Před 2 lety

      Tenía el mismo problema, muchas gracias.

  • @Darckhamer
    @Darckhamer Před 2 lety +1

    Wow tengo buen rato buscando sin poder entender y en este video lo entendi full Hey muchas gracia!

  • @estebanxavierpovedanaranjo3507

    EXCELENTE CONTENIDO AMIGO ESPERO QUE SIGAS COMPARTIENDO MAS CONTENIDO SERIA GENIAL APLICAR ESTO EN LOS PROYECTOS QUE MENCIONAS

  • @martinramirezc9731
    @martinramirezc9731 Před rokem

    exelente explicacion y muy entendible clara y presisa gracoas por el aporte saludos de matamoros tamaulipas mexico saudos

  • @gualbertoromero3386
    @gualbertoromero3386 Před 3 lety

    Super esta genial estaré atento al próximo video💯

    • @arduinomaquinas
      @arduinomaquinas Před 11 měsíci

      Muito bom seu video amigo, @arduinomaquinas agradece e compartilha ❤😉👍👏👏👏

  • @aguta21
    @aguta21 Před 2 lety

    Excelente explicación profesor, lo felicito por ser experto en la materia y manejar a la perfección la ejecución de la temporización y el lenguaje assembler. Me gustaría me aclarará unas dudas, si utilizo la temporización sin inversión para trabajar con una etapa de potencia, no necesitaría igualmente conectar diodos de protección para evitar cualquier tipo de inversión de corriente?, o con está configuración es suficiente para mi segunda etapa?,gracias de antemano.

  • @jhonsebastianboterolemos3046

    genial men, estaba programando el pwm por el modo PWM_Fast y no me daba, aplique este modo y me resulto solo que tuve que usar otro preescaler ya que ese de Fclk/1 no me va bien en el proteus asi que usae la de 1024 y me dio muy buenos resultados, incluso no use interrupcioes. haa y un dato muy importante, si no pongo el registro DDRB = 0B00000010; NO FUNCIONA ya que dice que el pin digital tiene que ser salida.

    • @fernandoperez3858
      @fernandoperez3858 Před 3 lety

      Si es verdad se debe declarar a los pines OC1A y OC1B como salidas. Claro también se puede hacer con el modo fast PWM pero no te permite controlar la frecuencia. Solo el ciclo de trabajo.

  • @electronic051
    @electronic051 Před 3 lety +1

    Excelente tutorial, cuando subirán el próximo tutorial???

  • @arduinomaquinas
    @arduinomaquinas Před 11 měsíci

    Gracias amigo, @arduinomaquinas subscrito 🇧🇷😉👍👏👏👏👏👏

  • @jhonsebastianboterolemos3046

    HOOO GENIAL MEN LO ESTABA ESPERANDO JAAJAJJA ERES EL MEJOR (Y) AVER ESE NIVEL

    • @wolfelectronics6063
      @wolfelectronics6063  Před 3 lety +1

      Ayudanos compartiendo para que más personas sepan, que NO solo existe el digitalWrite();

  • @gmtech_ok
    @gmtech_ok Před 3 lety

    Muy buen video y explicación. Esperando el próximo!!

    • @wolfelectronics6063
      @wolfelectronics6063  Před 3 lety +1

      Gracias por tu comentario. Nos incentiva a seguir compartiendo contenido y a mejorar. Si te gustaría un video de algún tema dejarnos un comentario.

    • @gmtech_ok
      @gmtech_ok Před 3 lety

      @@wolfelectronics6063 soy electrónico de la vieja escuela, cuando se programaba los Motorola HC908JK1, así que esto de Arduino es relativamente nuevo para mí. Estoy aprendiendo poco a poco. Saludos!!

    • @jaelolivares6674
      @jaelolivares6674 Před 3 lety

      espero la continuacion del video con ansias

  • @niltonrojassanchez3997

    Se agadece gracias por el tutorial saludos de peru

  • @claudionaranjo3284
    @claudionaranjo3284 Před 3 lety

    Que buena explicación (en chino) la voy a volver a ver cuando lo aprenda

  • @diegofernandocorreavargas1796

    buenas tardes excelente tu video quisiera contactarte para unas consultas que tengo sobre ese pwm que generaste

  • @jhonatandavidgonzalez3880

    muy buen video, aunque tengo un par de dudas en cuanto al valor de la frecuencia ya que no tiene en cuenta la resolución del adc, si no solo el del prescaler

  • @mabaru
    @mabaru Před 3 lety +1

    Muy interesante el video, sobre todo para los que queremos avanzar un poco más allá en la programación. Imagino que el objetivo del video es didáctico, pero entonces no entiendo porqué explicas tan rápido, si es para que el vídeo se vea muchas veces por una misma persona, puedes estar seguro que consigues tu objetivo. Pero entonces el motivo didáctico no es lo principal, ya que entonces explicarías de forma más lenta e incluso repetirías las partes más importantes, o lo que tu considerarses más importante. No se nos debería exigir demasiado a los que queremos avanzar en la programación con Arduino, sobre todo si se va a utilizar otro lenguaje de programación como es el ensamblador, para ti tal vez no sea difícil entender un lenguaje de programación nuevo, de echo seguro que dominas varios, pero no es así para la mayoría de los mortales. Es más, puedo asegurar que la gran mayoría que recurrimos a youtube para aprender somos autodidactas y que no se nos pasó por la mente en la vida hacer una carrera universitaria de ingeniería informática.
    Después de todo lo dicho, tengo que agradecerte con el corazón en la mano que intentes instruirnos para que avancemos en nuestros conocimientos sobre la programación en Arduino, así podremos abarcar proyectos más complicados y espero que sigas haciéndolo, aunque te pediría humildemente que bajaras la velocidad explicativas, si es necesario hacer dos vídeos sobre un tema, pues adelante, mejor así que estar pausando el vídeo continuamente para no perderte nada. De nuevo gracias.

  • @efrenramirezlopez701
    @efrenramirezlopez701 Před 2 lety

    Saludos Ingeniero
    Por medio de la presente me podría indicar como obtengo una frecuencia eficiente para iluminación LED
    en corriente directa
    Agradeciendo su atención y apoyo, gracias

  • @jeronimosantillirubini9071

    consulta,hay alguna diferencia si lo hago en arduino nano? porque lo probe tal cual el codigo pero no me anda,no tengo ninguna salida pwm en ningun puerto del arduino

  • @CARILICH
    @CARILICH Před 3 lety

    Hola como estás, excelente video, muchas gracias.
    Tengo una duda, me podrías ayudar por favor.
    Estoy haciendo una lampara que se encienda y apague con sonido, aplausos o voz. Pero no sé como hacer para que se apague con un timer. Intenté con un delay pero me funcionó. Cómo podría integrar las dos cosas, agradecería tu ayuda.
    Quedo atento. Muchas gracias.

  • @alebautista4599
    @alebautista4599 Před 2 lety

    y si quiero tener otros dos pares de pwm , como seria, pues en arduino tienen diferente frecuencia sus puetos pwm , podrias hacer un video así, con su tiempo muerto

  • @fransoria9742
    @fransoria9742 Před 3 lety

    Hola muy bueno el video. Quería comentarte y consultarte que estoy usando tu programa y anda bien . Pero no me deja usar un conversor(ads1115) que manda los datos por i2c al arduino. Puse en el loop una rutina que toma datos de ese sensor y da el valor medio. Pero no responde el ads1115 en cambio sin configurar la interrupcion en el setup si funciona la toma. Es una limitacion que tiene esta configuración o estoy haciendo algo mal? Gracias

  • @lozanobanuelosdavid6975

    buen video, podrias hacer un tutorial pero para el attiny85? aun me confunden eso de los registros

  • @deaelectronic8175
    @deaelectronic8175 Před 2 lety +1

    Pues a mi no me funciona ese codigo, lo he copiado tal cual y subido al arduino y en el osciloscoipo no sale ninguna PWM.

    • @brayandanielduranflores87
      @brayandanielduranflores87 Před 9 měsíci

      a mi tampoco quiero ver si alguien sabe algo

    • @emmanuel4666
      @emmanuel4666 Před 9 měsíci

      @@brayandanielduranflores87 Lo pudiste solucionar?

    • @emmanuel4666
      @emmanuel4666 Před 9 měsíci

      la forma en la que lo solucioné que tampoco me daba la salida PWM fue poniendo el led que tiene ahí al final del video con la resistencia y ya después de poner eso si me dio la señal PWM, alguno sabe porque?@@brayandanielduranflores87

  • @igort5418
    @igort5418 Před 2 lety

    Buenas, como se podria hacer para ejecutar una interupcion interna justo antes de que acabe el ciclo del pwm para hacer una lectura de un sensor hall. es para hacer un levitador electromagnetico, necesito hacer la medida siempre cuando el pwm pase por 0 si no las medidas se ven afectadas.

    • @yautomationjean
      @yautomationjean Před 10 měsíci

      lo resolviste ?

    • @igort5418
      @igort5418 Před 10 měsíci

      @@yautomationjean No, el levitador lo tengo abandonado

  • @vtr4045
    @vtr4045 Před 2 lety

    exelente amigo.si necesitamos unos 20Khz que se puede hacer

    • @wolfelectronics6063
      @wolfelectronics6063  Před 2 lety

      Cambiar el prescalador para obtener la de 20KHz.

    • @yautomationjean
      @yautomationjean Před 10 měsíci

      por que necesitas esa frecuencia en especifico ?? o para que la necesitabas ?

  • @enriquepalacios6771
    @enriquepalacios6771 Před 2 lety

    Por favor ayuda compile el programa igual al suyo pero no tengo ninguna salida en el pin 9, estoy usando Arduino uno, con cual Arduino funciona. Gracias

  • @Javier_OM
    @Javier_OM Před 3 lety

    ¿Se puede hacer esto mismo pero con una frecuencia de 25KHz?

    • @wolfelectronics6063
      @wolfelectronics6063  Před 3 lety +1

      Claro que si todo depende del prescalador

    • @wolfelectronics6063
      @wolfelectronics6063  Před 3 lety

      Claro que si, basta con modificar la frecuencia al valor deseado utilizando el registro ICR1 como se indica en el video. Puedes colocar la freqeuncia que desees para la PWM. Tu la configuras.

    • @yautomationjean
      @yautomationjean Před 10 měsíci

      por que necesitas esa frecuencia en especifico ?? o para que la necesitabas ??