Lesson 2. MCU Architecture Overview

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

КОМЕНТАРІ • 46

  • @GankablePlayer
    @GankablePlayer 2 роки тому +17

    This has got to be one of the most valuable embedded tutorial series on the internet. I can't thank you enough for doing these.

    • @geneschroedertech7501
      @geneschroedertech7501  2 роки тому +5

      Thanks for your kind words. Comments like this give me motivation to do more courses. I am currently working on my 6th one.

    • @GankablePlayer
      @GankablePlayer 2 роки тому +1

      @@geneschroedertech7501doing embedded currently for work. So a foundational understanding is a must. I don't have much background in electronics and these systems have so many confusing configurations along with tons of acronyms. I've been watching a lot of Ben eaters electronic component videos which also help to understand some of the configuration for the different peripherals. It's a lot to take in for sure.

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

      There is a lot to learn, but I found the more you do, the more the pieces fit together, and it makes sense. Best wishes for success in your career.

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

      @@geneschroedertech7501 btw, I forgot to mention I plan to watch all of your other videos too. Very interested in what else I can learn! And tyvm!

  • @radman999
    @radman999 Рік тому +6

    Best STM32 course available. Wish I had found it sooner. Thank you so much.

    • @geneschroedertech7501
      @geneschroedertech7501  Рік тому +1

      Thank you for your kind words. I hope it helps you in your career or hobby.

  • @VU3FKA
    @VU3FKA Рік тому +1

    Such a wonderful explanation about microcontroller. This is making to watch the entire course.

    • @geneschroedertech7501
      @geneschroedertech7501  Рік тому +1

      Thank you! I find that being able to picture what is inside the MCU helps to reduce mystery and makes it easier to learn about.

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

    Brilliant video. Crisp,to the point and very informative

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

      Glad you liked it. I think having a picture in your mind of how an MCU is organized is very important.

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

      @@geneschroedertech7501 absolutely

  • @KipForce
    @KipForce 9 місяців тому

    Thank you Gene! Loved hearing about your work with early processors like the 6502 in the last video. As a sophomore CS student this stuff is really helpful and interesting.

    • @geneschroedertech7501
      @geneschroedertech7501  9 місяців тому

      Thanks. Looking back, some things have changed a lot, and other things haven't changed at all. If you are interested in embedded, I suggest you take a class in operating systems. Good luck in your education and career.

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

    Awesome course! Thank you Gene!
    👍

  • @rftech1608
    @rftech1608 2 роки тому +1

    Very good job explaining the architecture of the STM32 or most MCUs

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

      Thanks, I think understanding architecture can really help you as a developer.

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

    Lovely explanation and great overview. Looking forward to watching the rest of the series

  • @JayDee-b5u
    @JayDee-b5u 3 місяці тому

    The Microcontroller System on a Chip diagram is excellent.

  • @วิทรูเตชกุลพงศ์กร

    I am trying to get into embedded firmware job this will come in handy for sure thank you.

  • @erdemcalis8521
    @erdemcalis8521 Рік тому +1

    Thank you for this course!

  • @skmplanet9591
    @skmplanet9591 Рік тому +1

    Very clear explanation.

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

      Glad you liked it - I think understanding architecture helps make many things more clear.

  • @allen-sun
    @allen-sun 8 місяців тому +1

    I have a question about 12:04 - here, you bring up the system timer, which for our MCU you mention is a 1 ms tick. I'm wondering what this is used for? From the Clock Configuration tab in STM32CubeIDE, I'm not seeing any output clock frequencies on the order of 1 kHz. In one of my university classes, the word "tick" was used in the context of an RTOS kernel timer - does this perhaps have anything to do with it?
    Edit: Generating delays also comes to mind.

    • @geneschroedertech7501
      @geneschroedertech7501  7 місяців тому +1

      The system timer is a special timer defined by ARM as a "core" component. Thus, it is different from the general purpose timer peripherals. It is described in "ARM®v7-M Architecture Reference Manual" section B3.3.
      Normally, the system timer is used for the operating system "tick", for time-based operations, but it is really up to the software. In my software, which has no operating system, I use the system timer to drive the tmr (timer) module.
      In STM32CubeIDE, I would expect there is a way to set the system timer tick duration. However, it seems like it is hardcoded to be 1 ms. I think in startup code, you could change the duration to some other value, but this would take some investigation.
      The clock configuration is lower level configuration, but there is a connection to the system timer. Specifically, you can control the clock frequency that is the INPUT to the system timer hardware. The system timer hardware divides this frequency by a constant value (set in system startup code) in order to obtain the 1 kHz system timer rate.

    • @allen-sun
      @allen-sun 7 місяців тому +1

      ​@@geneschroedertech7501 This helped clear it up, thanks Gene!

    • @allen-sun
      @allen-sun 7 місяців тому

      ​@@geneschroedertech7501 Thought I replied, seems it's not showing up. Thanks so much Gene, this really helps!

  • @electromind4183
    @electromind4183 2 роки тому +1

    Sir it's the best lesson I've ever heard. Sir i have one doute that you said that when an interrupt is triggered, the CPU shall stop what it doing and run the interrupt program, let us consider a drone have a stm32 microcontroller in its flight controller unit and the drone flying at some altitude so its measuring the altitude refrance and roll and pitch inputs by that time I've increase the throttle a bit so by that an interrupt is triggered if it stops measuring the roll and pitch and just run the interrupt program how can a drone maintain its stability is there any chance that cpu can do two jobs at a time ?

    • @geneschroedertech7501
      @geneschroedertech7501  2 роки тому +1

      Often the interrupt handler code will be very quick. For example, there might be an interrupt when an A-to-D conversion is complete. In the interrupt handler code the MCU might read the A-to-D value and store it in a variable, and then immediately return. Then the MCU will resume what it was doing. The interrupt might only take a few microseconds and will not cause much delay.
      For a real-time system like a drone, an important part of the software design is to make sure you have enough time to read the sensors and perform the control loop calculations to determine motor outputs. There might be interrupts as well so this interrupt handling time must be accounted for.
      A more advanced design might be able to use a DMA controller instead of using interrupts, but this depends on many details.

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

      @@geneschroedertech7501 thanks very much sir i understand so interrupt handler will depend on refresh rate of the control loop.

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

    Many thanks.

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

    free college right here

  • @dytwtilak4607
    @dytwtilak4607 2 роки тому +1

    I am a beginner in embedded systems I hope I will be able to crack embedded software systems.

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

      As a beginner try to take it slowly and try to understand the material the best you can. Feel free to ask questions in the comment section. Others might have the same questions as you.

  • @SphereofTime
    @SphereofTime 10 місяців тому

    15:05

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

    Super and nice course, slowly speaking for not english-native-mans, and carefull explanation :)

    • @geneschroedertech7501
      @geneschroedertech7501  5 місяців тому +1

      Thank you! I do try to pace myself when speaking to allow people to think about the material.

  • @SphereofTime
    @SphereofTime 10 місяців тому

    15:49