Arduino Programming

Поделиться
HTML-код
  • Опубликовано: 17 авг 2024
  • Get the Code : bit.ly/arduinotut
    Subscribe to Me: bit.ly/2FWQZTx
    Genuine Arduino : amzn.to/2nHD5Mk
    Kit I'm Using : amzn.to/2PdbwXI
    I wrote a Techno-Thriller called Whispers if you're interested: amzn.to/4cfdtNW
    I'd greatly appreciate a review for it if you have time.
    MY UDEMY COURSES ARE 87.5% OFF TIL February 13th ($9.99) One is FREE
    ➡️ Python Data Science Series for $9.99 : Highest Rated & Largest Python Udemy Course + 56 Hrs + 200 Videos + Data Science bit.ly/Master_...
    ➡️ C++ Programming Bootcamp Series for $9.99 : Over 23 Hrs + 53 Videos + Quizzes + Graded Assignments + New Videos Every Month bit.ly/C_Cours...
    ➡️ FREE 15 hour Golang Course!!! : bit.ly/go-tuto... (100 Available)
    Like the channel? Consider becoming a Patreon! Check it out here:
    ►► / derekbanas
    In this tutorial I'll cover the core C language used to program Arduinos. We'll look at ports, the serial monitor, looping, data types, conditionals, setup, loop, static, functions, arrays, strings, numerous math functions, bit manipulation, random, structs, styling text, pointers and much more.
    I make multiple little projects here, but the projects will get more advanced as I make more videos.
    Watch More Learn in One Videos
    ►► Java - • Java Tutorial
    ►► C++ - • C++ Programming
    ►► Python - • Python Programming
    ►► MySQL - • MySQL Tutorial
    ►► PHP - • PHP Programming
    ►► Kotlin - • Kotlin Tutorial
    ►► C# - • C# Tutorial
    ►► JavaScript - • JavaScript Tutorial

