Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Embedded MicroPython from Ground Up™
Introduction
Getting the best out of this course
Python Essential Training
Setting Up Python (6:37)
Printing a Statement (5:41)
Working with Variables (6:41)
Working with Lists (3:37)
Experimenting with Arithmetic Operators (7:31)
Working with Conditions (7:35)
Working with Loops (14:46)
Working with Functions (5:56)
Dictionaries (8:15)
Implementing Classes (5:17)
Adding more Methods to the Class (4:45)
Understanding the Class Init Method (4:47)
Inheriting from a Class (8:02)
More on Inheritance (10:42)
Setting Up MicroPython
Getting the Required Tools (7:38)
Installling the Required Tools (9:38)
Getting Started with MicroPython
Accessing the Microcontroller using a Terminal (6:40)
Accessing the Microcontroller using rshell (4:52)
Setting an IDE for MicroPython Development (5:55)
Getting the Required Documentation for STM32 Development (4:17)
Bare-Metal Embedded MicroPython Development
Analyzing the Peripheral and Buses in the Documentation (9:24)
Constructing the Memory Address (Part I) (14:50)
Constructing the Memory Address (Part II) (14:00)
Developing the Bare-Metal Driver (7:39)
General Purpose Input/Output(GPIO)
Overview of ARM Cortex-M General Purpose Input/Output Module (7:24)
Developing the GPIO Output Driver using Direct Register Access (10:08)
Developing the GPIO Input Driver using Direct Register Access (10:46)
Exploring the MicroPython GPIO Class (Part I) (20:15)
Exploring the MicroPython GPIO Class (Part II) (2:54)
Developing the GPIO Output Driver (4:19)
Developing the GPIO Input Driver (4:41)
Source Code Download
General Purpose Timers
Understanding STM32 Timers (9:32)
Implementing Background Threads using Timers (9:20)
Generating Precise PWM Signals using Timers (8:13)
Generating Precise PWM Signals of changing Dutycycles (3:36)
Developing the Timer Output Compare Driver (12:08)
Developing the Timer Input Capture Driver (10:52)
Watchdog Timers (WDG)
Developing the Watchdog Timer Driver (24:35)
Realtime Clocks (RTC)
Developing the RealtimeClock Driver (11:32)
Analog to Digital Conversion (ADC)
Introduction to Analog to Digital Conversion (4:02)
Analyzing the ADC Documentation (8:01)
Implementing the ADC Driver using Direct Register Access (Part I) (15:03)
Implementing the ADC Driver using Direct Register Access (Part II) (7:23)
Implementing the ADC Driver using Direct Register Access (Part III) (5:06)
Developing the ADC Driver (12:01)
Developing the ADC Periodic Sampling Driver (6:07)
Reading Internal Channels : Temperature, VBAT, VREF (9:53)
Universal Asynchronous-Synchronous Receiver-Transmitter (USART)
Overview of the UART Protocol (7:43)
Developing the UART Transmit(TX) Driver (11:37)
Developing the UART Receive(RX) Driver (2:43)
External Interrupt (EXTI) Programming
Understanding Interrupts (19:44)
Developing the External Interrupt (EXTI) Driver (10:49)
Serial Peripheral Interface (SPI) Driver Development
Understanding the SPI Protocol (11:19)
Developing the SPI Driver- Analyzing the Slave Device (ADXL345) (5:31)
Implementing the SPI Read function (22:59)
Implementing the SPI Write function (5:12)
Implementing the slave intialization function (11:55)
Testing the ADXL345 SPI Driver (11:27)
Inter- Integrated Circuit (I2C) Driver Development
Understanding the I2C Protocol (9:21)
Developing the I2C Driver - Scanning the Bus for connected Slaves (7:59)
Implementing the I2C Read function (4:02)
Implementingthe I2C Write and Initialization fucntions (4:32)
Testin g the ADXL345 I2C Driver (3:07)
Power Management Drivers
Developing the Sleep Mode Driver (18:27)
Developing the Stop Mode Driver (3:37)
Developing the Standby Mode Driver (12:27)
Mixing Assembly Code with MicroPython
MicroPython Inline Assembly Basics (6:12)
Working with Branching and Looping Instructions (8:31)
Developing a GPIO Driver with Inline Assembly (8:42)
Closing
Closing Remarks
Teach online with
Developing the Bare-Metal Driver
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock