Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Zephyr OS from Ground Up™
Introduction
Welcome(Same as Promo) (1:51)
Course Requirement
Introduction to Zephyr OS and the Enterprise Embedded Landscape
Introduction to Zephyr OS (1:43)
Why Zephyr for Top Companies (1:05)
The Zephyr Ecosystem and Core Concepts (2:47)
Walkthrough of a Full Zephyr Setup on Windows
Introduction to West and the Manifest (3:58)
Overview of the Zephyr Folder (3:20)
Overview of the Modules Folder (0:39)
Overview of the SDK Folder (2:03)
Programming: Exploring the Zephyr SDK Folder (1:36)
The Build System, Configuration, and Device Tree
Overview of the Zephyr Build System (1:34)
Overview of Kconfig (1:29)
Overview of the Device Tree and Overlay File (3:14)
The Zephyr Device Tree
Understanding Why the Device Tree Exists (3:29)
What is a Node? (2:54)
Undstanding the Property Types (1:59)
Undstanding Labels and pHandles (2:42)
Overview the .dts and Overlay Files (8:40)
Key Macros for Interacting with the Device Tree (3:59)
Summary and Key Takeaways (5:43)
Programming: Exploring the Subfolders in the Zephyr Workspace (3:00)
Programming: Exploring the Zephyr Folder in the Workspace (6:01)
The Pin Control Subsystem
Overview of the Zephyr Pin Control Subsytem (5:11)
Linking Peripherals to 'pinctrl' States (2:40)
The Automation at Boot Time (2:57)
Getting Familiar with Core Zephyr Files in the Workspace
Programming: Getting the Required Documentation for Zephyr and STM32 Development (5:15)
Programming: Analyzing the Device Tree Files Provided by Zephyr (20:32)
Programming: Analyzing the Zephyr Binding Files (3:35)
Programming: Finding the Avaliable Device Tree Macros (2:38)
Programming: Analyzing the Pin Control Node in .dtsi Files (5:13)
Programming: Analyzing Kconfig Files (3:11)
Developing the GPIO Output Driver in Zephyr
Programming: Analyzing the Zephyr Docs (9:31)
Programming: Understanding the File Types Required in a Zephyr Project (4:40)
Programming: The CMakeLists File: Listing Out the Steps (2:41)
Programming: Implementing the Code for the CMakeList File(Pt.1) (7:25)
Programming: Implementing the Code for the CMakeList File(Pt.2) (3:21)
Programming: The 'main.c' Source File: Including the Required Modules (6:17)
Programming: Listing out the Steps for Implementing the Driver (4:47)
Programming: Checking for Alias and Building a Typed Description (9:59)
Programming: Checking if the Device is Ready and Configuring the Pin (8:26)
Programming: Toggling the Pin State and Delaying (8:02)
Programming: Building and Flashing the Project (13:31)
Programming: Finding the Supported Boards (1:55)
Developing a GPIO Input Driver in Zephyr
Programming: Building and Testing the GPIO Input Project (7:13)
Programming: Developing the GPIO Input Driver (8:32)
Programming: Understanding How the Aliases are Connected to the Actual Pins (5:42)
Developing the UART TX Driver in Zephyr
Programming: Using the Board's Chosen UART Console (6:02)
Programming: The UART TX Poll Project Config File (2:33)
Programming: Getting a Device Reference from the Device Tree Node Identifier (4:01)
Programming: Implementing the UART TX Driver Code (10:55)
Programming: Building and Testing the UART TX Project (8:03)
Programming: Working with the Kernel Print Function (10:37)
Developing the UART RX Driver in Zephyr
Programming: Developing the UART RX Driver (11:38)
Programming: Testing the UART RX Driver (6:09)
Developing the ADC Driver in Zephyr
Programming: Locating the ADC Channel Pins (4:43)
Programming: Writing the Overlay File for the ADC Driver (14:58)
Programming: Finding the 'adc1' Node in the SoC dts Files (9:15)
Programming: Configuring the ADC Parameters (10:38)
Programming: Configuring the ADC Sequence (8:03)
Programming: Reading the Sensor Value (8:12)
Programming: Building and Testing the ADC Driver (12:26)
Developing the ADC Multichannel Driver in Zephyr
Programming: Configuring the ADC Channels (4:44)
Programming: Implementing the Overlay File (9:00)
Programming: Implementing the Function for Reading Multiple Channels (4:20)
Programming: Implementing the 'main' Function (7:28)
Programming: Building and Testing the Multichannel ADC Driver (6:04)
Developing the External Interrupt(EXTI) Driver in Zephyr
Programming: Locating the GPIO Interrupt Functions Data Fields in the Docs (6:24)
Programming: Configring the Project (3:12)
Programming: Understanding the Role of the GPIO Callback Struct (6:51)
Programming: Implementing the Callback Handler (8:04)
Programming: Setting Up the Callback Function and Registering It (9:57)
Programming: Building and Testing the EXTI IRQ Driver (5:26)
Developing the ADC Interrupt Driver in Zephyr
Programming: Configuring the Project (1:58)
Programming: Understanding the ADC Seqeunce Options (6:24)
Programming: Implementing the ADC Sequence Callback (6:06)
Programming: Defining a Kernel Work Item to Submit from ISR (11:51)
Programming: Implementing the ADC Work Handler (3:41)
Programming: Implementing the ADC Seqeunce Options (6:50)
Programming: Building and Testing the ADC Interrupt Driver (4:08)
Developing Multithreaded Applications with Zephyr
Programming: Defining the Arguments for the Thread (7:19)
Programming: Understanding K_THREAD_DEFINE (5:40)
Programming: Defining and Initializing the Thread (4:32)
Programming: Building and Testing the RTOS Thread Project (3:33)
Programming: Running Multiple Threads in Round Robin (5:15)
Programming: Defining and Initializing the Second Thread (2:51)
Programming: Building and Testing the Multithreaded Round Robin Project (1:52)
Overview of the Zephyr Pin Control Subsytem
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock