首页 圈子 我的社区 微课程 问答 积分兑换 活动 投票 搜索 文章 软件 用户 相册 资料
全部 Proteus教学 其它

嵌入式系统原理与应用——基于STM32硬件和Proteus仿真

zhangls
发表于 2025-10-20 15:49:42


作  译  者:周银祥

电子工业出版社

ISBN:9787121506550

 

作者介绍

   本教材由电子科技大学成都学院周银祥教授/正高工编写而成,作者较早开设STM32课程的教师之一,在2010年就编写了讲义和设计制作了实验板,开始基千Cortex-M3的STM32的教学;作者早期的STM32的教学工作,体现了工程教学的前瞻性和正确选择。

 

内容简介

   本书第1章主要讲解嵌入式系统概述、ARM处理器概述及STM32微控制器概述;第2章主要讲解STM32开发工具软件、STM32开发/实验板及STM32的库函数;第3章主要讲解STM32的GPIO、STM32的实验过程与现象、STM32的复位与时钟、STM32的中断与事件及STM32的串口通信;第4章主要讲解LCD显示和STM32的FSMC、STM32定时器、STM32的I2C总线、STM32的SPI及STM32的ADC;第5章主要讲解嵌入式实时操作系统RT-Thread及嵌入式图形界面LVGL;第6章是一个实训项目,主要讲解大学生电子设计竞赛控制类题目中常见的智能巡线小车的设计。本书的程序设计部分同时使用了STM32的标准库和HAL库,实验例程同时涵盖了STM32硬件实验和Proteus软件仿真STM32实验,旨在帮助读者在学习过程中迅速、高效地全面理解和掌握硬件设计和软件设计的相关知识。本书可以作为高等院校电子、自动化等电类专业的单片机与嵌入式系统应用相关课程的教材,也可以作为相关领域工程技术人员的学习资料或参考用书。

 

前    言

   采用 ARM 技术知识产权(Intellectual Property,IP)核的处理器,即我们通常所说的 ARM处理器,已经广泛应用于工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场。ARM 已成为嵌入式系统的代名词,学习嵌入式系统实际上就是学习 ARM 处理器。

   ARM 公司于 1985 年开发了全球第一款 RISC 处理器,随后在 1993 年推出了 ARM7,并陆续推出了 ARM9、ARM11 等系列,这些产品均得到了广泛应用。到 2004 年,ARM 公司开始推出更新的系列产品,如 Cortex-M3、Cortex-R4、Cortex-A8 等,这些产品逐渐取代了早期的 ARM7、ARM9 和 ARM11 系列。

   Cortex-M3 是基于 ARMV7-M 架构的首款处理器,也是行业领先的 32 位处理器。它特别适用于对功耗和成本敏感的嵌入式应用,如微控制器、汽车车身系统、工业控制系统和无线网络等。该处理器的设计简化了可编程性,降低了复杂性,使 ARM 架构成为各种应用方案的理想选择。

   笔者从 2010 年开始使用基于 Cortex-M3 的 STM32 进行教学,并于 2011 年 9 月编写了讲义,当时使用 STM32 的 2.0.1 版固件库,这个版本简洁易懂,非常适合初学者入门。为了紧跟技术的发展和变化,本书采用了 STM32 的 3.5.0 版标准库和 1.8.5 版 HAL 库。在软件环境方面,使用了 STM32CubeMX 与 MDK5 的组合。在编程应用实验中,采用 STM32 硬件实验与 Proteus 软件仿真 STM32 实验相结合的方式,硬件与软件仿真实验教学的优势互补,在方便教学的同时提升了实验效果。

   为了更好地进行嵌入式教学,积极进行实验和实践是非常重要的。笔者在 2010 年 3 月设计了基于 STM32F103VB 的 AS-05 型 STM32 实验板,并在 2013 年 9 月设计了基于STM32F103VE 的 AS-07 型 STM32 实验板,随后在 2021 年进行了更新。如果需要本书中的配套实验板和程序,以及电子教案、教学大纲、电子课件等教学资源,请登录华信教育资源网下载。本书的入门实验部分配有视频资源(学习通“嵌入式系统应用开发”课程),在教材的相关章节可使用手机扫码观看或使用计算机打开配套网络课程观看。

   在本书的编写过程中,广州市风标电子技术有限公司提供了 Proteus 软件,汪伟捷工程师为本书中Proteus 软件仿真STM32 实验提供了指导;上海睿赛德电子科技有限公司提供了 RT-Thread 软件,罗齐熙先生为 RT-Thread 的应用提供了指导。在此,对他们的帮助表示感谢。

   余远飞、杨敦文等学生参与了稿件的核校工作,在此表示感谢。

 

