STM32 Programming Tutorial for Custom Hardware | SWD, PWM, USB, SPI - Phil's Lab #13

Поделиться
HTML-код
  • Опубликовано: 2 янв 2025

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

  • @PhilsLab
    @PhilsLab  4 года назад +66

    New hardware and PCB design course on mixed-signal embedded systems just released!
    ⏵Course content: www.phils-lab.net/courses
    ⏵Course sign-up: phils-lab-shop.fedevel.education

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

      Thank you very much for you videos! Helps me a lot!

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

      Definatelly would really like to see some of the more fancy stuff. Thanks for the videos!!

    • @bahtiyar.bayram
      @bahtiyar.bayram 4 года назад

      Can you write firmware without hal library?

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

      What would i need if i wanted to program a chip itself ,with no board?

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

      Rtos would be awesome! Also check out micro-ROS.

  • @RohitSardessai
    @RohitSardessai 4 года назад +57

    This channel is just fantastic. I've always wanted to learn this stuff and this is one of the finest resources I've stumbled upon. It's easy to find beginner tutorials like Arduino programming but when you get beyond that it becomes harder and harder to find good content and resources.

    • @PhilsLab
      @PhilsLab  4 года назад +14

      Thank you so much, Rohit! Yeah, it's hard to find resources that cover 'the middle ground' for STM32s, so I hope I can make some more videos on that.

  • @suvapillay9358
    @suvapillay9358 4 года назад +4

    Mate, you're gonna groom alot of engineers with all this content. Essentially, helping people earn their way in the world. God bless you. Take care, and Thank you.

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

      Thank you, Suva!

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

    your stm32 videos are hands down the best on RUclips keep up the great work sir

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

      Agreed! On a scale of 1 - 10, Phil takes his tutorials to an 11! (Spinal Tap Reference).

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

    Phil, you have excellent presentation ability on topics that are on a different level and it is rare to see such a thing. The video is excellent and professional and shows all the basic steps to get started. I'm sure everyone will also be happy to see how DMA is enabled and how RTOS is used. Your contribution to amateurs, students and beginning engineers around the globe is unquestionable.

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

      Hi David, Thank you so much for your very kind words. I'm glad to hear that this video has been helpful - thanks again!

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

    Keep up the good work. The best detailed tutorials ever. Never get bored I can watch your videos for hours 😍

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

      Awesome, thank you very much Chiheb!

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

    The best stm32 tutorial on RUclips! Hands down!!

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

    I completely love your videos. Please continue these STM32 videos!

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

      Thank you very much! More STM32 videos to come :)

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

      @@PhilsLab Actually working on my first STM board, it's very complex with lots of functions. Using a STM32F7 driven by a LiPo with a high end display. Goal is smooth UI and handheld. I have never used STM32 stuff before so I'm new to the Cude software and your videos are really helping allot!

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

    As someone getting into this your videos have been one of my greatest resources, thank you so much for creating this awesome content!

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

      My pleasure, thank you very much for watching! Really glad to hear that. Let me know if there's anything in particular you'd like to see in future videos :)

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

    Its here and at Ben Eater's channel that I get content that very few give/or dish out properly, great staff!

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

      Thank you very much!

  • @BM-jy6cb
    @BM-jy6cb 4 года назад +1

    Another top video -thanks for posting. Having recently decided to get back into microcontrollers (I'm 8051/8bit PIC vintage!) I'm a bit overawed with how far things have come. It's more akin to programming a full blown computer but with access to the peripherals than a "traditional" microcontroller. Now I'm feeling very old!

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

      Thank you very much! Indeed, it's crazy how much you can get for so little money these days. ST has now even introduced the STM32MP1, which combines a MPU running embedded Linux with an MCU in one package for under 10 EUR for the cheapest one. Pretty crazy!

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

    Amazing tutorial Phil! No wasted time, just clear and complete explanations. On the downside, now engineering managers are going to expect that we can crank out a complete project in 38 minuets.

  • @saemipp
    @saemipp 3 года назад +5

    Hello Phil
    I usually never write comments on RUclips videos, but I just really wanted to let you know that I really enjoyed this one. I've never even touched an STM32 (i know my way around C but thats it) and I've sat here for the entire time just being amazed of how well you explained everything, even though it looks quite complicated. This video motivated me to now order such a board and maybe play around with it a little. So thank you for that!!

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

      Thank you very much, Samuel! Very glad to hear that these videos have been helpful. Hope all goes well with your new board :)

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

    Absolutely an amazing video! This really gives a boost in the right direction when you want to know more about designing a standalone sensor or control unit. I really hope you also want to make a video about how to deal with ADC and write the data to the flash memory. Again really helpful Phil!!

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

      Thank you, Pjotr! Yes, I'll be making quite a number of videos relating to the firmware of this board. Next one is on DMA and FreeRTOS! :)

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

      @@PhilsLab awesome!!!

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

    This is some really high quality content/tutorial!

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

      Thank you very much, Vinam!

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

    Started playing around with stm32f3discovery with rust, I am really into embedded right now and this is quality content

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

      Awesome, thank you!

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

    This is awesome, especially with the long tutorial on making a PCB. I struggled so much trying to figure out how to program and debug a cheap blue pill board. I couldn't find a straightforward tutorial on getting started. I spent countless hours trying to figure out what I needed to program and debug with stlink. Thanks again.

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

      Thank you, glad it helped out! Yeah, it takes a while to figure this stuff out - but definitely worth it in the end.

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

    Please keep this videos coming. I'm learning such great things, that I couldn't find online before you! It's really rare to find someone who explains everything slowly, bit by bit(pun intended😅). Thank you!

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

      Thank you! Very glad to hear that. Will definitely be keeping the videos coming! :)

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

    Great video... I would really like to see the entire board populated and in full functionality. Hope to see that soon. Keep up this awesome work..

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

      Thank you! Yes, I'm planning on using this board for the next few videos with the functions combined.

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

    You can force USB to re-enumerate by pulling the USB data lines low for 100ns. You will have to reconfigure the gpio pins of course which is a bit annoying but it's easier than fiddling with cables. I believe it's called a "Single ended zero" in the USB literature.

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

    Another great video! Thanks a lot! Inspired by your STRF video, I recently designed a really tiny board with the STM32L0 and the NRF24. I'm really amazed by the quality JLCPCB delivers for only a few bucks. Also debugging the STM32 appears to be much faster than the PIC microcontrollers I used in the past.

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

      Thank you very much! That's awesome, did you get the boards already? Yeah, it's amazing how inexpensive assembled PCBs are with them - I just wish that they'd start offering assembly for 6-layer PCBs soon..

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

      @@PhilsLab Yes, got the boards last week. They look great, but only had time to roughly test the SPI communication and turn on the transmitter in CW test mode. Unfortunately, I have to prioritize paid projects :-) Assembled 6-layer PCB would allow for some very interesting designs!

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

      @@PhilsLab what kind of great projects do you have in mind, involving 6-layer PCBs? 👀

  • @kulaniscap
    @kulaniscap 5 месяцев назад +1

    Can't recall when my eyes have been so glued to my screen. Awesome Channel, awesome video.

  • @10e999
    @10e999 4 года назад

    While more advance subject is more my cup of tea, I really appreciate what your doing.
    This would have help me a lot when I was beginning.

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

      Thank you! Yeah, just trying to cover the basics before moving on to actually implementing something useful (and more advanced) :)

    • @10e999
      @10e999 4 года назад

      @@PhilsLab Yes. I saw your last video using FreeRTOS and DMA. Those are definitely more advance ^^
      Looking forward seeing more RTOS-driven software design.

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

    Great video. Very few people go this way to explain things in a simple and detailed way. Expect more content from you!

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

      Thank you, Rikil! More content to come very soon :)

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

    This is the most clear and simple explanation on stm32 MCU!
    Waiting for quaternion math on IMU calculation routine.
    Thanks!

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

      Thank you! Sensor fusion video coming soon! :)

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

    This is gold!! What are the next steps? Which topics you wanna cover?

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

      Thank you very much! I'd like to make a video on RTOS + DMA and then a couple videos on things such as real-time FIR/IIR filter implementation, extended Kalman filtering, etc.

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

      @@PhilsLab That would be SWEET!

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

      @@PhilsLab Hey Phil Thank youuuuuuuu for your great video again that so exciting to hear you will make some videos about RTOS, could you also cover some video about CMSIS FreeRTOS?

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

      @@PhilsLab I am very excited for this! Since I study electronic engineering, it's very difficult obtaining such high quality YT resources as yours on slightly more advanced topics.

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

      @@PhilsLab woow. Looking forward to seing those vidéos

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

    Awesome video! I hope this will be a whole video series. The topic is not covered well on the internet yet, so I think the community welcomes it nicely!

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

      Thank you very much! Yeah, hoping to show the basics of writing firmware and then to build up to actually implement something 'useful'!

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

    A really nice overview! I'm going to go back and watch your earlier videos.

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

      Thank you, Mark!

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

    Yes please, more STM32CubeIDE C-programming tutorials !

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

      More to come! :)

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

    I really want to get into the electronics and this software design. This is such a good video and so well explained. But hell i am confused, lost and amazed all at the same time lol

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

    Great tutorial. It was tutorials just like this that helped get me into electronics a few years back.

  • @koro-koro4977
    @koro-koro4977 4 года назад +3

    Salute for your work and dedication. Thank you so much Phil's Lab..

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

    Excellent video. I wish there could be a long tutorial series for using STM32Cube software with a more complete set of peripherals.

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

      Thank you, Sumit. More videos on programming STM32 MCUs to come this month! :)

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

    Hey Phill. Great video. I am learning a lot. Please make a video on USB bootloader and firmware upgrading through USB if you get time.

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

    Phil, your videos are absolutely amazing and very educational.
    I'm looking to exclusively use the STM32 for my client's projects because of the low cost, high performance and lots of support online. Your video show that I'd be making the right decision to use the STM32 microcontroller series with the ST-LINK/V2 programmer for in-circuit debugging, break points and single stepping through my embedded software code. Thanks for your videos and tutorials.

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

      Thank you very much! I'm very glad to hear that.
      Yeah, before settling with the STM32 line of MCUs, I had a pretty long look around for the best MCU manufacturer (in my eyes). Just the fact that things like CubeIDE, HAL, etc. exist made the choice pretty clear to me. Also, the fact that the debugger is so much cheaper than most debuggers available..
      Hope all goes well with your STM32 designs! :)

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

      @@PhilsLab If I remember they make an isolated and a non-isolated programmer. Do you have a recommendation?

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

    Hi Phil! Thank you for share with us this nice and really good presented video. I'm excited to see a RTOS running on this board. Also it would be awesome if you make a board using STM32 interfacing with a Sub-GHz transceptor and some sensors to create a generic IoT node.

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

      Thank you, Luan! RTOS + DMA should feature in the next video :) I'm afraid I'm not much of an IoT guy myself so am planning on doing a couple of other videos first - hopefully all of interest however!

  • @soufiane_krem
    @soufiane_krem 4 месяца назад

    Thank you for providing this valuable guide on STM32 programming !

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

    Great video, nice to see some one reading the data sheets this seems to be a lost art. Proper embedded firmware design being talked through. well worth the time to watch.

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

      Thank you very much! Yeah, I try to write the drivers from the firmware as opposed to just copying from another source. Not sure how other people do it though!

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

      @@PhilsLab You hear a lot of "I’ll wait until a library is available"

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

    Great project!
    One thing to do it better would be controlling light intensity in a nonlinear scale (gamma corrected). Human eye has a logarithmic response curve ~ x^1/2.2, so in range from 0 to 100 value 22 is perceived as a half.
    If power function pow(x, 2.2) (x in 0.0..1.0) is too slow you can use approximation:
    y=0.8*x^2 + 0.2*x^3 with max error < 1%
    or
    y=x^2 with max error 3.5%

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

    Very nice, deep and clear overall tutorial. Right now I am learning MC such as STM32 and this gives me goosbump to interact with boards.
    Could you please also make a series or a video regarding basic concept of Hardware Design Engineer. I am making my career in this field. When I making circuits then so much confused about the components which are connected with ICs and other components.
    Thanks and appreciated..

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

    Can you make a basic tutorial about using the IDE, and what all clock frequencies setting means, how to select proper pins, etc.

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

      Hi Priyank, I'd think there's quite a lot of information on the internet regarding that, so probably not, sorry - I'd like to cover more advanced topics in future videos.

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

    Great timing. I just recently got a few of the WEACT modules. Great video and really helped me understand CubeIDE. Thank you.

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

      Very glad to hear that, thanks for watching, Jessie!

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

    Would be great if you could also cover fancier stuff like SPI using DMA and perhaps cyclic analogue voltage sampling using DMA too

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

      Yes, definitely have plans on making a video on how to set-up DMA!

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

      @@PhilsLab that will be awesome to see! I'm trying to do gpio parallel in to circular fifo with DMA for a reverse engineering project on a broken calculator, so any DMA examples are great!

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

    Hi Phil. Great video. the 40min more productive of my weekend. thanks so much for sharing your knowledge.

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

      Awesome, thank you, Mauricio!

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

    Have been searching for content like this for a while now thank you for taking the time to provide such an amazing content .

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

      Awesome, well thank you for watching! :)

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

    have a look at LP5523 for RGB LEDs - it's a 9-channel driver, with built-in charge pump boost, so it can run up to 4.5 V on 6 of the channels, 3 channels connect to Vdd directly... has many interesting features, is very programmable for LED effects without CPU cycles, after programming and start. automatic temp compensation, channel grouping... very good to write drivers for, and you could find drivers for it on-line, as it was used in Nokia phones
    And, it's in a small package, about 2.7 x 2.7l

  • @germangomez1673
    @germangomez1673 Год назад +1

    Thanks so much for this video, one question about debug, in a minute 22:50h I can see the small interface PCB between STLink and JTAG connector, why? What function has it?

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

    I just found your videos last week! Thank you for putting them together. You're empowering us to make our own boards and program them too! Definitely not as scary as I originally thought. I'd love to seem more fancy stuff, like using DMA and an external ADC board design design. Or High Speed USB phy on an stm32f405.
    I'm working on reverse engineering some hardware and will need to make my own board to fit an existing enclosure, so your videos are perfectly timed for my needs thanks!

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

      Thank you very much for watching! Very glad that you found my channel.
      The new firmware video covers a bit of DMA stuff. Definitely would like to make a video on interfacing an STM32 via DMA with an external codec as well.

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

      @@PhilsLab i already watched it, and even followed along with a nucleo f411re board. I haven't ordered one of your f405 little brains yet. But I plan too once I save a little. I hope to finish my design for my gpio dma project first so I can order both at the same time with JLCPCB.

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

    best channel for pcb boards!

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

    Vielen Dank für diese Video. Eine sehr gut beschriebene tutorial. Thanks Phil.

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

      Danke fürs Zuschauen! :)

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

    Love the stuff you are teaching here... So glad that I discovered your channel!

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

      Thank you very much for watching, Abhishek!

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

    Fantastic video!! It was very informative.

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

      Thank you, Peter!

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

      @@PhilsLab Have you done any STM32 boards with an Ethernet interface? If so, how easy was it to get going?

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

    Nice board! Is there a reason why you don't flood top and bottom layer with ground?

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

    Super informational video, thank you very much! Excited to see what's coming in the future, cheers!

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

      Thank you very much! :)

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

    Super video! I've been so busy learning atmega328 chip so I haven't had the time look into STM yet but I really want to learn STM32 mcu's so this was perfect.

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

      Awesome, yeah I think it's well worth getting into STM32 MCUs. So many doors open (so to speak) when you make the jump!

  • @JayPatel-ce4jp
    @JayPatel-ce4jp Год назад

    If you have an STM32F3 Series Nucleo Board, you need to enable PG6 as it controls a pull-up resistor for a data + line, didn't realize until I read the documentation, all I did was toggle the pin in my setup, Also I realized that the bottom micro USB receptacle doesn't need power, I have a switchable on off set to off and the bottom USB port and it was still outputting to the virtual com port despite it being off.

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

    Hi, could you please give a more in-depth explanation of how u configured the clocks?

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

    Absolutely an amazing video! I suggest to make a tutorial for the CAN BUS interface.

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

      Thank you! Yes, CAN is definitely on my list of things to make a video on.

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

      @@PhilsLabWhat's the relative cost of your board in comparison to STM's dev boards?

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

    Thank you for sharing Phil! All your videos are pure gold IMHO 👍🏻
    Just a quick question: did you leave out the flash memory programming for a future video?

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

      Thank you very much, Bastiaan! Yes, I left out a couple of things on this board for future videos, but planning on making them soon :)

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

    As someone who started out developing in Java, seeing a C development environment in Eclipse is both strange yet pleasantly familiar.

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

    Great work!
    I'm using cubeIDE too and that's very convenient IDE to work with because the cubeMX hasbeen integrated, and can use dark mode lol
    BTW i'm waiting for section where the mcu interact with ext spi flash, it would be interesting!
    Keep it up!

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

      Awesome, thank you! Yeah, CubeIDE is just really convenient to work with.
      Thanks for the suggestion, will aim to make a video with that in it!

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

    You are VERA LEVEL BRO!
    So Awesome! A lot of love from my team!

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

      Thank you very much!

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

    Very interesting. Thank you it was very helpful and informative for me, a newbie comming from Avr 8bits.

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

      Awesome, thank you for watching!

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

    Awesome video series, this really has helped me learn kicad and the fundamentals of designing PCBs with stm32 microcontrollers. In a future video, can you go over using a USB type C connector with an stm32?

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

      Thank you, very glad to hear that! I haven't had the need for a type C connector + STM32 just yet, but maybe sometime in the future. :)

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

    Would you do a video, or have you done a video, explaining in more detail about how you test your new board for issues with voltage and current? I'm sure it's hard to condense so much into one video, I really appreciate the knowledge you share!!!

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

    Beautiful board

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

    I really enjoy watching it, thank you Phil!

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

      That's great to hear, thank you!

  • @surajnvm
    @surajnvm 2 месяца назад

    Hello sir! This is the first video which really made me understand STM32 programming and firmware creation. Even though the code syntax and language is not so comprehensible for me, as i understood learning C is going to be the first step after that do i have to learn embedded C programming? For understanding microcontrollers and different peripherals what should i do?
    Again thank you so much for the video ❤❤

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

    This is what i wanted to see !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    Great Video !!!

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

      Thank you, Marcin!

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

    Grate work ! Keep on going, your videos are helping me so much in my graduation project, Thanx for your efforts :D

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

      Awesome, thank you - very glad to hear that! :)

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

    Really Cool project, really well explained and presented as usual. Great work! :D

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

      Thank you, Rasmus :D

  • @Sorenp-n5o
    @Sorenp-n5o 4 года назад

    Hi Phil, you should implement an RTOS for applications like this, its so much fun and really ups the system as a whole.

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

      Hi Søren, More 'fancy' programming videos to come (incl. DMA, RTOS, etc.). This one was just to show how to quickly test a custom PCB.

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

    The USB part is a bit more involved than what is described here. At least in windows, you have to modify the 'usbd_cdc_if.c' file to send back the com port info windows needs. Before I did that, I was getting configuration errors on all the Terminal programs, including the one included in CubeIDE. More info at ST's tutorial here: ruclips.net/video/h9T0RTu9Muc/видео.html

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

    Your videos are great! I was looking exactly for this. Thanks

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

      Thank you very much, very glad to hear that!

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

    hi that was a interesting video i've just got into stm32 micro-controllers so this is use full info look forward to seeing more of your videos

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

      Thank you, Glynn!

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

    Hi Phil ! Great Video ! Just a question for you, is there a reason you did not use copper pour for a GGND plane on either or both sides ? I would very much like to have your opinion on that!

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

      Thank you very much! Yeah, from what I've read/heard/watched on PCB design (people like Eric Bogatin), there aren't many benefits (if any!) to pouring copper and it could possibly even create problems. Additionally, I don't like spending time filling my boards with stitching vias. Finally, I think it makes the board look cooler without the copper pours haha.

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

    Excellent video, thank you! You are insanely productive.

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

      Thank you very much!

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

    this is more complicated than i thought but it's worth learning

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

    That so cool :D I only worked with STM32 briefly, before I caught the build it all out of TTL bug lol.

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

      Thank you! Well hope this video can get you back on the 'STM32-train' :D

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

    The Impedance match choice on JLPCB is not something I have ever noticed... I've never had problems but perhaps been lucky. I tend to keep my USB traces pretty matched length wise and sitting above a ground plane. Might have to watch your earlier video. Great content here... starting with any eco system is a big step and this will really help people.

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

      Thank you for watching! Yeah, for USB FS it doesn't really matter to be honest. The signal/rise times are so slow that you can go pretty wild with routing before you get any problems.

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

    Really great content. Detailed and well explained. Thanks!

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

      Thank you very much!

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

    Thanks for your nice explanation. That actually helps me a lot! Subscribed.

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

      Awesome, thank you :)

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

    Yaay brother .Thankyou so much for the tutorial 👏👏👏❤

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

      My pleasure, thanks for watching!

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

      @@PhilsLab Eagerly waiting for more videos related to stm .Thanks for teaching .

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

    Sending data via USB VCP seems fairly easy. What I struggle with is reciving data from the PC. I need this since I want to controll the flow of my application from within a GUI on the PC side. I stumbled upon "CDC_Receive_FS". It seems to be some kind of Callback, that gets called whenever data is recevied via USB. I would like to use this in non Blocking mode, so the STM32 would do it's things until a new command is send by the user via PC. I don't have the hardware yet to test stuff (shoud arrive soon), so I'm just doing some research on the topic. It seems rather complicated. I would love a video from you about the topic!

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

    Thanks for sharing this victory walkthrough
    👍😀

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

      Haha thank you, Asger!

  • @hemanthkumar-dk6rg
    @hemanthkumar-dk6rg 2 года назад +2

    You down that program with St- link with swb Pina(clk,Dio pins) or usb.
    Is their any secondary boot loader you done . For uploading the new firmware every time that boot file also required ? Can you please explain

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

    Thank you for another great video. Do you think you could go over how you figured out how to wire up that memory? And how to interface with it?

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

      It's just an SPI memory chip, so uses simple SPI bus like anything else. Loads of libraries and arduino code examples for using them

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

    Awesome video. Great instruction and explanation. Thank you!

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

      Thank you very much, Adam!

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

    Hi Phil and thanks for the great video!
    What kind of connector are you using for SWD (min 4:17)? Is it part of JLCPCB library? If so can you share de Cxxxxx reference?

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

      Hi Miguel, Thank you!
      It's a 1.27mm pitch, 2x5, SMD vertical header. I'm not sure JLC has something like that in stock, I assembled this myself.

  • @TobisWorkshop
    @TobisWorkshop 4 года назад +4

    Great Video, can't wait for topics like DMA and RTOS! A quick question from someone who's more involved in hardware design and hasn't done a lot of firmware development, especially with 32bit MCUs. Is the generated low level code from CubeIDE or AtmelSTART (like drivers for peripherals) something that's actually used by professionals? Or are they usually written by themselves?

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

    Hi Phil! I’m finding your videos quite helpful as I learn how to program stm32. I was wondering if you could make a video showing how to control an stm32 over Ethernet using one of the stm32 versions which work on ethernet. Thank you!

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

    The timer +1 thing is so that the 0 setting is not wasted. You obviously can't divide clock by 0. Offsetting everything by one is much easier than trying to explain people that 0 is not an option.

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

    Id love to get your thoughts on setting up one of the L4 80mhz boards and also getting it to work with stm32duino for arduino:)

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

    Nice video!! Great detailed explanation! Thanks again

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

      Thank you for watching, Fernando!

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

    is it possible to get a video on using the stink-v3set. Thx

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

    That's a nice tutorial! However I would have preferred you using snprintf, since it's aimed at beginners. I don't even think I would have been more difficult to understand, since the usb transmit function also takes a buffer size

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

      Thank you, Peter! Yeah, could've used snprintf - I guess I just used the first function that came into my mind. Just wanted to quickly get something out on the USB and show the CDC_Transmit_FS() function.

  • @williammichailidis1204
    @williammichailidis1204 2 месяца назад

    Hey Phil, great videos! I was wondering where the tutorial for designing this pcd is

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

    I used to blame ST's HAL too. But I saw lately they improved it. Moreover, you can choose now to use only the low level drivers which are pretty good...

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

      Yeah, they've definitely improved over time. I do occasionally find little bugs but I'm sure over time they'll all be ironed out.

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

    Мужик, да ты просто гений.

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

      Большое спасибо, братан!

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

    Thank you so much Phil's Lab

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

      Thank you for watching, Emre :)