LESSON 28: Tutorial for Programming Software Interrupts on Arduino

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

КОМЕНТАРІ • 222

  • @bassman2162
    @bassman2162 3 роки тому +11

    I watched the 68 lessons on the Arduino. I looked at this group of 36 lessons and thought it was a an old duplicate version of the 68 lessons. Boy, am I glad I decided to go through these as a review. There is so much more to learn here. I hope others will see this and not make the mistake I nearly made, skipping these 36 lessons.

  • @Sinister_Reaper
    @Sinister_Reaper 3 роки тому +2

    Best teacher ever, i've spent months and months trying to learn programming and have watched hundreds of videos and i learned more in the past 2 days watching your videos than i have in the past 4 months, your videos are much appreciated!!!

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

      Happy to help!

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

      @@paulmcwhorter i had a couple questions about a project im working on to build an ecu for my grandpa's truck he passed down to me, the ecu was water damaged and i havent been able to find any companies that were able to rebuild it. I feel i've got the injection side of it worked out but the injectors run on a hydraulic system that runs off motor oil, there is a high presssure valve that feeds the injectors and runs off an icp sensor that regulates it, i know the factory bases the pressure off of rpm, on cranking it requires 1v and from the valve should make 250psi and at idle 750 psi and up to 3000psi at redline, i was wonder how i could do this based on the cam hall effect sensor? I'm struggling with figuring out how i would program the variables

    • @gracekemi7183
      @gracekemi7183 Місяць тому

      He's indeed the best teacher other videos seems complicated for beginners but he have the ability to break things down to beginner's level how I wish he could cover all aspect of Arduino God bless you sir

    • @gracekemi7183
      @gracekemi7183 Місяць тому

      He's indeed the best teacher other videos seems complicated for beginners but he have the ability to break things down to beginner's level how I wish he could cover all aspect of Arduino God bless you sir

  • @richardankur3703
    @richardankur3703 6 років тому +35

    Sir keep posting your video. Your lessons are the best.Love from India

    • @paulmcwhorter
      @paulmcwhorter  6 років тому +9

      Will do. Thanks for the kind words.

    • @abbasahmad9681
      @abbasahmad9681 5 років тому

      Sir i need help plz reply me its about arduino timer interupts

  • @Marva123
    @Marva123 6 років тому +37

    "Look at that, BOOOMMM, we programmed an interrupt", love the enthusiasm.

  • @Fogaata
    @Fogaata 6 років тому +5

    Master of Masters, great patient delivery. Thank you for extending a hand to us beginners. Much appreciated.

  • @prathameshbarik
    @prathameshbarik 3 роки тому +5

    That's really amazing teaching. Thank you so much. I had difficulty understanding this concept from a very long time. Thank you.

  • @TonySwitzerland
    @TonySwitzerland 7 місяців тому

    Excellent tutorial, clear language (perfectly understandable also for non native (E-) speaking folks). Thank you so much!

  • @김명식-t3k
    @김명식-t3k 6 років тому +5

    I feel so grateful for his awesome video and he's so passionate about teaching useful things even though he doesn't really have to. I can also learn that kind of things from his tutorial

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

    Always come back to Paul for the basics.

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

    The best teacher for learning Arduino. I request you to post a video on hardware interrupt.

  • @320mb
    @320mb 6 місяців тому

    We are out here, I'm glad to have Learned more about Interrupts..... I played with this Sketch and had one Led blink at 1.5 seconds and the other blink every third of a second... Oh and I did use a variable for the delay as learned from newer Lessons. Thanks

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

    Actually Paul, I have a stumbling stone for years that I am trying to solve. Now that I have seen your video I myself cannot believe that it is this so simple!! Booom thanks for teaching paul !!!

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

    Thanks for all the courses you're providing to us.

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

    OMG Paul. mate you nailed it. It's amazing how you explain this I read a lot of articles and watched a lot of vids buy how they explain is absolute rubbish. it like I am an expert they expect me to know everything before I watch the video. Yet you explain it in a very understanding way thank you.

  • @BRIGHTLIGHTSIDE
    @BRIGHTLIGHTSIDE 6 років тому +7

    Paul, thanks a lot for sharing your precious knowledge. You're a great teacher :)

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

    I come across your video very late, sir, since I'm just hobbiest (not real programmer), your teaching is very awesome,
    Thank You very much

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

    Great lessons. You've really helped me progress in Arduino. Thanks!

  • @danjunk-DIY
    @danjunk-DIY 4 роки тому

    Now I understood the actual concept of an Interrupt ! I did it on my Arduino R3 just now. I am thrilled.

  •  Рік тому

    Very good and thorough tutorial on software interrupts -- big thank you!

  • @gfodale
    @gfodale 6 років тому +18

    @ 15:26 you state that void denotes a function. In truth, void denotes that the function has no return type. The parenthesis after the function name is what denotes an actual function.

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

    Hard topic explained in a crystal clear way, thank u so much

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

    Thanks for a great lesson. That worked out very well. I needed a quick overview of interrupts for an extra credit project in my class.

  • @siddheshgawali7764
    @siddheshgawali7764 6 років тому +1

    appreciated that u are showing steps for downloading and installing library

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

    Is this part of a HS class? Damn, may need to go back to HS. lol. Have EE degrees and spent my career as an applied mathematician in Geophysical Research. Watching this series I'm beginning to feel like an EE. lol. Keep up the great work. It's a great time to be alive.

  • @WaqasKhan-nd6sj
    @WaqasKhan-nd6sj 6 років тому

    Really a next level ......much improved and step to better performance and accuracy. thanks Mr , Paul.

  • @1DR31N
    @1DR31N 3 роки тому

    What a great explanation carried out with patience. I enjoyed it a lot.

  • @First.Last.99
    @First.Last.99 2 роки тому

    Amazing intro to the cideo! For real, learned so much thank you

  • @ramink1990
    @ramink1990 6 років тому

    thanks for sharing, the world needs more guys like you.

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

    My favourite teacher on UA-cam :)

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

    Thanks sir, for such an easy to understand explanation

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

    Mr. Paul, really tahnk you for your help! In this quanrantine I have learnt so many things thanks to you!

  • @rho35100
    @rho35100 6 років тому +1

    Hi Paul. Glad to see you are back in to the Arduino tutorials. I will need to pick that up my self again

    • @paulmcwhorter
      @paulmcwhorter  6 років тому +2

      Yes, I have spent some time on the CAD software. I really think being able to design and print mechanical things for our electronics projects is a cool capability. So, I dont think time on Fusion360 was wasted. Hope to do a little more Arduino now.

    • @rho35100
      @rho35100 6 років тому

      Paul McWhorter . Absolutely right The fusion 360 lessons where great and now I don't use inventor anymore, only Fusion360 , I even bought the License because I use it at work . And bought a 3dconnexion 3dmouse to work with it. Best thing ever

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

      @@paulmcwhorter Hello. I enjoy your videos and I merely tinker with code, knowing not even the basics really. I'm asking if you would consider helping me with some code? A friend asked me to build him a speedo for his model boat racing club. Like a fool I said, "yes" but I couldnt tell you how many rabbit holes and dead ends I've been down. I've finally found a code that sorta works but won't quite fit my (our) need. Part of it is to do with interrupts which I'm just not bright enough to sort out. I won't give the code or problem here because I ask politely and await your reply. (I've some technical knowledge. Check my channel if you have time.). God bless you anyway.

  • @zekeriasvarg530
    @zekeriasvarg530 6 років тому +3

    I like using millis() and do the thinking from a-b my self to not get confused , but I understand that people like to put in librarys.

  • @RishabChouhanFilms
    @RishabChouhanFilms 6 років тому

    Your lessons are the best sir....
    Plz dont stop.....

  • @great136
    @great136 5 років тому +2

    sir we love your teaching,i first learned arduino from you,sir pls teach us to the end of the arduino,god bless u sir

  • @dirtycrazy1361
    @dirtycrazy1361 6 років тому

    Best video lesssons ever. And hoping more lessons from this playlist. Sir, keep uploading and we are pleasant be your students!!!!!

  • @aberateklehaimanot9804
    @aberateklehaimanot9804 6 років тому +2

    Thank you very much Sir.Your tutorials are the best.Thanks again for sharing.

  • @robertpendergast2620
    @robertpendergast2620 6 років тому

    Another excellent tutorial. I enjoy your excitement when the sketch works too.

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

    Really good teaching and explanations, I enjoy the way you present the information. I realize this video is quite old now, but I only just started getting into Arduino as of three weeks ago. Before that I hadn’t even heard of it, and I’m only familiar with programming because I use it in Microsoft excel in Microsoft access.

  • @waynewelshans1172
    @waynewelshans1172 6 років тому

    Paul, fantastic video series! Happy to see you back (without the cough;)) and keep them coming! 2 big thumbs up from me

  • @MrKvarkk
    @MrKvarkk 2 роки тому +2

    Paul, thanks for your great work. It would be great if you shoot a series of lessons on low-level Arduino programming - working with port registers, hardware timers etc. I mean direct Atmega registers usage, without any libraries.

  • @ryansfamily
    @ryansfamily 6 років тому

    Thank you! I watch all your videos and have learnt so much.! Please keep posting these

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

    You Sir are a great teacher

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

    1:45 you could set the delay for 250ms (instead of 1000ms) for the yellow led and use a counter variable for the redled. Increment the counter every 250ms. Once the counter reaches 4 you'd turn on the red led and set counter back to 0.

  • @bunberrier
    @bunberrier 5 років тому

    Nice! My appreciation for Arduino continues to grow.

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

    Many thanks again Paul for an excellent education video. I'm starting to really enjoy all these videos. 👍👍

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

    Thanks for the lesson Paul. Introduction to another #include!

  • @santoshkawale21
    @santoshkawale21 5 років тому +1

    Heartily thank you Paul McWhorter
    :)

  • @dmeadows11
    @dmeadows11 6 років тому

    The Best of all the internet and that is big, These lessons are just Fantastic

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

    Thanks Paul for an informative tutorial. Subscribed.

  • @surajd2366
    @surajd2366 6 років тому

    sir, thank you for continuing the playlist. pplz keep posting your videos.

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

    For someone is trying to learn 'C' after spending decades in assembler this is the best tuition I have ever seen.

  • @sourabhsharma9070
    @sourabhsharma9070 6 років тому

    hi paul!.. LONg time........ur tutorials are the best on youtube.,and plz keep making them.

  • @rodnolasco
    @rodnolasco 5 років тому

    Sir, two thumbs up. The best ever explanation. Thank you so much!

  • @loptica62
    @loptica62 6 років тому

    Now this is what I've been waiting for! Great stuff!

  • @imretoth8150
    @imretoth8150 6 років тому

    me : Oeh a new Paul McWhorter vid, automatically checks it out

  • @anwertalibakraa748
    @anwertalibakraa748 5 років тому

    Thank you Mr. McWhorter , This was Helpful and all your lessons Helps me out , Keep the GOOD WORK ^.^

  • @TimConnor
    @TimConnor 5 років тому

    I must say you seem to be an awesome teacher with lots of patience, keep up the good work

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

    That was great!!! I suggest you add these few final lessons to "new arduino" playlist.

  • @Steve-GM0HUU
    @Steve-GM0HUU 3 роки тому

    Very informative - thank you.

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

    thanks for your excellent explanation sir.

  • @jaccosam
    @jaccosam 5 років тому

    Thank You !! Great lesson.
    Please continue.

  • @peterryder7874
    @peterryder7874 5 років тому

    def giving this a thumbs up .. well done

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

    Hi Paul,
    Thank you for your lessons! They are the most comprehensible tutorials on Arduino that I`ve encountered on the Internet so far. I feel jealous of your students :)
    I have a question on this one. How many interrupts can we use in one an the same program?

  • @Thefarnworth1
    @Thefarnworth1 6 років тому

    A most excellent tutorial, once again thank you.

  • @michaellmanashrove2615
    @michaellmanashrove2615 6 років тому

    Thanks for all the hart work
    you are one of the best teachers
    Keep going with the good work

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

    Sir, a suggestion please. I think instead of calling the LED status "on' and off- a string, it could be kept as a boolean-true /false and then toggling state would be as simple as !ledstatus. It would make the code more concise. Thanks for the lovely lecture

  • @christianhdez
    @christianhdez 6 років тому

    I like the way you teach, thank you.

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

    This is exactly what I was looking for the last few days!! I was wondering how to dim the different colors of the RGB Led independently, so the color change randomly. Thanks!

  • @alejandroperez5368
    @alejandroperez5368 6 років тому

    Great tutorial, keep making more Arduino videos please!

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

    "void" actually means "this function will not return a value" The full function definition is "return type, function name, ( parameter list here)"

  • @kavindugilshan
    @kavindugilshan 6 років тому

    super clean explanation
    thank you sir !!

  • @maniacatthecontrols
    @maniacatthecontrols 6 років тому

    Thank you this should help with what I want to do. I want to monitor a battery charger. It has a slow flashing LED's to say it is charging a battery but it flashes quickly if the battery is not charging. If it is not charging, you usually need to disconnect the battery and reconnect it again. Sometimes it starts to charge then gives up in after a minute or so. Then you need to try again and watch it for a while and see if it's going to keep charging. Sometimes you need to disconnect and reconnect the battery a few times before it will charge so I thought I'd use an Arduino to monitor it for me and a relay to disconnect and reconnect the battery. Then maybe add a sounder to say when the battery is charged when the LED stays on. So I'm reading what the LED is doing, rather than writing to it but I think I can work out how to do than from your videos. Thank you very much.

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

    Turning two ore more LED's on/off simultaneously, by using only delay, it's not complicated, it can be done very easy,
    so for this purpose, we don't need to use interrupt at all, but I agree, sometimes they can be very useful.
    Thanks for the video.

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

    Keep up the good work :-). Suggestion: How about replacing all the code in your interrupt routine with this: digitalWrite(YellowLED,!digitalRead(YellowLED)); that would make the code a bit shorter :-)

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

    Thank you for taking the time to explain could you use this to grab input high or low from another pin to use as a trigger to turn off another pin. As opposed to using mills function.

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

    Thank you Sir for this helpful tutorial...

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

    Nice explanation!!

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

    Really interesting lesson.

  • @andymouse
    @andymouse 6 років тому

    great stuff Sir !...……..this has got me thinking...……….cheers

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

    thanks you SIR Paul

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

    Great video! Thank you. One comment is that I think what you refer to as software interrupts are in fact interrupts generated by hardware (e.g., timers) built into the chip. Or, if I’m not correct about this I’d much appreciate an explanation as to why not. - Thanks again - Jim

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

      It's a great presentation, but I agree with you. I had hopes this would be about software interrupts like the 8-bit 6800 microprocessor SWI instruction that put the current register values on the stack and allowed an interrupt service routine to run and then do a return from interrupt to unpop the the stack to take the processor back to the state when the SWI instruction was called. This software interrupt modeled the way bigger computers make operating system calls to invoke Operating Sytems services.

  • @abdurrahmandogan621
    @abdurrahmandogan621 5 років тому

    Very clear explenation...

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

    I am interested in setting up a weather station using the Arduino. I had wondered how to get events to interrupt the main flow of the loop. I can see that I will need both software and hardware interrupts.

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

    Sinply put : Great Thank Paul

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

    Where did you speak about hardware interrupts ? I have searched all your videos without any luck... By the way , your tutorials are very helpfull .Thank you

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

    Salute to the gentleman! Makes it easy to understand!
    Any chance you can do a lesson related to blynk(app) coddling?

  • @kashifnoori6834
    @kashifnoori6834 6 років тому

    Amazing 👌! Love from India 💞

  • @anuragagarwal5480
    @anuragagarwal5480 5 років тому +2

    Why does the yellow LED keep on toggling even if it is present in void setup(). Why don't it after return statement, go to the void loop() and continue its execution there ?

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

    I've made a 7 seg 0-99 counter and I'd like to interrupt the counter when the user inputs a number and then display only that input number. So far the counter, serial display, 7 seg display, and input work fine. However, it won't display the input number until the counting loop reaches 99... which is a long wait. Any tips?

  • @elektrocrafter1030
    @elektrocrafter1030 5 років тому +1

    Verry Nice Video. But i have a Question: I want to make my interrupt after one minute, but the interrupt comes after 9-10 seconds? How can i fix this?

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

    excellent video !

  • @jamesriopelle5197
    @jamesriopelle5197 6 років тому

    Thank you, prof. McWhorter. Trying to figure out relationship between LEDStatus ="OFF" and DigitalWrite(YellowLED, LOW); Also am trying to figure out how to apply these principles to my own mission--to program arduino to read time intervals between a series of photogates with intention of measuring rate of slowing (derivative of speed) of a ball that has rolled down a ramp onto a flat continuation of the track; comparing balls of different materials (densities).

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

    First of all my congratulations for your videos! I have a question, why there isn't a return in the second IF from the void BlinkYellow function, it returns automatically?

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

    "Stopping all functions during delay is bypassed by interrupts" is the main theme.

  • @gabrielefugazzi579
    @gabrielefugazzi579 6 років тому

    Amazing lesson

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

    I want to write a script to make a joystick with 8 axis and 12 buttons based on a joystick library I found on Instructables, It is way beyond my capacity LOL. Wish I had your expertise!

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

    would be nice also to get the info how to use a new library, how do we know what instruction is supported by a new library

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

    I would use a boolean variable type for LEDStatus instead of a string

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

    Wow, you also teach the Bible. That's amazing