Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development
Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development Table of Contents

Chapter 1: Design of the Minimum System for STM32 Embedded Microcontroller

1.1 Overview of STM32 Microcontroller

1.1.1 Introduction to STM32 Microcontroller Products

1.1.2 Analysis of STM32 System Performance

1.1.3 Naming Rules of STM32 Microcontroller

1.1.4 Internal Resources of STM32 Microcontroller

1.1.5 Selection of STM32 Microcontroller

1.2 System Architecture of STM32F1 Series Products and Internal Architecture of STM32F103ZET6

1.2.1 System Architecture of STM32F1 Series Products

1.2.2 Internal Architecture of STM32F103ZET6

1.3 Memory Mapping of STM32F103ZET6

1.3.1 Address Range of Built-in Peripherals of STM32F103ZET6

1.3.2 Embedded SRAM

1.3.3 Embedded Flash

1.4 Clock Structure of STM32F103ZET6

1.5 Pins of STM32F103VET6

1.6 Minimum System Design of STM32F103VET6

Chapter 2: Human-Machine Interface Design and Application Examples

2.1 Standalone Keyboard Interface Design

2.1.1 Characteristics of Keyboards and Key Confirmation

2.1.2 Standalone Key Expansion Example

2.2 Matrix Keyboard Interface Design

2.2.1 Working Principle of Matrix Keyboard

2.2.2 Key Recognition Methods

2.2.3 Keyboard Encoding

2.3 Interface Example of Matrix Keyboard

2.3.1 Hardware Design of 4×4 Matrix Keyboard

2.3.2 Software Design of 4×4 Matrix Keyboard

2.4 Development and Characteristics of Display Technology

2.4.1 Development of Display Technology

2.4.2 Main Parameters of Display Devices

2.5 LED Display Interface Design

2.5.1 Structure of LED Display

2.5.2 Scanning Method of LED Display

2.6 Touch Screen Technology and Its Application in Engineering

2.6.1 Development History of Touch Screen

2.6.2 Working Principle of Touch Screen

2.6.3 Introduction to Industrial Touch Screen Products

2.6.4 Applications of Touch Screen in Engineering

Chapter 3: Application Examples of DGUS Color LCD Screen

3.1 Screen Storage Space

3.1.1 Data Variable Space

3.1.2 Font Library (Icon) Space

3.1.3 Image Space

3.1.4 Registers

3.2 Hardware Configuration File

3.3 Installation of DGUS Configuration Software

3.4 User Manual for DGUS Configuration Software

3.4.1 Interface Introduction

3.4.2 Background Image Production Method

3.4.3 Icon Production Method and Icon File Generation

3.4.4 Creating a New Project and Interface Configuration

3.4.5 Project File Description

3.5 Project Download

3.6 Configuration Method of DGUS Screen Display Variables and Detailed Instructions

3.6.1 Serial Data Frame Architecture

3.6.2 Data Variables

3.6.3 Text Variables

3.6.4 Icon Variables

3.6.5 Basic Graphic Variables

3.7 Debugging DGUS Screen via USB

Chapter 4: Design Example of Rotary Encoder

4.1 Interface Design of Rotary Encoder

4.1.1 Working Principle of Rotary Encoder

4.1.2 Interface Circuit Design of Rotary Encoder

4.1.3 Timing Analysis of Rotary Encoder

4.2 Breathing Machine Button and Rotary Encoder Program Structure

4.3 Button Scanning and Rotary Encoder Interrupt Detection Program

4.3.1 KEY1 and KEY5 Button Scanning Program

4.3.2 KEY2 and KEY3 Interrupt Detection Program

4.4 Key Value Access Program

4.4.1 Circular FIFO Key Buffer

4.4.2 Related Functions of Key Value Access Program

Chapter 5: PWM Output and Watchdog Timer Application Examples

5.1 Overview of STM32F103 Timer

5.2 STM32 General Timer

5.2.1 Introduction to General Timer

5.2.2 Main Functions of General Timer

5.2.3 Function Description of General Timer

