LESSON 29: Dos and Don'ts for Arduino Software Interrupts

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 พ.ย. 2024

ความคิดเห็น • 58

  • @320mb
    @320mb 7 หลายเดือนก่อน +2

    Thanks Paul, I'm working my way thru all these earlier tutorials, mainly for the functions, if/else statements and Interrupts and other good lessons you provide....

  • @twainstasiuk1945
    @twainstasiuk1945 6 ปีที่แล้ว +8

    Awesome Work,, really good tutorials. There's only a few lessons I haven't seen ( lesson 21-26) but have you covered functions,libraries,and real time clocks so that we can quickly implement them? I'm kinda being selfish here as I could go search around for someone else's work but often times many video presenters assume to much background knowledge, the camera is moving around,, or there's music to entertain us which all seem to detract from a good learning experience. Your,, this is what it is,, this is how to use it ,, method without going into register etc etc details style is excellent for educational purposes! Enjoy the show!

  • @paulmeistrell1726
    @paulmeistrell1726 3 ปีที่แล้ว

    Thanks for the quick lesson Paul. Something else to use is the boolean "not !" to cut down on service time.

  • @Aridzonan13
    @Aridzonan13 5 ปีที่แล้ว

    Thanks for the tip. Had a delay in my interrupt loop. Got it fixed in short order. Need to break out of the main() to read a thermostat.

  • @zuko2349
    @zuko2349 6 ปีที่แล้ว

    I am trying to build the distance measurement with ultrasound 1st time for my last year undergraduate project. Thanks for the tutorials

  • @sarfrazalam3032
    @sarfrazalam3032 6 ปีที่แล้ว +4

    You're really a good tutor . Why don't you make a tutorial videos on avr microcontroller !! Hoping for positive response .

  • @conversationwithgod272
    @conversationwithgod272 4 ปีที่แล้ว

    Paul is really amazing, i do believe that like this man can make a great invention.
    Carry on great man , you are the best.

  • @renatocanhaify
    @renatocanhaify 6 ปีที่แล้ว +2

    Thank you so much for your work. I would suggest you new topics: I2C, arduino communication with integrated circuits, filtering. Thank you again

  • @Ziplock9000
    @Ziplock9000 6 ปีที่แล้ว +1

    5:22 It might seem like it's ignoring the delay but it's not. It's filling up the stack with each interrupt call that are overlapping. If the interrupt calls happen so frequently that the servicing routines take longer, the stack will grow and grow until you get a stack overflow.

    • @paulmcwhorter
      @paulmcwhorter  6 ปีที่แล้ว

      YOu sir, know a lot more about this than I do. I am an electrical engineer, and just play with arduino. I am not a computer science expert.

    • @anubhavbhura13
      @anubhavbhura13 3 ปีที่แล้ว

      Sorry for a late comment, but could you explain this a bit more? Or if you have any resources I could read up on this could you share it?
      Thanks a lot

    • @eyemastervideo
      @eyemastervideo 3 ปีที่แล้ว

      @@anubhavbhura13 I think it's like a buffer. Let's say you interrupt every second but delay in the interrupt for 5 seconds... That means every second your getting a delay called of 5 seconds. The stack only has some space. After 5 seconds you have 5 delay calls in progress.... It gets worse as time goes on and then there's no more space to store the calls, so you get an overflow. I'll be trying this out myself. Thanks

  • @villainsbridgeclub5268
    @villainsbridgeclub5268 9 หลายเดือนก่อน

    So grateful for this dude.

  • @MN-be7sx
    @MN-be7sx 5 ปีที่แล้ว +1

    Hello Sir,
    Really need your help, Can you please make a lesson on how to count running hours of a generator or a motor etc. Actually what I want to do, I have two electric sources one from Grid and other one through Generators. Each source running at a time, And I want to monitor their max & min value of coming voltage, current voltages, max & min values of Amperes, current coming amperes, KWH, how many time each source has been run, and counting of their running time of each source. Really appreciate if you make a lesson on that. Thank you

  • @rccanuck4473
    @rccanuck4473 4 ปีที่แล้ว +1

    Would an interrupt be a good tool to make an out put high once an hour. ie. making a cuckoo clock

  • @MikevomMars
    @MikevomMars 4 ปีที่แล้ว

    What about sleep modes and wake up via interrupt (f.e. when receiving a bluetooth signal)? This would be quite handy for lots of projects.

  • @erygion
    @erygion 5 ปีที่แล้ว

    Thank you Mr. Mcwhorter. Cleared up the questions I had. I was thinking of using an interrupt for a OLED display for feedback on a spwm sketch... now I won't lol

  • @mcpojack
    @mcpojack 6 ปีที่แล้ว

    Would be interested in a NodeMCU tutorial possibly interfaced with a weather station type application. Love your tutorials, I have learned a bunch!! Please keep up the good work. I follow your Fusion 360 stuff also since I am a 3D printer buff. Too many hobbies!! 3D printing, CNC, Arduino, Drones, etc. etc.

  • @domoledlight
    @domoledlight 6 ปีที่แล้ว

    Really good good Lesson , I have a question about software interrupts; i have 2 RF 433 mhz fonctions one receiving the other sending , i want to stop receive fonction when i send something in order to do not RF trouble sorry for my english

  • @VasilisKarastergios
    @VasilisKarastergios 6 ปีที่แล้ว

    Good day to you sir all the way from Greece.

  • @niceday2015
    @niceday2015 2 ปีที่แล้ว

    The dislike must be envy the talented kind tutor,the lecturer is a true master.

  • @andrewferg8737
    @andrewferg8737 4 ปีที่แล้ว

    Thanks! You answered my questions in this video!

  • @AliRashidi97
    @AliRashidi97 3 ปีที่แล้ว

    I have a question. why did the Arduino ignore that delay? was it because of the duration of the interrupt?

  • @mohamedalsada9122
    @mohamedalsada9122 6 ปีที่แล้ว

    You are amazing..
    Please please continue the Arduino lessons part

  • @charleswindsor9595
    @charleswindsor9595 6 ปีที่แล้ว

    Thank you I found this lessen and Lesson 28 very helpful

  • @abdulbasitjavaid
    @abdulbasitjavaid 6 ปีที่แล้ว

    sir please give the lesson on the buffers in Arduino and advance c programming used on Arduino and raspberry pi.thanks

  • @loptica62
    @loptica62 6 ปีที่แล้ว +1

    Just keep up the GREAT work !

  • @twainstasiuk1945
    @twainstasiuk1945 6 ปีที่แล้ว

    Really good lessons on interrupts! I've used them from snippets but honestly never really understood what I was doing or how to make my own,,, now I do! All of a sudden the reference pages are easier to read at Ardunio.cc. Hahaha,, awesome and thank you for yet another quality teaching video! :)

  • @mafiaboy16
    @mafiaboy16 6 ปีที่แล้ว

    Can't wait for the next lessen
    this info helps my 10 miles long

  • @naveenvaid4318
    @naveenvaid4318 3 ปีที่แล้ว

    Hello sir i have a multiplexing data 7 segment 3 digit i want to change that data into lcd for the use with arduino uno what is the code please help me ...............so ncye of you

  • @basilsunnyalukka4491
    @basilsunnyalukka4491 6 ปีที่แล้ว

    Having difficulty Working with Bluetooth module can you make a tutorial on that.

  • @btomas225
    @btomas225 3 ปีที่แล้ว

    It really baffles me as to why the compiler doesn't produce at least a warning that delay() is ignored in ISR's. Additionally, you can add millis() to the list of things that don't work in ISR's and ditto that for Timer1. I, and I'm certain others too have found these anomalies the hard way, sigh....

  • @yeahyeahKeepDreaming
    @yeahyeahKeepDreaming 6 ปีที่แล้ว

    Great content!
    How about a msp430 lesson series

  • @kyrylmelekhin2667
    @kyrylmelekhin2667 6 ปีที่แล้ว

    Is this interrupt similar to the function of " int 3 " in x86 assembly?

  • @karelenmarritkruyswijk393
    @karelenmarritkruyswijk393 5 ปีที่แล้ว

    Thank you again. Tried analogWrite, and even that seems to be to slow to work ;-)

  • @pareshmhatre4019
    @pareshmhatre4019 2 ปีที่แล้ว

    Mr. You are real hardworking Robot among us!

  • @thambirajahpathmanathan7080
    @thambirajahpathmanathan7080 4 ปีที่แล้ว

    Verry nice helpfull to me,Thanks a lot

  • @embeddedbypk1190
    @embeddedbypk1190 6 ปีที่แล้ว

    why is it not running with analog write can you provide a program for the same

  • @michaelcostello6991
    @michaelcostello6991 4 ปีที่แล้ว

    Excellent. Thanks

  • @paulbizard3493
    @paulbizard3493 6 ปีที่แล้ว

    Keep up the good work, thanks. :)

  • @hamidhamoh7212
    @hamidhamoh7212 6 ปีที่แล้ว

    AWESOME WORK

  • @fsimz
    @fsimz 6 ปีที่แล้ว

    Where have you been Paul, waiting for more videos on the series 'Keys to a Successful Engineering Career'

    • @paulmcwhorter
      @paulmcwhorter  6 ปีที่แล้ว +1

      Wow, I did not think anyone was watching that series, so I went back to making Arduino lessons. I would like to make some in the series you mention on how to give a good presentation. Engineers are notorious for being poor presenters, so would like to teach on that when I get some time.

    • @fsimz
      @fsimz 6 ปีที่แล้ว

      Yes, how to give a good presentation and how to get out of the basement into the sunlight, I could use some advice on that

    • @paulmcwhorter
      @paulmcwhorter  6 ปีที่แล้ว +1

      The advancement I made in my career were not always because I was the best engineer in the room . . . but because I was the best communicator in the room.

    • @TraderBro123
      @TraderBro123 6 ปีที่แล้ว

      We want the series back!! :)

  • @jayateerthkulkarni1561
    @jayateerthkulkarni1561 6 ปีที่แล้ว

    sir.. gotta question
    How do I learn designing codes without anyone's help..?
    If I want to build a Arduino based robot then the code should be designed by me. I don't like copying them from any web.. How do I do it?

    • @Ziplock9000
      @Ziplock9000 6 ปีที่แล้ว

      Books, videos, blogs

  • @khankhan-xx6wv
    @khankhan-xx6wv 6 ปีที่แล้ว

    Hi, how can I connect 6 dc motors in Arduino

    • @pharaohboy8657
      @pharaohboy8657 4 ปีที่แล้ว

      You will need to use 3 of the l293d IC motor driver check lesson 37 of his new series also your comment is two years ago so I think I didn’t help u that much

  • @Steve-GM0HUU
    @Steve-GM0HUU 3 ปีที่แล้ว

    👍

  • @peterkowald7092
    @peterkowald7092 7 หลายเดือนก่อน

    You think using strings in an ISR is fast!!!! Hmmm think again, it’s a single line routine and managed to push it to a heap of useless tune rating code. Bad bad lessons for beginners

  • @khankhan-xx6wv
    @khankhan-xx6wv 6 ปีที่แล้ว

    Please reply me

  • @balajimct169
    @balajimct169 6 ปีที่แล้ว

    All the other lessons in Arduino are very good, finally upset with interrupt. Please post the direct code instead of library.
    Programmers like me need the source code to understand. Please don't use my code, just posted for clear understanding.
    Timer1 is for only one. no comments in code, please forgive.
    e.g.:
    byte outputPin[] = {2, 3, 4, 5};
    int ledStatus[] = {LOW, LOW, LOW, LOW};
    int waitTime[] = {40, 30, 20, 10};
    unsigned long previousMillis[] = {0, 0, 0, 0};
    unsigned long currentMillis[] = {0, 0, 0, 0};
    void setup() {
    // put your setup code here, to run once:
    Serial.begin(115200);
    for (int i = 0; i

    • @Ziplock9000
      @Ziplock9000 6 ปีที่แล้ว

      There's on point listing the code of a library when you can access it yourself and it will go out of date.

  • @erice.1636
    @erice.1636 4 ปีที่แล้ว

    I stopped watching when I saw you using Delay()