周银祥   

 

 

目  录

第1章  概述

1.1  嵌入式系统概述

1.1.1  嵌入式系统的定义

1.1.2  嵌入式系统的组成

1.2  ARM处理器概述

1.2.1  ARM公司

1.2.2  ARM处理器

1.3  STM32微控制器概述

1.3.1  STM32微控制器的分类

1.3.2  STM32F103微控制器的内部结构

1.3.3  STM32F103的外部引脚

1.3.4  STM32F103的I/O端口特性

1.3.5  STM32系列产品的命名规则

1.4  思考与练习


第2章  STM32开发环境

2.1  STM32开发工具软件

2.1.1  MDK的安装

2.1.2  STM32CubeMX的安装

2.1.3  Proteus软件的安装

2.1.4  STM32仿真器及驱动程序的安装

2.1.5  USB转串口驱动的安装

2.2  STM32开发/实验板

2.2.1  STM32最小系统板

2.2.2  STM32 Nucleo开发板

2.2.3  STM3210E-EVAL评估板

2.2.4  AS-07型STM32实验板

2.3  STM32的库函数

2.3.1  STM32的标准外设库

2.3.2  STM32的HAL库函数

2.4  思考与练习


第3章  STM32基础入门

3.1  STM32的GPIO

3.1.1  GPIO端口

3.1.2  GPIO库函数(标准库V3.5.0)

3.1.3  GPIO库函数(HAL库V1.8.5)

3.1.4  AFIO和调试配置

3.1.5  GPIO编程应用

3.2  STM32的实验过程与现象

3.2.1  STM32标准库V3.5.0的工程模板

3.2.2  使用STM32标准库V3.5.0的工程模板

3.2.3  MDK仿真调试程序

3.2.4  使用串口ISP和IAP下载程序

3.2.5  Proteus仿真STM32

3.2.6  使用STM32CubeMX

3.2.7  使用STM32CubeF1固件库工程模板和范例实验

3.3  STM32的复位与时钟

3.3.1  STM32的复位

3.3.2  STM32的时钟

3.3.3  RCC编程应用

3.4  STM32的中断与事件

3.4.1  NVIC

3.4.2  EXTI

3.4.3  中断编程应用

3.5  STM32的串口通信

3.5.1  USART概述

3.5.2  USART编程应用

3.6  思考与练习


第4章  STM32应用编程

4.1  LCD显示和STM32的FSMC

4.1.1  LCD简介

4.1.2  LCD的外部引脚

4.1.3  LCD的主要特性

4.1.4  LCD驱动器

4.1.5  FSMC概述

4.1.6  LCD编程应用

4.2  STM32定时器

4.2.1  基本定时器(TIM6和TIM7)

4.2.2  通用定时器(TIMx)

4.2.3  高级控制定时器(TIM1和TIM8)

4.2.4  系统滴答定时器SysTick

4.2.5  看门狗

4.2.6  TIM编程应用

4.3  STM32的I2C总线

4.3.1  Philips的I2C总线

4.3.2  STM32的I2C总线简介

4.3.3  STM32的I2C总线的主要特点

4.3.4  STM32的I2C总线功能描述

4.3.5  I2C总线存储器24C02

4.3.6  I2C编程应用

4.4  STM32的SPI

4.4.1  SPI的主要特点

4.4.2  SPI的功能描述

4.4.3  SPI总线存储器W25Q32

4.4.4  SPI编程应用

4.5  STM32的ADC

4.5.1  ADC的主要特性

4.5.2  ADC编程应用

4.6  思考与练习


第5章  STM32高级应用

5.1  嵌入式实时操作系统RT-Thread

5.1.1  RT-Thread内核

5.1.2  RT-Thread Studio开发工具软件

5.1.3  RT-Thread实验

5.2  嵌入式图形界面LVGL

5.2.1  LVGL概述

5.2.2  LVGL编程应用

5.3  思考与练习


第6章  STM32智能巡线小车设计实训

6.1  STM32智能巡线小车的硬件设计

6.1.1  小车车体(底盘)

6.1.2  电池

6.1.3  主控电路

6.1.4  直流减速电机

6.1.5  电机驱动电路

6.1.6  红外传感器

6.2  STM32智能巡线小车的软件设计

6.2.1  小车前进、后退及差速转向

6.2.2  巡线原理与编程

6.2.3  舵机控制

6.2.4  速度检测与PID控制

6.2.5  舵机控制转向的阿克曼小车巡线


542 1

你的回应
  • 一一

    2025-11-17 19:54:17 一一

一周热门
一月热门
意见反馈