Bare-Metal MCU #3 - Barebones Microcontroller

แชร์
ฝัง
  • เผยแพร่เมื่อ 2 มิ.ย. 2024
  • This is the third video in a journey from Arduino to STM8. The goal is to begin with Arduino, which is a popular platform to serve as a starting point. I'll then break it down into a fundamental level, and then apply those fundamentals to other microcontrollers, such as the STM8.
    This video focuses on how to run code on a microcontroller directly from a breadboard without the Arduino PCB.
    ATMEGA328P Datasheet: ww1.microchip.com/downloads/en...
    ATMEGA328 Datasheet:
    ww1.microchip.com/downloads/en...

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

  • @gusmcmanus6159
    @gusmcmanus6159 ปีที่แล้ว +19

    Omg. Dude. WTF??? This is absolutely the cleanest, most concise, most useful video series I have ever watched. I’m so glad I found this series. I’ma newbie to bare metal and you’re changing the way I look at the world in such an easily digestible way. THANK YOU!

    • @artemt1987ify
      @artemt1987ify 10 วันที่ผ่านมา

      Absolutely agree with you. Its the best explanation about micro controllers I've seen on TH-cam

  • @grantscott1686
    @grantscott1686 3 ปีที่แล้ว +19

    I’m trying to teach myself basically all things electronics for work and for personal interest and these videos are really nice and helpful. Thank you for making these!

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

    Thank you dude. I am on my second year of the uni, always loved low level stuff and c/c++, but was struggling to find where I want to apply myself. I recently found a thing called embedded development lol, and understood that it is my thing. Got an esp32, played a bit, but I really wanted to understand stuff on a deeper level, so I got my Arduino as it is relatively simpler compared to esp. I just want to say that you really demystified a lot of stuff for me, and the courses from the uni that I couldn’t process before clicked in! Keep it up, wish you all the best!

  • @RalphKoettlitz
    @RalphKoettlitz 3 ปีที่แล้ว +7

    Just for the sake not becoming frustrated by erratic dying uC. Add always a 100nf ceramic and a 10uf capacitor to the power rail, to prevent effects like a latchup

  • @leandrowferreira
    @leandrowferreira 3 ปีที่แล้ว +5

    Excellent series. Arduino deeper. Like it. Just one point: that 16MHz crystal you shown (6:30) controls the secondary chip (frequently an ATMEGA16U2). The clock to the ATMEGA328 is given by a little oscillator closest to the main chip. I'm considering an original-like board, with a DIP28 chip.

  • @vivekvenkatsubramaniam437
    @vivekvenkatsubramaniam437 3 ปีที่แล้ว +8

    This is fantastic stuff. I hope you go into stuff like pwm, timer & ext interrupts, and adc as well. There are few resources online that can break down those topics for newbies like me

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

    I want to see the next one. barebones stuff always throws me off. Subbed.

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

      Mitchel Davis they are very useful. I knew some of this already but you explain it well enough for my brain to click and go “ooooh THAT’S HOW”

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

    Your presentations are the best way of teaching. I have watched your video on STM32 too, to gain a top level view before diving into details. Thank you for the high quality presentations.

  • @stevenliu1070
    @stevenliu1070 3 ปีที่แล้ว +3

    These videos are superb.

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

    Very educational series of videos. Thanks for sharing.

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

    Sir!! You are incredible, thanks so much for the detailed demonstration

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

    Wish I had got into this earlier. Thanks, great job and thanks for sharing your wonderful knowledge. Always wondered how these all work and its now becoming clearer

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

    super clean, and I LOVE the fact that you ask yourself the same questions I would do out of curiosity, like doing stuff that you it wont work but you anyways do it just to show, thanks for those details!

  • @dudel7557
    @dudel7557 3 ปีที่แล้ว +3

    Awesome video series :)
    Keep it up 👍

  • @1fertube
    @1fertube หลายเดือนก่อน

    Great video, Mitch

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

    In one tutorial I saw suggesting always connect ground first. Unless you know connecting power wire first will not damage the mcu. I love that you explained the oscillator part.

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

    This series is very helpful 👍👍. Thank you so so much. I really didn't know how I was going to start moving past the Arduino uno. Thanks again 🙏🙏

  • @user-jq7tc7qi5z
    @user-jq7tc7qi5z ปีที่แล้ว

    6:43 marked crystal is not for Atmega328P-PU but for Atmega16U2(USB converter). Oscyllator for clocking Atmega328P is small and is to right from chip( exact middle of the dev board )

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

    Thanks for sharing your knowledge! got much clarity in concepts that i was lagging...
    This series is much enough to understand and get enough knowledge on any kind of MCU's......
    ❤from india!!!

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

    thanks mitch for this great video

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

    Thank you for the video

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

    You might want to mention that it is a good practice to ground yourself before handling any electronics especially the chip pins. In dry climate areas like the western provinces and states, static is 1000x what it is in humid states.

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

    This video is amazing. Thank you. Can similar thing be done for other micro controllers like STM, SAM or PIC? Video on those will be great as well.

  • @_methm_
    @_methm_ 3 ปีที่แล้ว +1

    Love This video!

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

    Great video

  • @Autotrope
    @Autotrope 3 ปีที่แล้ว +3

    Soldering the smd component to the top of that pin header was brilliant and seems so obvious a hack that I'm wondering why people bother with those dinky breakout boards just for one component

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

      exactly what I was thinking about while seeing it ;-)

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

    Sir this video was very helpful

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

    Thanks, well explained!

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

    excellent man!!

  • @g.torriani-jones5069
    @g.torriani-jones5069 3 ปีที่แล้ว

    Great video! I'm assuming that the crystal you used didn't already have the necessary capacitors within? I've seen a lot of crystals/resonators that already have it within the assembly is why I ask.

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

    zero dislike . becose you are doing good job. thank you

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

    Please make more videos on embedded systems!

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

    If you fuse the 328p to use the internal clock, you can do away with the xtal + loading caps. So barebones for THIS example: sure, but in general, no you can go down 3 more components.
    Lol btw .. what's the stray capacitance on those extra headers vs. the 22pf SMD loading caps?

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

    Legend

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

    awesome, thank you :D

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

    Hello, Mitch I'm just starting coding with Arduino UNO, but I like the way to do with bare metal coding, any suggestions on what king of books I can purchase to replace the input,read, bit from any port. I did search on the on the net but it's limited to the video you did on the registers. Thank's again keep the good work.

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

    i love you, just a little bit.

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

    Can you please explain what is system clock?

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

    Does he not have ads in this videos?

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

    How to do you find that pin PB5 To connect an led , Does LED BUILTIN means PB5

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

      @@MitchDavis2 Thank you 👍

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

    I feel like I'm watching an Arch Linux tutorial. "Let's debloat this Arduino!"

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

      Next time, we’ll code directly in hex so we don’t even have to compile!

  • @iiigooo
    @iiigooo 3 ปีที่แล้ว +1

    7:07 where is the video without 16Mhz crystal?

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

      Video #5. To use it without a crystal, you need to flash the configuration bits to tell it to use the internal oscillator. So you’ll need to watch #4 and #5 to learn that

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

      If you buy an atmega328p on its own I think it defaults to the internal oscillator. But yeah you do still need to know how to program it and what fuses are anyway. #4 and #5 are good videos

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

    Thanks for the video but I feel the title is misleading.
    To me bare metal is about the programming. Not taking a chip programmed via Arduino and removing it from the board.