Комментарии • 878

  • @derekbanas
    @derekbanas  5 лет назад +97

    Learn in One Videos for Every Programming Language
    Subscribe to Bookmark them: bit.ly/2FWQZTx
    C++ : ruclips.net/video/Rub-JsjMhWY/видео.html
    Python : ruclips.net/video/N4mEzFDjqtA/видео.html
    Java : ruclips.net/video/n-xAqcBCws4/видео.html
    PHP : ruclips.net/video/7TF00hJI78Y/видео.html
    MySQL : ruclips.net/video/yPu6qV5byu4/видео.html
    JavaScript : ruclips.net/video/fju9ii8YsGs/видео.html
    C# : ruclips.net/video/lisiwUZJXqQ/видео.html
    HTML5 : ruclips.net/video/kDyJN7qQETA/видео.html
    CSS3 : ruclips.net/video/CUxH_rWSI1k/видео.html
    JQuery : ruclips.net/video/BWXggB-T1jQ/видео.html
    TypeScript : ruclips.net/video/-PR_XqW9JJU/видео.html
    ECMAScript : ruclips.net/video/Jakoi0G8lBg/видео.html
    Swift : ruclips.net/video/dKaojOZ-az8/видео.html
    R : ruclips.net/video/s3FozVfd7q4/видео.html
    Haskell : ruclips.net/video/02_H3LjqMr8/видео.html
    Handlebars : ruclips.net/video/4HuAnM6b2d8/видео.html
    Bootstrap : ruclips.net/video/gqOEoUR5RHg/видео.html
    Rust : ruclips.net/video/U1EFgCNLDB8/видео.html
    Matlab : ruclips.net/video/NSSTkkKRabI/видео.html
    Arduino : ruclips.net/video/QO_Jlz1qpDw/видео.html
    Crystal : ruclips.net/video/DxFP-Wjqtsc/видео.html
    Emacs : ruclips.net/video/Iagbv974GlQ/видео.html
    Clojure : ruclips.net/video/ciGyHkDuPAE/видео.html
    Shell : ruclips.net/video/hwrnmQumtPw/видео.html
    Perl : ruclips.net/video/WEghIXs8F6c/видео.html
    Perl6 : ruclips.net/video/l0zPwhgWTgM/видео.html
    Elixir : ruclips.net/video/pBNOavRoNL0/видео.html
    D : ruclips.net/video/rwZFTnf9bDU/видео.html
    Fortran : ruclips.net/video/__2UgFNYgf8/видео.html
    LaTeX : ruclips.net/video/VhmkLrOjLsw/видео.html
    F# : ruclips.net/video/c7eNDJN758U/видео.html
    Kotlin : ruclips.net/video/H_oGi8uuDpA/видео.html
    Erlang : ruclips.net/video/IEhwc2q1zG4/видео.html
    Groovy : ruclips.net/video/B98jc8hdu9g/видео.html
    Scala : ruclips.net/video/DzFt0YkZo8M/видео.html
    Lua : ruclips.net/video/iMacxZQMPXs/видео.html
    Ruby : ruclips.net/video/Dji9ALCgfpM/видео.html
    Go : ruclips.net/video/CF9S4QZuV30/видео.html
    Objective C : ruclips.net/video/5esQqZIJ83g/видео.html
    Prolog : ruclips.net/video/SykxWpFwMGs/видео.html
    LISP : ruclips.net/video/ymSq4wHrqyU/видео.html
    Express : ruclips.net/video/xDCKcNBFsuI/видео.html
    Jade : ruclips.net/video/l5AXcXAP4r8/видео.html
    Sass : ruclips.net/video/wz3kElLbEHE/видео.html

    • @priti9016
      @priti9016 5 лет назад +15

      the amount of languages you know is god like

    • @iyxan2340
      @iyxan2340 5 лет назад +1

      *MY GOD!*

    • @milutinrakovic5498
      @milutinrakovic5498 4 года назад

      I have a problem with this my laptop says "error compiling for board arduino/genuino uno" how can I fix it.

    • @bloxcodes6576
      @bloxcodes6576 4 года назад +1

      *Fast question: this is C# or C++? Becouse this is almost same with C++*

    • @3xiit3d
      @3xiit3d 4 года назад +3

      @@bloxcodes6576 C

  • @juancarrion3607
    @juancarrion3607 5 лет назад +304

    Disclaimer: this video is good for those who have some C or C++ coding background, as the way that he displays the information already assumes that you know what the effects of the code are.

    • @chitlitlah
      @chitlitlah 3 года назад

      Almost everything in the video is basic C/C++. It was a pretty good refresher for me seeing as I want to learn Arduino and those are my strongest programming languages on a computer. But yeah, it helps to know one of those or at least a similar language.

    • @bahgatsalah
      @bahgatsalah 3 года назад

      I know c#

    • @Graym672
      @Graym672 2 года назад

      Yeah, I've been experimenting with Python for the last couple years. I took a course on C++ about 12 years ago, and I'm getting flashbacks, but I really don't recall enough to be able to follow this at speed. It is a really good video though. I did an arduino tut already that accomplished (essentially) the same end goal, but through different means. This is some fun stuff!

    • @grimanium
      @grimanium 2 года назад

      @@Graym672 This may be a weird way to do this, but I cant find an answer anywhere. I got the problem that when I mistype something so for example const it ledpin = 0; and I want to insert that missing "n", its not actually inserting an "n" its overwriting the "i", so I always have to write the whole thing new. Is there some way to get around that and actually insert the stuff I want to insert?

    • @YourPeepingTom
      @YourPeepingTom 2 года назад

      @@grimanium I dont remember exactly what it is but I think that's a keyboard type setting. like alt + something or other, i'm sorry this isn't more helpful but maybe you could look it up off that? I remember having that issue and then hitting some kind of keybind combination and it stopping doing that

  • @orcasea59
    @orcasea59 5 лет назад +362

    I'm sorry, but there is a big difference between doing something while just verbally describing what you are doing, and explaining what something is, why you are changing it and what effect it will have on the end result. After Line 16 you abandoned the latter for the former.
    This is like how some teachers teach math: "Memorize the formula, plug the numbers in to the correct places and here is the result. Everyone got that?" Three math whizzes raise their hand. "Good! Let's move on!" Leaving everyone else behind, when if they had actually been taught then they, too, would understand, as well.
    Viewer's shouldn't feel 'dumb' if this moves too fast, or you're just not 'getting it' because this isn't teaching; this is just showing, and there's a big difference.

    • @lswachkkdk5959
      @lswachkkdk5959 5 лет назад +28

      I disagree. The best part is how fast he moves. I watched his ruby video in one sitting, because I had spent several years programming ruby, and just needed a refresher, but when I did the haskell video, it took me maybe 10-15 times the length of the video to get through it. Constantly rewinding and checking the documentation for haskell.
      If there is a point where you get lost, practice everything that came before it, and then come back.

    • @uberboat4512
      @uberboat4512 5 лет назад +11

      Yeah I didn't understand why he was doing the count direction after he explained the delays

    • @AdamRW240
      @AdamRW240 5 лет назад +6

      Exactly. There is no actual description of the functions or what everything means. When he does the first if he doesn't even describe what he typed to do it.

    • @LeoH3L1
      @LeoH3L1 5 лет назад +9

      @@lswachkkdk5959 This isn't aimed at you though.

    • @12uWaterPolo
      @12uWaterPolo 5 лет назад +12

      @@LeoH3L1 I've never touched an Arduino but I do know various C derivative languages (C++, C#, Java, etc) and this video was perfect because it quickly runs through the subset of C/C++ instructions the Arduino compiler will accept. This video is aimed at those who need familiarization and it does a great job.

  • @KNO3Arts
    @KNO3Arts 5 лет назад +274

    It starts easy and useful. But down the road, You keep on changing codes continuously even before you show the effects on the righthand screen. That makes it to hard to follow.

    • @pqpq1905
      @pqpq1905 5 лет назад +7

      well, to be fair he didn't say that "this is for beginners"

    • @ramraja7796
      @ramraja7796 5 лет назад +6

      KN03Arts Try Paul McWhoter video Tutorial 1 to 16 , he cover Arduino and Programming at very study pace.

    • @Flowtester1
      @Flowtester1 4 года назад +12

      @@pqpq1905 yeah he didn't say for advanced programmers either to be fair.

    • @StreuB1
      @StreuB1 4 года назад +3

      @@pqpq1905 Saying Arduino is essentially saying beginner. There are no adept programmers out there using Arduinos for industry or actual work. They are for hobbyists with the odd [mis]use in industrial applications.

    • @beatlessteve1010
      @beatlessteve1010 3 года назад +1

      @@StreuB1 I disagree , the use of microprocessor and microcontrollers are used widely in industry. I worked in the manufacturing industry for 30 years, working side by by side with engineers designing, building and testing PLC,s and microprocessor controlled safety equipment . I agree that Arduinos' themselves are not used specifically but the idea behind their function and design are the same processes that are used.

  • @DesertVox
    @DesertVox 5 лет назад +391

    This is more like a revision of Arduino programming for those who have ALREADY learned it beforehand.

    • @fredriko.zachrisson9711
      @fredriko.zachrisson9711 4 года назад +14

      I read Simon Monks Programmering Arduino before i watched this video, so i were more firmilar with the terms and all that, but i agree with you that it wasnt much help before that

    • @homework8969
      @homework8969 4 года назад +9

      True I forgot a lot of stuff this video helped a lot it does help if you already know a programming language e.g Java or C

    • @gabrielponce5173
      @gabrielponce5173 3 года назад +4

      just what im searching for

    • @premiumboi473
      @premiumboi473 3 года назад +3

      well it didn't say its for beginners

    • @thefrooklyfrook6368
      @thefrooklyfrook6368 3 года назад +2

      i think you should rather have a little bit of general programming background to start with this. I recommend starting with cs50x.

  • @f.a3202
    @f.a3202 5 лет назад +786

    you forgot something.
    we are beginners!

    • @derekbanas
      @derekbanas  5 лет назад +54

      Sorry about that. I tend to make tutorials for people that already know another language. I have a beginners tutorial if you are interested ruclips.net/video/nwjAHQERL08/видео.html

    • @paulk.bowden7134
      @paulk.bowden7134 5 лет назад +17

      Fiorii Alaia this is at beginners level😊

    • @omaxshendy5732
      @omaxshendy5732 5 лет назад +24

      yeah ,for a programmer or a (cs ) student ,its very very very basic to death XD

    • @gamestv4875
      @gamestv4875 5 лет назад +24

      You remembered something...
      To tell Derek that we are beginners.

    • @StarDoesntUpload
      @StarDoesntUpload 5 лет назад +16

      @@paulk.bowden7134
      No its not. You really already have to know another language first to follow along with these, making them very useful for programmers wanting to pick up new programming languages, but not so good for beginners.

  • @ORagnar
    @ORagnar 3 года назад +2

    I don't know if anyone has pointed this out, but at about 51:20 of the video to get the second index of the array you should type the following:
    Serial.println(*(primes+1));
    as opposed to
    Serial.println(*primes + 1);
    It just so happens that both will give you the result of 3!
    By the way, very good video!

  • @HyperionBadger
    @HyperionBadger 4 года назад +21

    You don't explain the functions for some reason.

  • @timmay131313
    @timmay131313 4 года назад +50

    This is an amazing refresher of college C programming 101!!! This is like a whole semester in one hour!! Just what I needed. loved it.

  • @BryceDixonDev
    @BryceDixonDev 5 лет назад +33

    > Did you catch the bug? I left that on purpose to test you.
    Yeah, sure. That's why you had to cut and then do a transition to another take. Because you were testing the viewers.

  • @Chupria
    @Chupria 3 года назад +11

    This was like a final exam. I can't believe sprintf showed up, I kinda just learned that for fun, but boom there it is. Defenilty glad this video exists. It was perfect, fast, and yet informative. For people who already learned this and just want to quickly gauge their knowledge. If you're just starting, it takes about 2-3 months to learn all this, but it's pretty easy once you learn it and practice it at least 2-3 times a week.

    • @derekbanas
      @derekbanas  3 года назад +2

      I'm happy you found it useful. I do my best to cram as much as possible into each minute of every video I make. Only a choice few enjoy them, so thank you :)

  • @parthjoshi5779
    @parthjoshi5779 5 лет назад +13

    this is good if you already know everything and just want to check if you know everything

  • @gusgyovi6338
    @gusgyovi6338 2 года назад +1

    Do you have a video tutorial on how to code multiple effects for RGB LEDs like the addressable led strips ws2811 ws2812 using one pin, also setup an IR remote and sound reactive option

  • @Incestbarnet1337
    @Incestbarnet1337 5 лет назад +94

    It goes way too fast for me

    • @OverlyCautious_
      @OverlyCautious_ 5 лет назад +2

      Nils Persson Me too xD

    • @ratto751
      @ratto751 5 лет назад +3

      Just click on the settings button and click on the Speed option. This will allow you to decrease the tempo of the video according to your requirement

    • @jacobabraham9944
      @jacobabraham9944 5 лет назад

      play the video more slower,

    • @f.a3202
      @f.a3202 5 лет назад +2

      didn't you understand?
      he is just saying that he is talking like we know all the basics . he is not teaching us first the basics for example what this means and what that means detailed and not that fast

    • @lswachkkdk5959
      @lswachkkdk5959 5 лет назад

      @@f.a3202 you can take an introductory programming course for that. This video condenses down weeks worth of content into a short video. You should take much more time than the length of this video if you don't already know several languages.

  • @SirDonkeyShot
    @SirDonkeyShot 5 лет назад +1

    So here is a list with things I would like to know:
    - What do the different colors mean?
    - What’s the difference between a constant int and a bool int?
    - Does the software work from top to bottom or does it look at all the given instructions all at once?
    - Is there a list with all these different functions that you showcased?
    Btw, thank you for your help!

    • @pinchikassandra
      @pinchikassandra 5 лет назад +2

      It's read from top to bottom, left to right and the colors mean nothing, they're just so we can see that we have call upon a method I believe and a boolean is just True or False, int means integer

  • @melconin
    @melconin 4 года назад +6

    Another fantastic video. Great job! No wasted space (well...maybe the 30 seconds explaining binary :-) It's an entire semester on basic Arduino Coding in 50 minutes. As noted by many others and by Derek, this is targeted at programmers learning a new language - not the place to start if you don't already write some code.

    • @derekbanas
      @derekbanas  4 года назад +3

      Thank you very much for the compliment :) Yes I tend to make videos for intermediate users who want the info and don't have the time to sit through a beginners programming video.

  • @John-wu2mn
    @John-wu2mn 3 года назад +1

    When you suggest at 2:25 that you are setting up the Led Pin to be pin 13 on the Arduino board, that is a little misleading. Granted you will use this number 13 later in the code to identify which pin you are going to use on the board, but really all you're doing at line 1, is setting up a value of 13 in memory - that you may or may not use in future

  • @compunerd
    @compunerd 4 года назад +5

    This is the best programming video I've ever watched. Most of them go super slow and bore me out but this one gets straight to the point! Thanks!

    • @derekbanas
      @derekbanas  4 года назад +1

      Thank you for the nice compliment :) I hate slow tutorials as well

  • @Osman-lf6fp
    @Osman-lf6fp 5 лет назад +2

    Important note for all:
    == Means equal
    = Defines something

  • @SuprunAlexey
    @SuprunAlexey 6 лет назад +57

    Wooow really nice, I think this video will be in top about adruino

    • @derekbanas
      @derekbanas  6 лет назад +4

      Thank you :) I hope it helps

    • @brownfamily6907
      @brownfamily6907 3 года назад +7

      Two years later and is on the top search results

    • @lambachurro8790
      @lambachurro8790 3 года назад +1

      u wrote adruino instead of adruino
      or is it written both ways? idk bro im bad at life

  • @FritsvanDoorn
    @FritsvanDoorn 6 лет назад +7

    Hi Derek, you are a master. Hopefully I can teach you something. Some days ago I learned the other difference between ++i and i++. The first increases i by one first and than returns the new value of i. The second makes a copy of the old value of i and then it increases i with one and then it returns the old value, the copy. For a base type it is not that a biggy, but with classes it might be that the second method, the suffix ++, makes a copy of the object. When it is used in a for statement like this, the return value is not used and therefor it is deleted, it might even call the classes destructor. This is all time consuming, so it is better to use ++i (or ++ some class object) because it is faster. I think you already know this, but on the other hand I hope it is interesting. Looking forward to the evolution of this wonderful new series. Thanks!

    • @derekbanas
      @derekbanas  6 лет назад +2

      Thank you for the compliment :) That is an example of a great piece of knowledge that while I knew, I was never smart enough to bring up in a tutorial! Thank you for taking the time to explain it so well! I hope everyone enjoys this tutorial. I hesitated making it because my electronics tutorial was originally a big flop, but I think it will be fun.

    • @FritsvanDoorn
      @FritsvanDoorn 6 лет назад

      I'm sure it will be !

    • @kusumitahazra3985
      @kusumitahazra3985 5 лет назад

      Huh! you think he doesn't know!!!!

    • @thecombatengineer7069
      @thecombatengineer7069 5 лет назад

      Thanks brotha, good note. I wonder what kind of time this saves, literally. If nothing else, there isnt a replicate byte hanging around...very good to learn, thanks again

  • @ClearlyCero
    @ClearlyCero 4 года назад +1

    Honestly guys, this video is about as basic as you could sensibly do. C languages are not easy and you shouldn't expect to have mastered robotics in 1 hour.
    This video is a great reference for syntax but if you are at ground zero then your best best (this is what I'm doing) is to pick up a project kit and then use this to experiment with it once you're done.

  • @actorzone856
    @actorzone856 4 года назад

    I am over 60 and just discovering Arduino as I am on a different mountain with my knowledge base, so I have been looking at how electronics drive and operate machines, i got a lot out of your tutorial even though i don't know what the language means but the content shows what is possible and how flexible the Arduino programming is to change finite details to suit ones needs, now i just need to learn what button to press. thanks.

    • @derekbanas
      @derekbanas  4 года назад

      I'm happy it helped. I have additional videos here that may help ruclips.net/video/I6jIORI7K2k/видео.html

  • @Mr._Tony
    @Mr._Tony Год назад

    The statement in line 10
    Serial.println(*primes + 1);
    doesn’t print the second prime number,,
    but instead the first prime number + 1, which also happens to be 3

  • @zepledfan413
    @zepledfan413 4 года назад +2

    This video was what I've been looking for. I learned VBA and have used it a bunch. That was enough for me to mostly follow what you did. I just gotta get all the different commands committed to my memory.

    • @derekbanas
      @derekbanas  4 года назад

      I'm happy you liked it :)

  • @mr.destructive8554
    @mr.destructive8554 5 лет назад +5

    Little problem, at about 11:53 my serial wont print anything

  • @86abaile
    @86abaile Год назад

    Love that you didn't waste time showing us how to install arduino IDE. I hate that so many tutorials think we can't handle something so basic.
    I have a question though: @18:20 why did the for loop execute before the while loop if the while loop was in the setup? Sorry if this is a basic question, I'm quite new to this.

  • @bagoquarks
    @bagoquarks 3 года назад

    At 3:35, "baud" is "bits per second", not "characters per second." A bit is a 1 or a 0, 8 bits denote 1 of 256 characters. Therefore, 9600 / 8 = 1200 (characters per second), still more than adequate for logging output from a serial device for humans debugging their code.

  • @cobyreimer6918
    @cobyreimer6918 5 лет назад +2

    I took an intro class to comp sci and you basically just covered the entire curriculum in one vid. I followed but only because i've already learned it. to anyone new, it would be impossible

    • @derekbanas
      @derekbanas  5 лет назад +1

      Yes it is meant for people that have learned another language already

  • @aerobetamax6022
    @aerobetamax6022 5 лет назад

    Good showcase of arduino programming for people that already know at least basic programming theory and another language. Not suitable for absolute beginners.
    For the beginners: read the documentation, do some follow along tutorials. When you are done with those start customizing the code, change the values and see what happens. Over maybe a few months of daily tinkering you'll start to understand. Do not expect programming to be a 50-minute endeavour. Do not expect one person to give a complete tutorial on how to program. The knowledge accumulates with every line of code you write and think about and every video you watch and try to understand.
    I bought an arduino yesterday and I understand the concepts he does in the video. My previous programming experience is GML and Python for over a year. The basic theory translates over almost every language, only synthax and structure changes. It's quite simply logic!
    Keep up and don't give up. You encounter a problem, just try it from different angles and then go go do something else for a while. Often the subconcious will figure out a solution quite spectacularly. Good luck!

  • @pterodactylx3100
    @pterodactylx3100 4 года назад

    Will not work if if 'int' of 100 initially is changed to 90
    or any number not a factor of 1000. Therefore to improve, should be
    >= 1000 and

  • @yvesinformel221
    @yvesinformel221 3 года назад +1

    I agree, this is not a beginner course, but a good C refresher or it could be very usefull for peoples who knows other languages.

  • @steb430
    @steb430 3 года назад +1

    This the best basic tutorial I seen so far, Thanks!
    I just needed to know how to lay down code, I have books that explain all the fine detail but the code they use far too function orientated and therefore unreadable unless you've studied all their functions in minute detail.

    • @derekbanas
      @derekbanas  3 года назад

      Thank you for the compliment 😁

  • @vishnuprasad7574
    @vishnuprasad7574 4 года назад

    i have IOT practical exam which consists of building a simple project(problem statemen given by external teacher ) within 3hrs in lab
    on your choice of board
    watching this will help in answering lot of VIVA and oral question
    thank you my dude

  • @evangelinecheng3171
    @evangelinecheng3171 6 лет назад +3

    Just want to say that your videos are fantastic! I picked up Python from your videos last year and have since become a full fledged software engineer this year, though in Clojure! Also followed your Clojure tutorial early on in my career :-)

    • @derekbanas
      @derekbanas  6 лет назад

      That is awesome! Congratulations!!! I'm very happy to have been able to help :)

  • @leyun._.00
    @leyun._.00 4 года назад

    see a lot of people complaining about going too fast but I think for people who have experience of programming, just not c++, it is very useful! like for me! thanks a lot.

  • @DiscoverRajivVlogs
    @DiscoverRajivVlogs 5 лет назад +1

    Hey, what these codes are called Serial.begin, pinMode, delay, digital write etc(orange texts)? How can I find full list of these codes?

    • @jerer194
      @jerer194 5 лет назад

      www.arduino.cc/reference/en/ there you go

  • @sschmit8882
    @sschmit8882 4 года назад +2

    The only thing I am confused on is at 10:12. The checkDirChange integer has a parenthesis and two other integers inside of it. Can someone please explain what this means? It would help a lot!

    • @markkim4841
      @markkim4841 3 года назад

      int checkDirChange is a function so it received two variables the int isidr the brackets and returns a int value

  • @benoitlaporte1700
    @benoitlaporte1700 Год назад

    Good video. I just completed the exercises found in the arduino uno stater kit and I never really understood the coding part of the manual found in it. This made it way clearer.

    • @derekbanas
      @derekbanas  Год назад

      Thank you very much :) I'm happy I could help

  • @ronchampagne8484
    @ronchampagne8484 5 лет назад +20

    You need to start with a DETAILED explanation of the terminology . why are words orange and others blue . What is the meaning of the brackets ?Why is the word void used ? ETC ETC ETC .
    You can't teach somebody Chinese by explaining the chinese language in chinese !

    • @digitzero3613
      @digitzero3613 5 лет назад

      He is teaching to code for arduino, You should checkout some c, c++ tutorials since its just for the guys with coding background who want to know how does to code for arduino.

    • @thomasvarghese4085
      @thomasvarghese4085 5 лет назад

      Keywords..special words

    • @thevapingpig
      @thevapingpig 4 года назад

      I think you should go and learn C programming 101 before you can do this. This already assumes you have a good deal of familiarity with the language, he is just demonstrating how it works in the IDE. He gets into how data types, looping structures, functions, and all of that works extremely quickly because this is for those who want to start doing stuff on the embedded side of things. The highlighted text is meaningless beyond the type of data class that is being utilized and helps make it more visually interesting. The brackets signify where a function or operation begins and ends in a segment of code. Void is used when performing an action in function, opposed to returning a specific value.

    • @dilipghosh5852
      @dilipghosh5852 4 года назад +1

      You need to know C in order to understand this completely

    • @StreuB1
      @StreuB1 4 года назад

      @@Rassettaja If colors meant nothing, there would not be colors. It would be monochrome like back in the day. Adding color is to add differentiation and depth as well as to call attention to change.

  • @Jonathan-ex3sl
    @Jonathan-ex3sl 4 года назад +1

    I’ve had a bit of exposure to python but not C or Arduino and I found this video very helpful, thanks!!

  • @SmellyBones
    @SmellyBones 4 года назад

    It's a 3-hour video the way I watch it, and very effective. Thanks, Derek Banas!

    • @derekbanas
      @derekbanas  4 года назад

      Thank you :) I'm happy it helped

  • @soiyarisa
    @soiyarisa 2 года назад

    It sounds and feels like Jeff Goldblum is teaching how to code and eventually create a transporter. Haha. LOVE IT!

    • @derekbanas
      @derekbanas  2 года назад +1

      Thank you very much :) Jeff and I were born in the same city

  • @user-zq5zf6xe1x
    @user-zq5zf6xe1x Год назад

    Looking for help as I’m completely new to this. I am trying to add a zip file to the ide library on a MacBook Pro. I’ve downloaded the library file from github, opened ide, then sketches the add zip library, it takes me to the downloaded file which I open. I thought it was supposed to add that file to the ide library after I opened it. It doesn’t. I’ve also tried opening the download then dragging it to the sketchbook location on the Mac but cannot get it added to the sketch library. Any help is appreciated. Thanks

  • @beatlessteve1010
    @beatlessteve1010 3 года назад

    Derek, Thank you, at first i was disappointed and frustrated by the way you explained the coding ideas involved in this simple program, but after watching a couple times I realized your teaching method really challenged me to dig in and figure it out..

    • @derekbanas
      @derekbanas  3 года назад

      Thank you. Yes My approach is different from most. I try to create videos that can be paused through for deep understanding, while also acting as review tools. They aren't for everyone, but I'm happy it worked for you.

  • @LegoBeto
    @LegoBeto 5 лет назад +1

    Great video. For those of us who have read a book about programming but don't know how to get things off the ground and could use a little bit of simplification, this video lays it all out really well. The math section is super useful!

  • @brajeshgupta729
    @brajeshgupta729 4 года назад +1

    At 5:31 why didn’t you use delay(100); directly ?

  • @Nicholas-ze5vv
    @Nicholas-ze5vv 3 года назад

    If your IO is windows, you can simply download the Arduino IDE from the Microsoft Store.

  • @Blackkspot
    @Blackkspot 5 лет назад +8

    this appears to be a tutorial for superhumans.

  • @woosix7735
    @woosix7735 2 года назад

    man youre turorails are very useful. this is like the 3d time yt search I find one of your tutorials

    • @derekbanas
      @derekbanas  2 года назад

      Thank you :) I'm happy you enjoy them

  • @robertbryan8870
    @robertbryan8870 5 месяцев назад

    cannot google cast video screen. cut half of the picture off on my tv screen

  • @DeputatKaktus
    @DeputatKaktus 5 лет назад +1

    Very informative and useful.
    However, you really go through all the stuff at breakneck speed. Gently applying the brake might help. I found it very difficult to follow along at times and had to pause and rewatch individual sections several times. But then, you crammed a ton of material into that one hour.

  • @F111BMATHIS
    @F111BMATHIS 2 года назад

    It does go fast which is nice, but I didn't hear an explanation of the "return countDir;" Return to what?

  • @mByyurt
    @mByyurt 5 лет назад

    This video is best for those who have some background with some programming. I watched x2 speed and got all I need to be going on with. I think absolute beginners should seek another source which explain basic concepts more throughly.

    • @lazyh-online4839
      @lazyh-online4839 5 лет назад

      I think this same RUclips has a video specifically for less experienced users too, I saw a link in his reply to another comment I think.

  • @talhaakhtar6172
    @talhaakhtar6172 3 года назад

    I see that you are not write function prototype(declaration) in your source code well I have to write them to get the identical results as yours'... And when I don't mention them it throws an error the specified function is not declared...

  • @phantomrose1999
    @phantomrose1999 5 лет назад

    I first learnt "C" using the Microsoft C compiler, with Dos, running on a IBM PC, with a green monitor !!! funny how i remember a fair bit of it, while watching this video !! made me smile.. Getting my first Adrino tomorrow and will be getting my hands a little dirty again.. Gad !! i have become old !! ha

    • @derekbanas
      @derekbanas  5 лет назад

      You're only as old as you feel :) I'm happy you liked the video. Up next I'm making Conway's game of life

  • @notorioz810
    @notorioz810 2 года назад

    How do you know al these functions ?
    I mean how do you know how to code ‘delay’, ‘int’, ‘digitalwrite’.
    Is there a tutorial somewhere where I could learn stuff like this ?

  • @j3s0n
    @j3s0n 4 года назад

    9600 is the baud rate so it should be symbols per second rather than bits per second surely

  • @th0row
    @th0row 4 года назад +1

    This video helped a lot for me because I already know coding and can use other languages well, but it's a good way to transition into the syntax and logic of another language. Thank you!

  • @rafaelportugal5261
    @rafaelportugal5261 3 года назад +2

    "Come unto me, all ye that labour and are heavy laden, and I will give you rest." Matthew 11:28

  • @ivanravenski
    @ivanravenski 4 года назад

    'checkDirChange' was not declared in this scope
    our code up to 11:31 is identical but im getting this error from countDir+ checkDirChange all my puncuation is correct

  • @II_xD_II
    @II_xD_II 5 лет назад +2

    man plz do a big playlist teaching Arduino Programming

    • @derekbanas
      @derekbanas  5 лет назад

      I made an 11 part tutorial starting here ruclips.net/video/I6jIORI7K2k/видео.html

  • @pheonixeye_1162
    @pheonixeye_1162 5 лет назад +1

    God! Is there any programming language left in this world that Derek has not done
    DEREK U ARE CRAZZYY!!

    • @derekbanas
      @derekbanas  5 лет назад +1

      That's funny :) Crystal and Fortran are coming soon

  • @rodmanunderhilliii8198
    @rodmanunderhilliii8198 3 года назад

    Thanks, this will make a great cheat sheet, for me, when I forget certain syntax, and methods, when writing code for my ESP 32. Arduino, was my first language, and I'm surprised that I remembered as much as I did, watching this tutorial. This is the first tutorial, I've watched from your channel, that I didn't feel lost or plain stupid; great review of the basics, for me...
    I will probably watch your other Arduino tutorials, because there is always a nugget of knowledge here or there, that I can pick up, that you dropped, in your seemingly never ending path, to the motherload of coding enlightenment.

    • @derekbanas
      @derekbanas  3 года назад

      Thank you for the nice compliment :) I'm happy I could help

  • @glue2308
    @glue2308 2 года назад

    i just wanna do as simple thing that lights up or when you turn it on for our project

  • @LeoH3L1
    @LeoH3L1 5 лет назад

    This isn't teaching, this is just you doing it and saying what you're doing.

    • @derekbanas
      @derekbanas  5 лет назад

      Please ask any questions that you have and I'll be happy to answer them.

    • @LeoH3L1
      @LeoH3L1 5 лет назад

      @@derekbanas I don't have any, it's just the video starts with the basics, which suggests the intent is to teach, but it quickly went into less of a lesson and more of a commentary, which if the intent was to teach, it doesn't really work.

    • @derekbanas
      @derekbanas  5 лет назад

      Sorry if it was confusing. C is really a bad first language to learn. If you are new to programming I have a Python video series that may help ruclips.net/video/nwjAHQERL08/видео.html I'm always available to answer any questions that you may have.

  • @bob-ny6kn
    @bob-ny6kn 2 года назад

    I don't know if you still monitor this, but my setup() runs twice (two "countDown()" counts) before the rest of the code. Any advice on why, and how I might fix it?

  • @nostalgicaccount-bb8ll
    @nostalgicaccount-bb8ll 3 года назад

    42:13 [place holder because im rewinding has no value to any other viewer unless they also need to rewind(0.05% chance)]

  • @warithbello8385
    @warithbello8385 2 года назад

    My port isn't showing any of those
    It's showing different COM

  • @morthim
    @morthim 2 года назад +2

    i think there is an error when you talk about shifting bits left. you add to the end two 0. that is a correct floating point perspective, but if it works like standard C it should be overflowing the top bits while maintaining the data structure size. so a bite of data 12345678 shifted left 2 will be 34567800.
    this might be wrong for arduino, but in standard C that is how it works. also in standard C there is another shift left option.

  • @AndreChampoux
    @AndreChampoux 2 года назад

    A see several negative comments... Well, I liked it & watched it all.
    People forget that they can pause & try the code for themselves. If they expect to watch it once and be C++ programmers, they are smoking too much pot. Programming takes time, experience and a lot of trying out different code.
    The only thing I would have liked to see more of is what the Arduino was doing when you ran each code sample.

    • @derekbanas
      @derekbanas  2 года назад

      Thank you for taking the time to tell me you enjoyed it :)

    • @AndreChampoux
      @AndreChampoux 2 года назад

      @@derekbanas In case I need help, are you available for hire to program one of these bad boys when it arrives?

    • @derekbanas
      @derekbanas  2 года назад

      @@AndreChampoux Sorry but I don’t have the time. I have a 12 part series in which I explain everything using real low level electronics starting with this video ruclips.net/video/I6jIORI7K2k/видео.html

  • @swapnilbandgar8730
    @swapnilbandgar8730 3 года назад

    Please help me :::::
    I want to start my loop only when my Ultrasound sensor detects the object
    and if the object is not present then it should directly stop all the operations until the ultrasound sensor detect another (different or same) object

  • @coolkid9770
    @coolkid9770 4 года назад

    what does int do?
    why do some people keep it out side the code and why do some put it in the void loop?
    sorry i am beginner...

  • @janaks100
    @janaks100 5 лет назад

    Please somebody help me. I received an error .Check direction change was not declared in this scope

  • @bee4472
    @bee4472 4 года назад

    Another video that explains something, but only if you already know what’s being explained.

  • @physicsguy6625
    @physicsguy6625 6 лет назад +2

    May god bless your life Derek.Awesome!!!
    One suggestion:Please increase audio volume

  • @thecombatengineer7069
    @thecombatengineer7069 5 лет назад +2

    Excellent video. I've been using Arduino for a little while but have no previous programming background. I have all the basics down but this helped with understanding the use of functions and arrays quite a bit (to clean up my code), so huge thanks. I really need some help on "state machines" and using the 'for loop' to help change state without having to increment the 'i' value, but using the stored value to change other variables states. Can you recommend any good reading or sites? I've watched your "C in a hour" video and reference it often, but still run into trouble with state machines. Many thanks again, and keep the videos coming brotha.

  • @roboxen8447
    @roboxen8447 4 года назад +1

    GUYS, This is a ARDUINO PROGRAMMING VIDEO, it doesnt says is for beginners, stop saying "you forgot that we are beginners" bruh

  • @d3thtr4p10
    @d3thtr4p10 4 года назад

    Great video, although it ended on a bit of a sour note when you said that "Basically an array, is actually a pointer".
    That's a common held misbelief. Arrays are NOT pointers!
    Say you have something like:
    #include
    #include
    int main(){
    int* array = malloc(5 * sizeof(int));
    for (size_t i = 0; i < 5; ++i){
    array[i] = i*i;
    }
    int arr[] = {1, 4, 9, 16, 25};
    size_t l_array = sizeof(array) / sizeof(array[0]);
    size_t l_arr = sizeof(arr) / sizeof(arr[0]);
    printf("l_array = %lu
    ", l_array);
    printf("l_arr = %lu
    ", l_arr);
    return EXIT_SUCCESS;
    }
    Compile and run the executable in the terminal and you will see that l_array will be 2 and l_arr will be 5, which is the actual correct answer for the length.
    The length of an array CANNOT be reconstructed from a pointer.
    Thus... arrays and pointers are NOT the same thing.
    You probably meant to say that arrays decay into pointers. The fact that you knew to put an argument for the length of the array within the function "printArray(...)" shows you actually know it.

  • @khanezflouss
    @khanezflouss 5 лет назад

    Very awesome tutorial, I don't know why people complain about the speed when they have the rewind and pause button

    • @derekbanas
      @derekbanas  5 лет назад +1

      Thank you :) I'm happy you like tutorials with no dead air

  • @vivekkarthik5381
    @vivekkarthik5381 6 лет назад +3

    Hey Derek!! Thanks a lot for these amazing videos again. I have a request! I am an audio engineer with a basic programming skill. I've always been fascinated with how audio plug-ins are made. Could you make a series of "audio programming"?

    • @derekbanas
      @derekbanas  6 лет назад +2

      Thank you :) I'll look into it and see what I can do

  • @CrimsonRoblox
    @CrimsonRoblox 3 года назад

    I need help with my school project. It's a seed sowing robot. I have a big and wide acrylic sheet. Do I need 2 motor drivers or 1??? I have servo motor, ultrasonic sensor, infra-red sensor and soil moisture sensor. I have mega2560 microcontroller. How to program by moving the robot and control with Bluetooth that's what I wanna do first

  • @pewpewentertainment6858
    @pewpewentertainment6858 2 года назад

    for me it keeps saying 'countDirChange' not declared in this scope.

  • @denzpants9285
    @denzpants9285 Год назад

    Much better then what my school offers, using a rich shield kind of defeats the purpose of the whole arduino learning expierence.

  • @shiretsu
    @shiretsu 2 года назад

    nice vid man, learned some of C's limitations. also, you sound like a straight version of jeff goldblum. very calming voice

    • @derekbanas
      @derekbanas  2 года назад

      Thank you very much :) Mr. Goldblum grew up in my city!

  • @noeflores-ramirez7998
    @noeflores-ramirez7998 6 лет назад

    Thank you so much Derek! I am also glad your back is better (I'm assuming, since you uploaded). I'm still watching the tutorial and I will comment if I have any questions. I just wanted to demonstrate my gratitude beforehand.

    • @derekbanas
      @derekbanas  6 лет назад

      Thank you very much :) Yes it is getting better. Thank you for your concern.

  • @pjdunlop6111
    @pjdunlop6111 5 лет назад

    Might be something silly but when i was following this, i got to compiling at around 12mins in the video, when I compiled it threw up an error saying checkDirChange was not declared in this scope. Is there anything obvious that I would be doing wrong?

    • @derekbanas
      @derekbanas  5 лет назад

      Look at line 129 on this page www.newthinktank.com/2018/08/arduino-programming/

    • @emilheermann8960
      @emilheermann8960 5 лет назад

      Me too same error

  • @tald7014
    @tald7014 5 лет назад

    Hi Derek, your video is great, however, I believe you have a little mistake at (51:10) with pointers, I believe that you should have used *(primes+1) to address the second array's cell. Due to your array structure, 2, 3, etc.. you get a result that seems right, but you do not address cell 2. I believe that instead you point to cell #1, and add to it's value (2) +1 = 3 which seems like the value in cell 2, however, if you change cells 2 value to something else like: 90, you will locate the mistake. *primes takes precedence and than 1 is added arithmetically. I hope you can confirm and add a corrective note in your excellent video, if I'm right.

  • @ugnius9646
    @ugnius9646 3 года назад

    I m going to watch this video that many times that i will need to learn everything

  • @2271masoud
    @2271masoud 6 лет назад

    wow you're back. I hope your back is better now. Thanks for this tutorial Derek

    • @derekbanas
      @derekbanas  6 лет назад

      Yes it has been to long. I'm feeling much better now. thank you for asking :)

  • @gizlikullanc4861
    @gizlikullanc4861 5 лет назад +1

    You don't know how pointers work. *ptr + 1 was not the number at 1st index, it was the number at 0th index plus 1

  • @comradeotaku2412
    @comradeotaku2412 2 года назад

    Heyo, nice video, I tried do the same thing 8:40, minus the display thing, to make a row of LED's go back and forth, yet somehow the last part doesn't want to work as the integer doesn't wants to be edit and become a negative number to count down and all that so It instead counts up to infinity or it gets stuck at second LED as I have a suspicion it doesn't update the countdir anymore and I'm a bit stuck at what to do

  • @videoaccount5676
    @videoaccount5676 5 лет назад +12

    Arduino programming IRL in a nutshell: CTR+C, CTR+V

  • @amparorod2000
    @amparorod2000 4 года назад +1

    Can I use a text editor than Arduino IDE???

  • @melannieworld
    @melannieworld 2 года назад

    I have a claw machine, which i would like to setup something like this to move the claw and drop the claw by using my computers keyboard. Any ideas, where to start?.

  • @MatthewFolan
    @MatthewFolan Год назад

    as someone watching this in 2023 is this all still applicable? i know that there is new versions of the ide software but is all the programming the same?

  • @barjammar
    @barjammar 4 года назад

    Where did Derek define "max" and "i" in the early for-loop as I'm seeing an error "'i' was not declared in this scope". Secondly, I eventually figured out where "void" came from. As I understand it, the underlying C-code has a "main()" program which calls "void setup()" and "void loop()" to start the whole thing off. This is so basic no-one ever realizes that its a knowledge gap. I'll put this on Patreon for Derek too. Thanks if anyone wants to talk about program flow and structure for me.

    • @derekbanas
      @derekbanas  4 года назад

      Sorry for not making that clear. I provide all the code here with a ton of comments to make it easier to understand www.newthinktank.com/2018/08/arduino-programming/

  • @arnab_blue
    @arnab_blue 4 года назад

    Great learning...
    But my big question is, how the serial monitor displaying new upload output, clearing the previous output...?

  • @badgergaming9503
    @badgergaming9503 3 года назад

    I have confusion about that ,
    Which language is used in Arduino

  • @musaaftabi6269
    @musaaftabi6269 3 года назад

    hello my friend
    i make a project with arduino uno and IRremote and stepper motor .the remote control turn the motor shaft to right and left. i need a little help with the codes. is it possible to define just one button of remote control to turn the shaft to right and left ???
    how to right the code ?
    i can send the codes i wrote if its needed.