5.2.4 Working Modes of General Timer

5.3 Application Examples of STM32 PWM Output

5.3.1 Hardware Design of PWM Output

5.3.2 Software Design of PWM Output

5.4 Watchdog Timer

5.4.1 Introduction to Watchdog Applications

5.4.2 Independent Watchdog

5.4.3 Window Watchdog

5.4.4 Library Functions Related to Watchdog Operations

5.4.5 Independent Watchdog Program Design

5.4.6 Window Watchdog Program Design

Chapter 6: USART and Modbus Communication Protocol Application Examples

6.1 Basics of Serial Communication

6.1.1 Serial Asynchronous Communication Data Format

6.1.2 Connection Handshake

6.1.3 Confirmation

6.1.4 Interrupt

6.1.5 Polling

6.2 Working Principle of STM32 USART

6.2.1 Introduction to USART

6.2.2 Main Features of USART

6.2.3 Overview of USART Functions

6.2.4 USART Communication Timing

6.2.5 USART Interrupt

6.2.6 USART Related Registers

6.3 Application Examples of STM32 USART Serial Communication

6.3.1 Basic Configuration Process of STM32 USART

6.3.2 Hardware Design of STM32 USART Serial Communication Application

6.3.3 Software Design of STM32 USART Serial Communication Application

6.4 External Bus

6.4.1 RS-232C Serial Communication Interface

6.4.2 RS-485 Serial Communication Interface

6.5 Modbus Communication Protocol

6.5.1 Overview

6.5.2 Two Transmission Modes

6.5.3 Modbus Message Frame

6.5.4 Error Detection Methods

6.5.5 Modbus Programming Methods

6.6 PMM2000 Power Network Instrument Modbus-RTU Communication Protocol

6.6.1 Serial Port Initialization Parameters

6.6.2 Switch Quantity Input

6.6.3 Relay Control

6.6.4 Error Handling

6.6.5 Reading Standard Power Parameters

Chapter 7: SPI and Ferroelectric Memory Interface Application Examples

7.1 SPI Communication Principle of STM32

7.1.1 Overview of SPI

7.1.2 SPI Interconnection

7.2 Working Principle of STM32F103 SPI

7.2.1 Main Features of SPI

7.2.2 Internal Structure of SPI

7.2.3 Phase and Polarity of Clock Signal

7.2.4 Data Frame Format

7.2.5 Configuring SPI as Master Mode

7.3 Application Examples of STM32 SPI and Ferroelectric Memory Interface

7.3.1 STM32 SPI Configuration Process

7.3.2 Hardware Design of SPI and Ferroelectric Memory Interface

7.3.3 Software Design of SPI and Ferroelectric Memory Interface

Chapter 8: I2C and Calendar Clock Interface Application Examples

8.1 I2C Communication Principle of STM32

8.1.1 Overview of I2C Controller

8.1.2 Data Transmission on I2C Bus

8.2 I2C Interface of STM32F103

8.2.1 Main Features of STM32F103 I2C

8.2.2 Internal Structure of STM32F103 I2C

8.2.3 Mode Selection of STM32F103

8.3 Application Examples of STM32 I2C and Calendar Clock Interface

8.3.1 STM32 I2C Configuration Process

8.3.2 Hardware Design of I2C and Calendar Clock Interface

8.3.3 Software Design of I2C and Calendar Clock Interface

Chapter 9: CAN Communication Converter Design Examples

9.1 Characteristics of CAN

9.2 Overview of STM32 CAN Bus

9.2.1 Main Features of bxCAN

9.2.2 Physical Layer Characteristics of CAN

9.2.3 STM32 CAN Controller

9.2.4 STM32 CAN Filter

9.3 Working Modes of STM32 bxCAN

9.3.1 Initialization Mode

9.3.2 Normal Mode

9.4 Function Description of STM32 bxCAN

9.4.1 CAN Sending Process

9.4.2 CAN Receiving Process

9.5 CAN Bus Transceiver

9.5.1 PCA82C250/251 CAN Bus Transceiver

