Introduction
The STM32 series chips are developed based on the Cortex-M3 core. They adopt the industry-leading Cortex-M3 core architecture, utilizing Harvard architecture and the Thumb-2 instruction set. They can achieve 32-bit performance with a 16-bit code density. Additionally, with single-cycle multiplication instructions, hardware division instructions, and a built-in fast interrupt controller, STM32 chips can run up to 35% faster than ARM7TDMI. Code size can be reduced by up to 45%. The advantages of STM32 arise from the dual high-speed peripheral bus – APB structure, where one APB can reach the CPU’s operating frequency, allowing peripherals connected to this bus to operate at higher speeds.
This course is a classic video tutorial set for STM32 microcontroller learners, targeting beginners and teaching you to learn microcontrollers from scratch, progressively combining theoretical explanations with practical experimental projects, focusing on the current most popular C programming design for STM32 microcontrollers!
The highlight of this tutorial is its systematic and detailed introduction to the basic knowledge of STM32 microcontroller applications, based on an analysis of beginners’ cognitive patterns, combined with the teaching experience of frontline teachers from key universities in China, and drawing on the writing techniques of classic foreign textbooks. This course breaks the traditional teaching model of microcontrollers, adopting a modular approach based on practical examples, integrating the theoretical knowledge required for the microcontroller, along with the “device introduction” section, peripheral circuit design explanations, and detailed programming for the software functions of each module. It cleverly combines microcontroller principles and applications, peripheral circuit design, and C programming knowledge into various module projects, broadening the application perspective of microcontrollers and enriching the knowledge required from basics to applications. This allows scholars to learn while practicing the production of each module, efficiently and systematically acquiring knowledge while improving hands-on skills.
Through multi-angle, multi-faceted example explanations, readers not only master the basic skills of microcontroller system development but also broaden their perspective on popular microcontroller applications. Therefore, this course is suitable for all STM32 microcontroller application developers, electronics enthusiasts, students in related majors at universities, and engineering technicians. It can also serve as a short-term training course, making it a classic course for microcontroller enthusiasts from beginner to advanced levels.
Course Details:
This course mainly introduces the process, methods, techniques, and design ideas of STM32 microcontroller application system development through typical examples, focusing on system design with STM32 microcontrollers, combining software and hardware, and presenting the content in an easy-to-understand manner. The course covers various technologies in microcontroller development through 30 module examples, including microcontroller interface expansion, memory expansion, input/output and display technologies, practical electronics production, sensor control technologies, electrical drive and control technologies, microcontroller communication technologies, typical devices and application technologies, peripheral circuit design, software programming, and more. This course is based on the Chuangxue STM32 development board. It includes: Introduction to STM32 microcontrollers, register settings and usage, hardware testing, principles and usage of various application module devices, peripheral circuit design, and C programming for STM32 microcontrollers.
This course is aimed at microcontroller design users in various fields, especially those who have mastered the theoretical aspects of microcontroller development but lack practical development experience. It is also suitable as a textbook for related majors in various universities and social training classes.
The CEPARK Chuangxue series multifunctional development learning board experiment box is designed by the Electronic Garden technical team based on years of development practice experience, combined with dozens of development boards for various MCUs such as 51, AVR, PIC, MSP430, ARM, STM32, CAN, USB, and dozens of peripheral application modules. It integrates existing functions and expands them, adopting an innovative plug-and-play structure that allows the functional baseboard and core board to be used separately or together in an open plug-and-play mode. This greatly shares basic resource function modules and general peripheral accessories, supporting various chips and enabling endless expansion.
Course Contents:
Lesson 1: Introduction to Chuangxue STM32 Development Learning Board(1). Introduction to Chuangxue STM32 Experiment Box; (2). Components of Chuangxue STM32 Development Board; (3). Chuangxue Multifunctional Baseboard; (4). STM32 Microcontroller Core Board; (5). Introduction to Development Learning Board Peripheral Accessories; (6). Programmer/Simulator.Lesson 2: How to Use Chuangxue STM32 Development Learning Board(1). Introduction to Chuangxue STM32 Experiment Box; (2). Components of Chuangxue STM32 Development Board; (3). Chuangxue Multifunctional Baseboard; (4). STM32 Microcontroller Core Board; (5). Introduction to Development Learning Board Peripheral Accessories; (6). Programmer/Simulator.Lesson 3: Hardware Testing of Chuangxue STM32 Microcontroller Development Learning Board1. Testing Instructions 2. Monochrome Flowing Light 3. Color Flowing Light 4. Bicolor Light Testing 5. 8-digit Digital Tube Testing 6. 1-digit Digital Tube Testing 7. Bicolor Dot Matrix Testing 8. LCD1602 9. LCD12864 Testing 10. OLED Testing 11. TFT Color Screen Display Testing 12. TFT Color Screen Touch Testing 13. 8 Independent Key Testing 14. 16-key Matrix Testing 15. 5-way Joystick Testing 16. DS18B20 Testing 17. 2-way DC Motor Testing 18. Stepper Motor Testing 19. 2-way Relay Testing 20. Serial Communication Testing 21. DS1302 Testing 22. Passive Buzzer Testing 23. AT24C02 Module 24. Serial to Parallel Testing 25. Parallel to Serial Module Testing 26. 3-to-8 Decoder Testing 27. 74HC573 Testing 28. Infrared Transmission and Reception Testing 29. Infrared Decoding 30. SD Card Module Testing 31. PCF8591 Module AD Testing 32. PCF8591 Module DA Testing 33. ADC Testing 34. Sensor TestingLesson 4: Introduction to STM32 Microcontroller(1). Introduction to Microcontrollers; (2). Introduction to STM32 Microcontroller; (3). STM32 Series Selection; (4). STM32 Microcontroller Minimum System; (5). STM32 Development Environment and Compilation Environment.Lesson 5: Development Environment – Installation and Use of KEIL MDK1. Installation and Use of KEIL MDK – Course Introduction 2. Introduction to KEIL MDK Environment 3. Installation of KEIL MDK Environment 4. Creating a New Project in KEIL MDK 5. Using Templates to Create Projects in KEIL MDK 6. KEIL MDK JLINK Driver Installation 7. KEIL MDK Project Settings and Compilation 8. Common Debugging Commands in KEIL MDK 9. Common Debugging Windows in KEIL MDK 10. Conclusion of KEIL MDKLesson 6: Introduction to STM32 Library(1). What are STM32 Library Functions; (2). CMSIS Standard; (3). Library Directory, File Introduction; (4). Library Usage Help.Lesson 7: Explanation of STM32 Minimum System(1). Power Circuit of Development Board; (2). STM32 Clock; (3). STM32 Reset; (4). Development Board Download Circuit.Lesson 8: Explanation of STM32 Clock System(1). STM32 High-Speed External Clock HSE; (2). STM32 High-Speed Internal Clock HSI; (3). Low-Speed External Clock LSE; (4). Low-Speed Internal Clock LSI; (5). PLL Phase-Locked Loop Frequency Output; (6). System Clock; (7). Other STM32 Clocks; (8). STM32-RCC Configuration Steps.Lesson 9: Explanation of Flowing Light(1). Introduction and Principle of LED Lights; (2). Introduction to STM32 IO Ports; (3). Flowing Light Circuit Analysis; (4). Flow Chart; (5). Project Files; (6). Code Analysis; (7). Software Simulation; (8). Hardware Simulation.Lesson 10: Explanation of 6-color and 1-bicolor LED(1). Introduction to Color LED; (2). Introduction to Bicolor LED; (3). Circuit Analysis; (4). Color Pattern Light; (5). Bicolor Light Display.Lesson 11: Explanation of 1-digit Digital Tube Module(1). Introduction to Digital Tubes; (2). Structure of 1-digit Digital Tube; (3). Hardware Circuit Explanation; (4). Digital Tube Encoding; (5). Dynamic Display of Digital Tubes.Lesson 12: Explanation of 8-digit Digital Tube Module(1). Introduction to 4-in-1 Digital Tube; (2). Principle of 4-in-1 Digital Tube; (3). Circuit Analysis; (4). Introduction to 74HC595 Chip; (5). 74HC595 Pins; (6). Working Principle of 74HC595; (7). Cascading 74HC595; (8). Encoding; (9). Displaying Data.Lesson 13: Explanation of Red and Green Bicolor Dot Matrix Display(1). Introduction to Dot Matrix Screens; (2). Introduction to 8*8 Red and Green Bicolor Dot Matrix; (3). Introduction to 74HC595 Chip; (4). Hardware Circuit Explanation; (5). Row Control Function Explanation; (6). Column Control Function Explanation; (7). Bicolor Dot Matrix – Bicolor Column Scanning.Lesson 14: Explanation of Independent Key Module(1). Introduction to Independent Keys; (2). Classification of Independent Keys; (3). Key Debouncing; (4). Experimental Design of Independent Keys; (5). Independent Key Scanning; (6). Control Digital Tube Experiment.Lesson 15: 4×4 Matrix Keyboard Module(1). Introduction to Matrix Keyboards; (2). Detection of Matrix Keyboards; (3). Jitter and Debouncing; (4). Experimental Design of Matrix Keyboards; (5). Row and Column Scanning; (6). Inversion Method 1; (7). Inversion Method 2; (8). Inversion Method 3.Lesson 16: Introduction to 5-way Joystick Key Module(1). Introduction to 5-way Joystick; (2). Experimental Design of 5-way Joystick; (3). Key Debouncing; (4). Displaying Key Values on Digital Tube.Lesson 17: Buzzer Sounding(1). Introduction to Buzzers; (2). Classification of Buzzers; (3). Control of Buzzers; (4). Instance Hardware Design and Flow Chart; (5). Creating a Project; (6). Delay Function; (7). Initializing Buzzer IO Port; (8). Main Function Design; (9). Delay Time Calculation; (10). Hardware Simulation.Lesson 18: Explanation of Relay(1). Introduction to Relays; (2). Classification of Relays; (3). Main Technical Parameters of Relays; (4). Introduction to ULN2003; (5). Experimental Design; (6). Relay Switching.Lesson 19: Explanation of Serial to Parallel(1). Shift Register; (2). Introduction to 74HC164; (3). Function Introduction of 74HC164; (4). Experimental Design; (5). Lighting LED with 74HC164.Lesson 20: Introduction to Parallel to Serial(1). Shift Register; (2). Introduction to 74HC165; (3). Function Introduction of 74HC165; (4). Experimental Design; (5). Lighting LED with 74HC165.Lesson 21: Explanation of 74HC573 Latch(1). Introduction to Latches; (2). Introduction to 74HC573; (3). Function Introduction of 74HC573; (4). Experimental Design; (5). Lighting LED with 74HC573.Lesson 22: Explanation of 3-to-8 Decoder(1). Introduction to Decoders; (2). Function Introduction of 74LS138; (3). Decoder Expansion; (4). Experimental Design; (5). Lighting LED with 74LS138.Lesson 23: Explanation of DC Motor Control(1). Introduction to DC Motors; (2). Working Principle of DC Motors; (3). Introduction to ULN2003; (4). Characteristics of DC Motors; (5). DC Motor Direction Control.Lesson 24: Explanation of Stepper Motor Control(1). Introduction to Stepper Motors; (2). Technical Parameters of Stepper Motors; (3). Reactive Stepper Motors; (4). Permanent Magnet Stepper Motors; (5). 28BYJ-48 Stepper Motors; (6). ULN2003; (7). Stepper Motor Unidirectional Uniform Speed Rotation Experiment.Lesson 25: Explanation of Interrupts(1). Overview of Interrupts; (2). STM32 Interrupt System; (3). External Interrupts/Events; (4). Instance Design; (5). Example Code Analysis.Lesson 26: Explanation of SysTick Timer Experiment(1). Introduction to SysTick Timer; (2). Introduction to SysTick Timer Registers; (3). SysTick Timer Time Calculation; (4). SysTick Initialization Configuration Method; (5). Instance Analysis; (6). Code Analysis.Lesson 27: Explanation of Timer Experiment(1). Structure of STM32 Timer; (2). Structure of General Timer; (3). Clock Source Selection for General Timer; (4). Time Base Unit; (5). Capture Channel; (6). Input Capture Related Registers; (7). Counting Mode; (8). Timer Initialization Steps; (9). Instance Analysis.Lesson 28: Explanation of PWM Wave Output(1). Introduction to PWM; (2). Working Principle of STM32 PWM; (3). PWM Working Modes; (4). PWM Configuration Method; (5). Instance Analysis; (6). Instance Code; (7). Related Content for Software Simulation.Lesson 29: Explanation of Asynchronous Serial Communication Experiment(1). Basic Knowledge of Serial Ports; (2). RS-232 Standard; (3). RS-232 Interface; (4). STM32 USART; (5). Serial Control Registers; (6). Instance Design; (7). Code Analysis.Lesson 30: Explanation of CAN Communication(1). Introduction to CAN Bus; (2). Features of CAN; (3). CAN Protocol – Frame Structure; (4). CAN Protocol – Priority; (5). CAN Protocol – Others; (6). Introduction to STM32-CAN Controller; (7). CAN Controller Send/Receive Management; (8). CAN Controller – Filter; (9). CAN Controller – Initialization; (10). Instance Analysis; (11). Code Analysis.Lesson 31: Explanation of Independent Watchdog Experiment(1). Introduction to Watchdogs; (2). Structure of STM32 Independent Watchdog; (3). How to Use Watchdogs.Lesson 32: Explanation of IIC Experiment(1). Introduction to IIC Bus; (2). Read/Write Timing; (3). Introduction to E2PROM; (4). AT24C02-I2C; (5). STM32 I2C Structure; (6). Instance AnalysisLesson 33: Explanation of LCD1602 Liquid Crystal Display(1). Introduction to LCD; (2). Introduction to LCD1602; (3). Technical Parameters of LCD1602; (4). Character Display Principle; (5). LCD1602 Controller Instructions; (6). LCD1602 Timing Control; (7). Some Notes on LCD1602; (8). LCD1602 – Character Display Program; Lesson 34: Explanation of LCD12864 Liquid Crystal Display(1). Introduction to LCD; (2). Introduction to LCD12864; (3). Explanation of Internal Registers of LCD12864; (4). Explanation of System Instructions of LCD12864; (5). Timing of LCD12864 Interface; (6). Character and Image Display Principle; (7). Some Notes on Using LCD12864; (8). How to Extract Font Patterns; (9). LCD12864 – Parallel Display ProgramLesson 35: Explanation of OLED Liquid Crystal Display(1). Introduction to OLED; (2). Applications of OLED; (3). CEPARK OLED Technical Parameters; (4). Character Display Principle; (5). OLED Display.Lesson 36: Explanation of TFT Touch Color Screen(1). Basic Knowledge of TFT Color Screen. (2). Pixels and Resolution (3). Color Depth (4). CEPARK TFT Color Screen (5). TFT Initialization Function (6). TFT Color Block Display and Text DisplayLesson 37: Explanation of DS18B20 Temperature Detection(1). Introduction to DS18B20; (2). Introduction to DS18B20 Pins; (3). Internal Structure of DS18B20; (4). Timing of DS18B20; (5). Working Principle; (6). Experimental Design; (7). Displaying DS18B20 Temperature ValuesLesson 38: Explanation of DS1302 Clock Module(1). Introduction to Real-Time Clock; (2). Introduction to DS1302 Chip; (3). DS1302 Registers; (4). Timing Control of DS1302; (5). DS1302 – OLED Display Time ProgramLesson 39: Explanation of AT24C02 Storage Module Experiment(1). Introduction to EEPROM; (2). AT24C02XX Series; (3). Introduction to AT24C02 Chip; (4). AT24C02-IIC; (5). Start and Stop Signals and Acknowledgment Signals; (6). Write Operation; (7). Read Operation; (8). Instance AnalysisLesson 40: Explanation of AD/DA Conversion(1). A/D Conversion, (2). D/A Conversion, (3). Introduction to PCF8591, (4). PCF8591 Read Operation, (5). PCF8591 Write Operation, (6). Hardware Connection, (7). Instance AnalysisLesson 41: Explanation of Infrared Reception(1). Introduction to Infrared; (2). Infrared Remote Control System; (3). Integrated Infrared Reception; (4). Infrared Transmission Protocol, Encoding; (5). Infrared Encoding and Decoding; (6). Infrared Transmission and Reception; (7). Instance AnalysisLesson 42: Explanation of SD Card Module(1). Introduction to SD Card (2). Working Principle of SD Card (3). SD Card Reset (4). Serial Port Configuration (5). SPI Configuration (6). Main Function Module of the Program.
Course Details:
This course is based on the Chuangxue STM32 microcontroller development learning experiment box, detailing the fundamental knowledge of STM32 microcontrollers and common peripheral basic modules, as well as practical development applications, combining theory with practice, and explaining development based on examples. The course videos are in HD, with a clear directory structure and detailed graphical explanations; below are some screenshots of the video pages.
Microcontroller Principle Explanation:
Peripheral Device Explanation:
Friendly Reminder:
Click the link: http://www.eeskill.com/course/id/6
Or “Read the Original Text”, log in to Chuangxue Electronics website to order online and start learning online!
To help everyone learn better, Chuangxue Electronics has specially added a WeChat public account for microcontrollers and EDA, pushing relevant knowledge daily, hoping to assist your learning!