Advanced Arduino Code Optimisation with Pin Registers

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 มิ.ย. 2024
  • In this video I will show you alternative to using pinmode, digitalRead and digitalWrite commands to manipulate arduino pins.
    Showing pin registers can help you optimise arduino code but also oin manipulation done this way is also much faster
    Link to code
    projecthub.arduino.cc/mdraber...
    If you like this content and you want to support me in creating similar videos go to my Patreon webpage
    / mariosideas
    Or Paypal
    www.paypal.com/cgi-bin/webscr...
    Music Credits;
    ------------------------------
    Track: Autumn - KV [Audio Library Release]
    Music provided by Audio Library Plus
    Watch: • Autumn - KV | Free Bac...
    Free Download / Stream: alplus.io/autumn
    ------------------------------
  • วิทยาศาสตร์และเทคโนโลยี

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

  • @user-ht2ij2do7t
    @user-ht2ij2do7t 5 หลายเดือนก่อน +2

    ❤ From SRI LANKA 🇱🇰❤ I've learnt lot from your channel.. and I think you deserve much much more subscribers, likes and comments

  • @johneagle4384
    @johneagle4384 2 ปีที่แล้ว +4

    Without videos like yours, my projects would be dead in the water. Thank you for the excellent explanation.

  • @bobvanwagner6099
    @bobvanwagner6099 3 หลายเดือนก่อน

    Well done video presentaton. Thoughtfully done, nice pace.

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

    Thanks, someone has built a circuit with an Atmga8 on it, so I THOUGHT I knew about them. One of the switches on their board goes to pin PC3.. so there I am DRDC &=PC3 your tutorial made me look at PC3 which turns into a 3 hmm thankfully only 3 leds and three switches!!

  • @fsmaia
    @fsmaia ปีที่แล้ว

    Very good! Congrats.

    • @marios_ideas
      @marios_ideas  ปีที่แล้ว

      Thanks. Don't forget to give video a like. Helps with growing the channel

  • @jozefsoucik3115
    @jozefsoucik3115 3 หลายเดือนก่อน

    great vid. i always need deep understanding to understand the thing. this made me moved forward... Also i learned today, that you can achieve much memory saving by use for delay(1000) function thic code instead: for (long i = 0; i

  • @raymondmichael4987
    @raymondmichael4987 10 หลายเดือนก่อน

    Fascinating 😊❤

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

    Great video 👍

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

      Thx:) give vide a thumb up if you liked it

  • @thaboluvhimbi4208
    @thaboluvhimbi4208 5 หลายเดือนก่อน

    Informative

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

    Nice explanation. Setting PIND also functions as a toggle...eg: PIND = B00010000 will toggle pin 4 each time the code is executed.

    • @marios_ideas
      @marios_ideas  2 ปีที่แล้ว +4

      I did not know that:( I would have included it in my video

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

      @@marios_ideas No worries, it seems wrong to 'set' a read only register but it works and is very useful.....and extremely quick. Apparently turning pins on and off is a 'thing' and the challenge is, of course, to do it the fastest.....you'll find lots of weird and wonderful 'port manipulation' code on the subject.

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

    nice video & nice explanation

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

      Thx:) Give the video thumb up. Helps to promote my channel

  • @IvanEng747
    @IvanEng747 ปีที่แล้ว

    This example maybe apply in esp12F?

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

    Please make next video on
    How to create fastest function
    Replacement for
    Digital read
    Digitalwrite
    Analog write
    Analog read
    Delay function

  • @alcanceweb
    @alcanceweb 8 หลายเดือนก่อน

    Great tutorial, thanks. I'm also interested in your small led modules. Could you please provide me link to buy them?

    • @marios_ideas
      @marios_ideas  7 หลายเดือนก่อน +1

      AliExpress . Search for lillypad leds. They are generally for electronics to be attached to clothing. But i thought they work great in breadboard projects

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

      Outstanding. Thank you, sir.

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

      No problem. Consider supporting my channal

  • @snouzz-gaming917
    @snouzz-gaming917 ปีที่แล้ว

    Hi
    great Video!
    Do you can explain how to write a code with register for nrf24l01 (Receiver & Transmitter) ?

    • @marios_ideas
      @marios_ideas  ปีที่แล้ว

      My pleasure:) like and subscribe to my channal. Also consider supporting it.

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

    Is it good or bad
    14:40
    That pulse

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

    Pls make more advance video on port manipulation and writing of complex arduino codes

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

      Any particular aspects you are interested in?

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

      @@marios_ideas sctually i need all.. but at first need ADC and timer programming.

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

    Can we use digital pin D0 and D1 as output and drive LED

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

      Yes

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

      @@marios_ideas
      But if we attached LED to those pin then is there any problems with Rx TX communication

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

      You cannot do both. I always thought D0 and D1 are off limits and reserved for RX TX. But with pin registers I was able to use them to control LEDs

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

      @@marios_ideasfor example I built a blutooth controlled robot
      If I detected any obstacles can I drive D0 and D1 pin to logic low

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

      If I do so .... Is blutooth connection disconnected

  • @no5x937
    @no5x937 2 หลายเดือนก่อน

    There is NO IF statement in the first code shown. Register D has 8 bits (NOT 7). Otherwise, great video.

    • @marios_ideas
      @marios_ideas  2 หลายเดือนก่อน

      Point me to the exact timestamps in the video so I can inform about those mistakes in the description