9.5.2 TJA1051 CAN Bus Transceiver

9.6 Overview of CAN Communication Converter

9.7 Design of Microcontroller Main Circuit for CAN Communication Converter

9.8 Design of UART Driver Circuit for CAN Communication Converter

9.9 Design of CAN Bus Isolation Driver Circuit for CAN Communication Converter

9.10 Design of USB Interface Circuit for CAN Communication Converter

9.11 Program Design for CAN Communication Converter

Chapter 10: Design Examples of Power Network Instruments

10.1 Overview of PMM2000 Power Network Instrument

10.2 Hardware Design of PMM2000 Power Network Instrument

10.2.1 Hardware Circuit Design of Mainboard

10.2.2 Hardware Design of Voltage Input Circuit

10.2.3 Hardware Design of Current Input Circuit

10.2.4 Hardware Design of RS-485 Communication Circuit

10.2.5 Hardware Circuit Design of 4~20mA Analog Signal Output

10.3 Measurement of Period and Frequency

10.4 Initialization Program of STM32F103VBT6

10.4.1 NVIC Interrupt Initialization Program

10.4.2 GPIO Initialization Program

10.4.3 ADC Initialization Program

10.4.4 DMA Initialization Program

10.4.5 Timer Initialization Program

10.5 Algorithm of Power Network Instrument

10.6 Dynamic Display Program Design of LED Digital Tube

10.6.1 Segment Code Table of LED Digital Tube

10.6.2 Status Code Table of LED Indicator Light

10.6.3 1ms System Tick Timer Interrupt Service Program

10.7 Application of PMM2000 Power Network Instrument in Digital Substation

10.7.1 Application Field

10.7.2 iMeaCon Digital Substation Background Computer Monitoring Network System

Chapter 11: Porting and Application Examples of μC/OS-Ⅱ on STM32

11.1 Introduction to μC/OS-Ⅱ

11.2 Software Platform for Embedded Control Systems

11.2.1 Selection of Software Platform

11.2.2 Basic Principles of μC/OS-Ⅱ Kernel Scheduling

11.3 Porting and Application of μC/OS-Ⅱ

11.3.1 Porting of μC/OS-Ⅱ

11.3.2 Application of μC/OS-Ⅱ

Chapter 12: RTC and Calendar Application Examples

12.1 RTC

12.1.1 Overview of RTC

12.1.2 Main Features of RTC

12.1.3 Internal Structure of RTC

12.1.4 RTC Reset Process

12.2 Backup Register (BKP)

12.2.1 Overview of BKP

12.2.2 Features of BKP

12.2.3 BKP Intrusion Detection

12.3 Operations of RTC

12.3.1 Initialization of RTC

12.3.2 Initialization of RTC Time Write

12.4 Application Examples of Calendar

Chapter 13: Design Examples of New Distributed Control Systems

13.1 Overview of New DCS

13.1.1 Requirements for Communication Network

13.1.2 Requirements for Control Functions of Communication Network

13.1.3 Requirements for System Reliability

13.1.4 Other Requirements

13.2 Composition of Field Control Station

13.2.1 DCS Structure of Two Control Stations

13.2.2 Types of DCS Measurement and Control Boards

13.3 New DCS Communication Network

13.3.1 Ethernet Actual Connection Network

13.3.2 Dual CAN Communication Network

13.4 Hardware Design of New DCS Control Card

13.4.1 Hardware Composition of Control Card

13.4.2 W5100 Network Interface Chip

13.4.3 Design of Dual Redundant Circuit

13.4.4 Design of Memory Expansion Circuit

13.5 Software Design of New DCS Control Card

13.5.1 Framework Design of Control Card Software

13.5.2 Design of Dual Machine Hot Backup Program

13.5.3 Design of CAN Communication Program

13.5.4 Design of Ethernet Communication Program

13.6 Design of Control Algorithm

13.6.1 Analysis and Operation of Control Algorithm

13.6.2 Storage and Recovery of Control Algorithm

13.7 Design of 8-Channel Analog Input Board (8AI)

