Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Industrial Embedded Vision & Serial Link Architectures
Welcome
Introduction(Same as Promo) (1:57)
Course Requirements
Overview of the Industrial Embedded Vision Serial System
Our Goal: A Complete Remote Vision System (1:54)
Why Serial? Real-World Scenarios Where Serial is Non-Negotiable (1:28)
The System Architecture: Two Halves of a Whole
Overview of the System Architecture (2:15)
Overview of Our Development Workflow (2:18)
Setting Up
Downloading CubeIDE (2:34)
Installing CubeIDE (2:38)
Getting the required documentation
Introduction to Digital Cameras
Role of Digital Cameras in Embedded Devices (4:06)
Challenges and Consideration for Integrating Digital Cameras (2:21)
Fundamentals of Imaging
Light and Electromagnetic Radaiation (2:40)
Imaging Formation and Resolution (2:09)
Contrast and Dynamic Range (2:36)
Basics of Imaging (3:41)
Key Components of Digital Cameras (2:02)
The Charge-Coupled Device(CCD) Sensor (2:06)
How the Charge-Coupled Device(CCD) Works (1:39)
The Complementary Metal-Oxide-Semiconductor (CMOS) Sensor (2:28)
The Lens and Image Processor (1:27)
The Camera Interface (3:20)
The Digital Camera Interface(DCMI)
Overview of the Digital Camera Interface(DCMI) Peripheral (1:40)
Functional Overview of the DCMI (4:29)
Function Overview Of The DCMI (4:29)
Summary of How the DCMI Works (1:10)
Data Register with 8-bit and 10-Bit Data Width (5:06)
Data Register with 12-bit and 14-Bit Data Width (3:14)
How Hardware Synchronization Works (3:39)
The DCMI Snapshot Mode and Continuous Grab Mode (3:12)
The DCMI Data Format and Storage (2:57)
The DCMI Crop and Image Resize Feature (2:08)
The DCMI Interrupts and Behavior in Power Modes (1:08)
Configuring the Vision Project
Programming: Getting the Right Package for the MCU (6:27)
Programming: Creating the Base Project (5:43)
Programming: Properly Naming the Multicore Project (4:15)
Programming: Adding the Required Files (8:13)
Programming: Integrating the Required Files into the Project (3:18)
Programming: Including the Paths of the Required Files to the Project (7:59)
The Vision Project Architecture
The System Hardware Architecture (3:01)
Understanding the Software Layers (2:22)
Programming: Configuring the System Clock (8:08)
Programming: Configuring the MPU Region 0 (8:46)
Programming: Configuring the MPU Region 1 (6:27)
Understanding the SDRAM MPU Configuration Attributes (2:51)
Programming: Calling the MPU Config. and Clock Config. in the Main Function (2:12)
ModuleSummary- The Vision Project Architecture (0:53)
The Command Channel - Protocol Design & Implementation
The Problem: A Raw Stream of Bytes is Meaningless (1:45)
The Solution: A Packet-Based Protocol (3:04)
Programming: Integrating the JPEG Utilities Module (3:45)
Programming: Updating the Include Paths in the Project Properties (3:08)
Diagramming the Complete System Stack (20:23)
Programming: Analyzing the BSP Camera Module (7:19)
The Vision Protocol Module
Programming: Creating the Files for the Vision Protocol Module (2:18)
Programming: Declaring the Protocol Frame Parameters (7:53)
Programming: Defining the Commands Exchanged between the Host and Device (3:22)
Programming: Defining the Protocol Packet and Parser States (3:45)
Programming: Defining the Vision Protocol Struct Type (3:02)
Programming: Defining the Publicj Functions Exposed by the Vision Protocol Module (9:47)
Programming: Updating a CRC16-CCITT Value with one Byte Input (9:01)
Programming: Calculating a CRC16-CCITT over a Byte Array (2:59)
Programming: Developing the Incremental Parser State Machine (17:02)
Programming: Building the Transmit Frmae in Wire Format (6:39)
Programming: Implementing the Little-endian Conversion Helper Functions (3:37)
The Vision Transport Module
Programming: Creating the Files for the Vision Transport Module (4:07)
Programming: Defining the Vision Transport Statistics Structure (4:52)
Programming: Defining the Public Functions Exposed by the Vision Transport Module (5:18)
Programming: Defining the Static Varaibles used by the Vision Transport Module (2:41)
Programming: Implementing the Vision Transport Initialize Function (5:32)
Programming: Implementing the Push and Push Functions for the Ring Buffer (2:38)
Programming: Polling the RX Buffer and Emitting any Completed Packets (5:59)
Programming: Encoding and Transmitting One Protocol Packet (3:04)
Programming: Implementing the GetStatistics Function and UART Callbacks (3:09)
The Vision Capture Module
Programming: Defining the Public ENUM for Capture-Pipeline Outcomes (6:47)
Programming: Defining the Public Functions Exposed by the Vision Capture Module (3:36)
Programming: Defining the System Constants and Parameters in main.h File (3:40)
Programming: Defining all Global Variables Required by the Vision Capture Module (5:16)
Programming: Implementing the Cache Maintenance Helper Functions(Pt.1) (4:15)
Programming: Implementing the Cache Maintenance Helper Functions(Pt.2) (2:02)
Programming: Polling the RX Buffer and Emitting any Completed Packets
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock