Introduction and Application of ARM Cortex-M3 Embedded System

Introduction and Application of ARM Cortex-M3 Embedded System

The STM32 is an important member of the Cortex-M3 family and is one of the most widely used chips today. From the 51 microcontroller to the emergence of embedded systems, the Internet of Things, big data, and artificial intelligence, the rapid development of electronic technology is driving the growth of the semiconductor industry and changing our lives.

Now we are more accustomed to referring to microcontroller-related development as embedded development. Higher education courses still primarily focus on the 51 microcontroller, with only a few schools offering elective courses on Cortex-M3. As an important member of this family, STM32 is gradually being learned by more and more people.

01
Author Introduction

Feng Xinyu is an associate professor at Heilongjiang University of Science and Technology, engaged in embedded system project development and related teaching work for a long time. Over the past decade, he has hosted or participated in more than twenty embedded-related projects and topics; as a guiding teacher, he has participated in the National College Student Electronic Design Competition, Freescale Electronic Design Competition, Heilongjiang Province Electronic Design Competition, and other work, with students he guided winning various major awards in competitions multiple times. His representative works include the bestselling book “ARM Cortex-M3 Architecture and Programming” (2nd edition) and “Quadrotor UAV Design” (2nd edition).

02
Content Introduction

This book starts with the Cortex-M3 processor, beginning with the use of programming software and the configuration of STM32’s I/O ports, detailing the usage of the STM32 microprocessor and introducing important content in an easy-to-understand manner, mainly including basic I/O ports, interrupts, ADC, timers, etc. The last few chapters provide multiple case studies sourced from research topics (such as balance car design, electronic scale design, etc.) and student electronic design competition works. These cases effectively illustrate the typical applications of STM32, helping readers quickly get started and operate. Readers can design works by integrating the previously learned content, achieving practical application. This book provides all design circuit diagrams, source codes, and other materials, and readers can obtain these materials and online Q&A services through QQ groups, emails, etc., facilitating learning. This book can serve as a reference for higher education in computer, electronic information, communication engineering, and automatic control-related majors, as well as a reference for relevant technical personnel.

03
Book Directory

Chapter 1 Introduction to ARM Cortex-M3 Core

1.1 Chapter Overview

1.2 Main Applications

1.3 Main Features of Cortex-M3

1.4 Characteristics of Typical M3 Cores

1.4.1 Naming Rules

1.4.2 Product Functions and Peripheral Configuration

1.5 Chapter Summary

1.6 Exercises

Chapter 2 Setting Up the Development Environment

2.1 Chapter Overview

2.2 MDK Installation

2.3 Exploring New Project Creation

2.4 Simulation Debugging

2.5 Chapter Summary

2.6 Exercises

Chapter 3 Basic I/O Port Control

3.1 Chapter Overview

3.2 Advanced New Project Creation

3.3 MDK Project Configuration

3.4 Register Operations

3.5 Clock Configuration

3.5.1 Clock Tree

3.5.2 Clock Source

3.5.3 APB2 Peripheral Clock Enable Register (RCC_APB2ENR)

3.6 I/O Port Configuration

3.6.1 Basic Situation of I/O

3.6.2 GPIO Configuration Register Description

3.6.3 Port Output Data Register

3.7 Library Function Operations

3.7.1 GPIO_Init Function

3.7.2 RCC_APB2PeriphClockCmd

3.7.3 Control I/O Output Level

3.8 Digital Tube Operation Example

3.8.1 Basic Knowledge of Digital Tubes

3.8.2 Hardware Circuit Design

3.8.3 Software Explanation

3.9 Simple Key Operation Example

3.10 Chapter Summary

3.11 Exercises

Chapter 4 Interrupts

4.1 Chapter Overview

4.2 STM32 Interrupts and Exceptions

4.3 Basic Concepts Related to STM32 Interrupts

4.3.1 Interrupt Priority

4.3.2 Interrupt Controller NVIC

4.3.3 NVIC Interrupt Vector Priority Groups

4.4 External Interrupts

4.4.1 Basic Situation of External Interrupts

4.4.2 Basic Steps for Using External Interrupts

4.5 Single Key Interrupt Operation Example

4.6 Multiple Key Interrupt Operation Example

4.7 Chapter Summary

4.8 Exercises

Chapter 5 Serial Communication

5.1 Chapter Overview

5.2 Basics of Serial Communication

5.2.1 Basic Concepts

5.2.2 Common Serial Communication Interfaces

5.3 STM32 Serial Port Operations

5.3.1 Register Method for Operating Serial Ports

5.3.2 Library Function Method for Operating Serial Ports

5.3.3 Steps for Serial Port Settings

5.4 Serial Communication Operation Examples

5.4.1 Main Program

5.4.2 Serial Port Initialization Code

5.5 Chapter Summary

5.6 Exercises

Chapter 6 Direct Memory Access

6.1 Chapter Overview

6.2 Basics of DMA

6.3 STM32 DMA Operations

6.3.1 Register Method for Operating DMA

6.3.2 Library Function Method for Operating DMA

6.3.3 Steps for DMA Settings

6.4 DMA Operation Examples

6.4.1 Main Program

6.4.2 DMA Initialization Code

6.4.3 Code Analysis and Experimental Results

6.5 Chapter Summary

6.6 Exercises

Chapter 7 Analog/Digital Converters

7.1 Chapter Overview

7.2 Basics of ADC

7.2.1 Main Features of ADC

7.2.2 ADC Block Diagram and Pin Distribution

7.2.3 Channel Selection

7.2.4 ADC Conversion Modes

7.3 STM32 ADC Operations

7.3.1 Register Method for Operating ADC

7.3.2 Library Function Method for Operating ADC

7.3.3 Steps for ADC Settings

7.4 ADC Operation Examples

7.4.1 Main Program

7.4.2 ADC Initialization Code

7.4.3 Code Analysis and Experimental Results

7.5 Chapter Summary

7.6 Exercises

Chapter 8 Timers

8.1 Chapter Overview

8.2 Basics of Timers

8.2.1 Advanced Timers

8.2.2 Basic Timers

8.2.3 General Timers

8.3 STM32 Timer Operations

8.3.1 Register Method for Operating Timers

8.3.2 Library Function Method for Operating Timers

8.3.3 Steps for Timer Settings

8.4 Timer Operation Examples

8.4.1 Main Program

8.4.2 Timer Initialization Code

8.4.3 Code Analysis and Experimental Results

8.5 Chapter Summary

8.6 Exercises

Chapter 9 CAN Bus Design

9.1 Chapter Overview

9.2 Basics of STM32 CAN Bus

9.2.1 Physical Layer Characteristics of CAN

9.2.2 Bit Timing of CAN

9.2.3 CAN Bus Arbitration

9.2.4 STM32 CAN Controller

9.2.5 STM32 CAN Filter

9.2.6 CAN Sending Process

9.2.7 CAN Receiving Process

9.2.8 Bit Timing Characteristics of STM32 CAN

9.3 STM32 CAN Bus Operations

9.3.1 Register Method for Operating CAN Bus

9.3.2 Library Function Method for Operating CAN Bus

9.3.3 Steps for CAN Bus Settings

9.4 CAN Communication Example

9.5 Chapter Summary

9.6 Exercises

Chapter 10 Inverted Pendulum Design

10.1 Chapter Overview

10.2 Design Requirements

10.3 Design Analysis

10.3.1 Selection of Inverted Pendulum

10.3.2 System Structure Composition

10.3.3 System Model Analysis

10.3.4 Determination of System Control Scheme

10.4 Design Steps

10.4.1 Minimum System Circuit Design for Microcontroller

10.4.2 Selection of Motor and Design of Drive Circuit

10.4.3 Measurement Circuit Design

10.4.4 Communication Circuit Design

10.4.5 Auxiliary Circuit Design

10.4.6 System Software Design

10.5 Chapter Summary

10.6 Exercises

Chapter 11 Intelligent Vehicle Design

11.1 Chapter Overview

11.2 Design Requirements

11.3 Design Analysis

11.4 Design Steps

11.4.1 Minimum System Circuit Design

11.4.2 Power Supply Circuit Design

11.4.3 Motor Drive Circuit Design