13.7.1 Function Overview of 8-Channel Analog Input Board

13.7.2 Hardware Composition of 8-Channel Analog Input Board

13.7.3 Main Circuit Design of Microcontroller for 8-Channel Analog Input Board

13.7.4 2-bit Σ-Δ A/D Converter ADS1213

13.7.5 Measurement and Line Break Detection Circuit Design of 8-Channel Analog Input Board

13.7.6 Signal Conditioning and Channel Switching Circuit Design of 8-Channel Analog Input Board

13.7.7 Program Design of 8-Channel Analog Input Board

13.8 Design of 8-Channel Thermocouple Input Board (8TC)

13.8.1 Function Overview of 8-Channel Thermocouple Input Board

13.8.2 Hardware Composition of 8-Channel Thermocouple Input Board

13.8.3 Measurement and Line Break Detection Circuit Design of 8-Channel Thermocouple Input Board

13.8.4 Program Design of 8-Channel Thermocouple Input Board

13.9 Design of 8-Channel Resistance Temperature Detector Input Board (8RTD)

13.9.1 Function Overview of 8-Channel Resistance Temperature Detector Input Board

13.9.2 Hardware Composition of 8-Channel Resistance Temperature Detector Input Board

13.9.3 Measurement and Line Break Detection Circuit Design of 8-Channel Resistance Temperature Detector Input Board

13.9.4 Program Design of 8-Channel Resistance Temperature Detector Input Board

13.10 Design of 4-Channel Analog Output Board (4AO)

13.10.1 Function Overview of 4-Channel Analog Output Board

13.10.2 Hardware Composition of 4-Channel Analog Output Board

13.10.3 PWM Output and Line Break Detection Circuit Design of 4-Channel Analog Output Board

13.10.4 Self-Test Circuit Design of 4-Channel Analog Output Board

13.10.5 Output Algorithm Design of 4-Channel Analog Board

13.10.6 Program Design of 4-Channel Analog Board

13.11 Design of 16-Channel Digital Input Board (16DI)

13.11.1 Function Overview of 16-Channel Digital Input Board

13.11.2 Hardware Composition of 16-Channel Digital Input Board

13.11.3 Signal Preprocessing Circuit Design of 16-Channel Digital Input Board

13.11.4 Signal Detection Circuit Design of 16-Channel Digital Input Board

13.11.5 Program Design of 16-Channel Digital Input Board

13.12 Design of 16-Channel Digital Output Board (16DO)

13.12.1 Function Overview of 16-Channel Digital Output Board

13.12.2 Hardware Composition of 16-Channel Digital Output Board

13.12.3 Open-Drain Output Circuit Design of 16-Channel Digital Output Board

13.12.4 Self-Test Circuit Design of 16-Channel Digital Output Board

13.12.5 External Voltage Detection Circuit Design of 16-Channel Digital Output Board

13.12.6 Program Design of 16-Channel Digital Output Board

13.13 Design of 8-Channel Pulse Input Board (8PI)

13.13.1 Function Overview of 8-Channel Pulse Input Board

13.13.2 Hardware Composition of 8-Channel Pulse Input Board

13.13.3 Program Design of 8-Channel Pulse Input Board

13.14 Reliability and Safety Technology of Embedded Control Systems

13.14.1 Development Process of Reliability Technology

13.14.2 Basic Concepts and Terminology of Reliability

13.14.3 Content of Reliability Design

13.14.4 System Safety

13.14.5 Software Reliability

References

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development Exciting Sample Chapters

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development

Hands-on Guide to Mastering STM32F103 Microcontroller Project Development Purchase Link

(1) Follow the public account and share this article in your Moments;
(2) Enter Lottery0419 in the public account dialog box, a lottery QR code will pop up (lottery ends on April 20, 20:00);
(3) Click the link to participate in the lottery, winners must fill in the mailing address on the day of the draw.
Notice of the Ministry of Education’s Higher Education Teaching Guidance Committee for Electronic Information Major Planning Textbook Application (First Batch)

Leave a Comment

×