Learn STM32 Microcontroller Programming - Full Course for EE/CS Students and Beginners Version 3

BuildYourCNC Guide 4 months ago

Description

Get the kits to complete these projects here: https://buildyourcnc.com/collections/arm-stm32-microcontroller-kits
If you wish to support me and the efforts in making more content: https://buymeacoffee.com/patrickhooddaniel
Get the companion book here: https://amzn.to/49Bv8QX

Join this channel to get access to perks:
https://www.youtube.com/channel/UCC7ifdmN7ebFo-eXBUZkeiw/join

00:00:00 Introduction
00:04:36 Introduction to Bare Chip Microcontroller Development
00:07:40 The Prototyping Setup
00:11:23 Installing the new 2.0.0 STM32CubeIDE and supporting software (CubeMX and Cubemonitor)
00:22:43 IDE and Monitoring Software Setup (Legacy)
00:28:24 Getting Familiar with the STM32CubeIDE
00:31:12 Creating a Project in the IDE
00:34:47 Transferring the program to the microcontroller
00:37:40 Monitoring Runtime Data using STMStudio or STMCubeMonitor
00:42:34 Troubleshooting 1: Chip erase using the boot pin
00:44:06 Troublechooting 2: Chip erase using the reset pic
00:45:23 Troubleshooting 3: Power on AVCC not present
00:49:34 4 Most Important Code Instructions - Changing and testing bits
00:55:35 Project 1: Turning on an LED The "Hello World" of MCU Projects
01:14:38 Project 2: Receiving Input from a Button
01:30:31 Project 3: Latching an Input
01:44:30 Project 4: Interfacing an LCD Display
03:02:54 Using pointers to construct a string of characters
03:08:12 Project 5: Sending integers to the LCD
03:14:56 Project 6: Send floating point numbers to the LCD
03:20:09 Project 7: Set the location on the LCD
03:30:00 ADC (analog to digital conversion) introduction
03:40:09 Project 8: ADC Conversion (internal temperature sensor)
04:03:59 Project 9: Converting the ADC value to a meaningful number - Temperature -
04:12:28 Project 10: Potentiometer as the ADC input
04:19:48 Project 11: Timers and Counters Prescaler (Skip Oscillations)
04:29:54 Project 12: Timers and Counters: ARR (Auto reload register) Top Count Limit - Count Direction - Center Aligned Mode (Zig Zag Counting)
04:35:06 Introduction to PWM (Pulse width modulation)
04:42:43 Project 13: PWM (Pulse width modulation)
04:57:12 Project 14: Creating an ADC Header File
05:06:27 Project 15: Control PWM Output with the ADC
05:12:35 Project 16: Control the Dimming of an LED using PWM
05:14:09 Project 17: Control a Hobby Servo with the PWM Output
05:32:04 Project 18: Control a Hobby Servo with a potentiometer connected to the ADC
05:38:20 Introduction to Interrupts
05:44:50 Project 19: Using interrupts for ADC Conversion
05:58:43 Project 20: Using interrupts for ADC Conversion 2 Channels
06:08:45 Project 21: Fixing an Artifact on the LCD
06:14:03 Project 22: Push Button Interrupt
06:26:29 Project 23: External Interrupts on two pins
06:31:02 Project 24: Switch output to the STMStudio rather than the LCD
06:38:25 Introduction to the I2C or IIC communication protocol
06:50:33 Project 25: Communicating with the ADXL 345 Accelerometer via I2C - Writing
07:16:39 Project 26: Communicating with the ADXL 345 Accelerometer via I2C - Reading
07:25:58 Introduction to USART and other communication protocols
07:36:01 Project 27: Change the close speed to 48mhz
08:13:22 Project 28: Initialize the USART
08:57:32 Project 29: USART Receiving a Character
09:06:50 Project 30: USART Transmit to the Computer using CubeMX and HAL
09:22:45 Project 31: USART Receive and Transmit using Interrupts
09:38:34 Project 32: KiCAD Tutorial - Using the FTDI Application diagram to create a PCB
10:32:18 Project 33: Using ChatGPT to provide code to blink an LED
10:36:17 Project 34: Comparing two LLMs to write code for a simple I/O application

Get our Merch to support the channel: https://www.etsy.com/shop/BuildYourCNC