11.4.4 Environmental Detection Sensor Circuit Design

11.4.5 Human-Computer Interaction Circuit Design

11.4.6 Overall Software Design

11.4.7 PID Control Software Design

11.4.8 Maze Algorithm Design

11.4.9 Design Measurement Methods and Data Processing

11.4.10 Sensor Software Filtering

11.5 Chapter Summary

11.6 Exercises

Chapter 12 Balance Car Design

12.1 Chapter Overview

12.2 Design Requirements

12.3 Design Analysis

12.4 Design Steps

12.4.1 Environmental Detection Sensor Circuit Design

12.4.2 Human-Computer Interaction Circuit Design

12.4.3 MPU 6050 Usage Methods

12.4.4 Overall Software Design

12.5 Chapter Summary

12.6 Exercises

Chapter 13 Electronic Scale Design

13.1 Chapter Overview

13.2 Design Requirements

13.3 Design Analysis

13.4 Design Steps

13.4.1 Main Controller Related Circuit

13.4.2 TFT LCD Related Circuit Design

13.4.3 AD Conversion Chip HX711 Related Circuit Design

13.4.4 WT588D Voice Module Related Circuit Design

13.4.5 Weight Sensor Related Circuit Design

13.4.6 Software Design Ideas and Code Analysis

13.5 Chapter Summary

13.6 Exercises

Chapter 14 Design of Wireless Power Transmission System

14.1 Chapter Overview

14.2 Design Requirements

14.3 Design Analysis

14.3.1 Basic Principle Analysis of Wireless Power Transmission

14.3.2 Characteristics of Wireless Power Transmission

14.4 Design Steps

14.4.1 System Structure Composition

14.4.2 Selection and Design of Main Topology Circuit

14.4.3 MOSFET Driver Design

14.4.4 Design of Coils and Capacitors

14.4.5 Design of High-Frequency Rectification at the Receiving End

14.4.6 Design of Control Circuit

14.4.7 Program Design

14.4.8 Debugging and Verification

14.4.9 Measurement Results and Conclusion Analysis

14.5 Chapter Summary

14.6 Exercises

References

04
Editor Recommendation

This book systematically discusses the principles, architecture, programming, and project development of the ARM Cortex-M3 embedded microprocessor (STM32 series), summarizing many years of teaching and project development experience, and has the following features:

(1) Easy to teach and learn: Starting from the most basic I/O port configuration, it sequentially introduces basic functions such as interrupts, serial communication, A/D conversion, timers, and CAN bus, making it easy for readers to understand and apply.

(2) Continuity: Emphasizes the coherence of knowledge content and analytical methods, and properly handles the connection with earlier and subsequent courses.

(3) Clear structure: Introduces the principles, architecture, programming, and project development of the STM32 series microprocessor in an easy-to-understand manner, progressing step by step, with interlocking sections and mutual responses.

05
Teaching Resources

Teaching slides, accompanying teaching plans (PPT); Program code, accompanying example programs; Circuit diagrams, accompanying circuit diagrams. You can download these materials from the Tsinghua University Press website on the book page.

06
JD Reading

Click on the book cover below to view the JD details page for “Introduction and Application of ARM Cortex-M3 Embedded System STM32 Series Microprocessor Architecture, Programming and Project Practice”.

Introduction and Application of ARM Cortex-M3 Embedded System

ISBN:9787302547150

Price: 59.00

Introduction and Application of ARM Cortex-M3 Embedded System

Scan to purchase at a discount

07
Book Giveaway

If you are a teacher, you can apply for the book in the following ways:

(1) Follow the “Artificial Intelligence Science and Technology” public account and share this article to your circle of friends;

(2) Fill out the application form: Open the “Artificial Intelligence Science and Technology” public account menu, click on 【Books】→【Book Application】 to enter the application form.

(3) The applicant must be an ordinary college teacher and teach the course corresponding to the requested sample book. The application form needs to upload proof of identity with a syllabus of a similar course.

Introduction and Application of ARM Cortex-M3 Embedded System

AI learning accompanies you, are youreading」?

Leave a Comment

Your email address will not be published. Required fields are marked *