万本电子书0元读

万本电子书0元读

顶部广告

嵌入式系统开发与实战电子书

物联网、无人机、机器人、智能汽车等专业的入门进修课用先进的编程思想指导程序设计,用专业的UML工具进行系统建模用丰富的项目案例锤炼逻辑思维,用复杂的应用场景提升设计能力大大缩短成为高级嵌入式工程师的进阶路程

售       价:¥

纸质售价:¥49.00购买纸书

1人正在读 | 0人评论 6.8

作       者:陈翠和 等

出  版  社:电子工业出版社

出版时间:2025-06-01

字       数:12.9万

所属分类: 科技 > 计算机/网络 > 硬件

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
随着物联网、无人飞行器、机器人等技术与产业的飞速发展,嵌式系统的重要性愈发凸显。本书主要介绍ARM Cortex-M3结构的STM32F103ZET6应用发技术。主要内容包括Cortex-M3与STM32F103ZET6的硬件架构,分层软件架构与设计方法,以及片上外设GPIO、中断控制器、DMA、UART、TIMER、FSMC、I2C、SPI和ADC的编程技术。本书通过引软件工程UML,以及综合性项目的分析、设计案例,以综合性项目“智慧教室”的发技术为主线,将CPU与外设之间的程序查询、中断和DMA通信方式,线程(或任务)之间的同步、互斥、消息和共享变量等各种通信技术,面向对象的类图、序列图、状态机的UML软件建模方法,以及嵌式编程中常用的一些软件设计技巧适当地安排在项目实战或编程举例中,拓展读者思维,丰富读者工程经验;通过分层架构、面向对象的设计思想和良好的编码规范,提升读者复杂工程的软件建模、设计与发能力。<br/>【推荐语】<br/>项目实战,实现实操实练 全书代码,利于项目复现 理解硬件,深研发手册 提供PPT,帮助线上自学 课程大纲,辅助院校教学<br/>【作者】<br/>陈翠和,副教授,江西省高水平本科教学团队(程序设计类课程群教学团队)负责人。主持或参与国科技部十二五重大专项子课题1 项、科技部“863”计划课题1项、江西省科技厅03专项与5G项目1 项、江西省教育厅科技计划项目1项、企业项目10项。主要从事嵌式、物联网应用技术的研发与教学工作,两次获江西省教育厅教学成果一等奖。 张国林,副教授,江西省高水平本科教学团队(程序设计类课程群教学团队)成员,主持或参与江西省教育厅教改项目和科技计划项目共10项、企业项目10项。主要从事计算机应用技术的研发与教学工作,获江西省教育厅教学成果一等奖1项。 张佳锐,江西省高水平本科教学团队(程序设计类课程群教学团队)成员,主持江西省教育厅科技项目1项,江西省高校教学改革1项,参与国家自然科学基金1项。主要从事嵌式与物联网应用技术研发与教学工作。 胡红武,教授,江西省高水平本科教学团队(程序设计类课程群教学团队)成员。主持国家重实验室课题1项、江西省教学改革项目4项、江西省教育厅科技计划项目1项、企业项目3项;参与国家自然科学基金项目3项。主要从事计算机网络、计算机组成原理、嵌式技术的教学工作,获江西省教学成果二等奖1项。 陈文赫,主要从事嵌式设备发、工业物联网技术应用、车载传感器设计与实现等领域的教学与科研工作。在嵌式单片机发、车载传感器设备研发方向积累了丰富经验,致力于推动嵌式技术与人工智能、物联网的交叉融合。<br/>
目录展开

内容简介

前言

作者简介

第1章 嵌入式系统概述

1.1 学习目标

1.2 嵌入式系统的概念

1.3 嵌入式系统的组成

1.3.1 嵌入式系统的硬件组成

1.3.2 嵌入式系统的软件组成

1.4 嵌入式系统的应用领域

1.5 嵌入式系统的发展

1.6 嵌入式系统的操作系统

1.6.1 嵌入式系统的操作系统分类

1.6.2 嵌入式系统的操作系统功能

1.7 常用嵌入式系统的操作系统介绍

1.7.1 μC/OS

1.7.2 VxWorks

1.7.3 FreeRTOS

1.7.4 RT-Thread

1.7.5 Embedded Linux

1.7.6 Android

1.7.7 LiteOS

1.8 习题

第2章 嵌入式系统开发过程及分层架构

2.1 学习目标

2.2 嵌入式系统开发过程

2.3 软件系统分层架构

2.3.1 为什么需要分层

2.3.2 软件系统分层的概念

2.4 驱动层与应用层的交互

2.5 裸机工程结构与分层架构设计

2.5.1 STM32CubeMX生成的裸机工程目录结构

2.5.2 裸机工程的启动过程

2.5.3 裸机工程的分层架构设计

2.6 基于LiteOS的嵌入式系统分层架构设计

2.7 分层架构实验

2.7.1 寄存器编程

2.7.2 LiteOS编程

2.8 习题

第3章 嵌入式系统开发基础

3.1 学习目标

3.2 CPU与外设的通信方式

3.2.1 CPU与外设的接口

3.2.2 外设寻址与外设寄存器变量

3.2.3 单个外设寄存器变量的定义

3.2.4 地址连续的多个外设寄存器变量定义

3.3 位运算

3.4 软件建模语言UML

3.4.1 类图

3.4.2 用例图

3.4.3 活动图

3.4.4 序列图

3.4.5 状态图

3.5 LiteOS开发基础

3.5.1 LiteOS的内核架构

3.5.2 LiteOS的目录结构

3.5.3 LiteOS的启动过程

3.5.4 LiteOS任务及其创建

3.6 习题

第4章 Cortex-M3与STM32F103ZET6

4.1 学习目标

4.2 Cortex-M3介绍

4.2.1 Cortex-M3的架构

4.2.2 Cortex-M3寄存器

4.2.3 Cortex-M3的工作模式和特权级别

4.2.4 指令集

4.2.5 指令流水线

4.3 STM32F103ZET6介绍

4.3.1 STM32F103ZET6架构

4.3.2 STM32F103ZET6时钟

4.3.3 STM32F103ZET6存储器映射

4.3.4 STM32F103ZET6引脚定义

4.4 习题

第5章 GPIO编程

5.1 学习目标

5.2 信号类型

5.3 STM32F103ZET6 GPIO特性

5.4 GPIO的端口结构

5.5 GPIO的工作模式

5.6 GPIO的复用功能AFIO

5.7 GPIO与AFIO相关寄存器

5.7.1 工作方式配置寄存器GPIOx_CRL与GPIOx_CRH

5.7.2 输入数据寄存器GPIOx_IDR

5.7.3 输出数据寄存器GPIOx_ODR

5.7.4 位置位/复位寄存器GPIOx_BSRR

5.7.5 位复位寄存器GPIOx_BRR

5.7.6 锁定寄存器GPIOx_LCKR

5.7.7 事件控制寄存器AFIO_EVCR

5.7.8 外部中断控制寄存器AFIO_EXTICRx

5.7.9 引脚映射寄存器AFIO_MAPR

5.7.10 GPIO寄存器映射

5.7.11 AFIO寄存器映射

5.8 GPIO编程方法

5.8.1 寄存器编程方法

5.8.2 库函数编程方法

5.9 GPIO编程举例

5.9.1 寄存器编程举例

5.9.2 库函数编程举例

5.10 项目实战——智慧教室:人走关扇熄灯

5.10.1 项目需求

5.10.2 实验环境

5.10.3 人体红外检测传感器的工作原理

5.10.4 系统分析

5.10.5 系统设计

5.10.6 LiteOS+库函数编程

5.10.7 系统实现

5.11 习题

第6章 中断控制

6.1 学习目标

6.2 中断的工作原理

6.2.1 NVIC中断控制器

6.2.2 NVIC中断相关寄存器

6.2.3 EXTI外部中断控制器

6.3 STM32F103ZET6异常与中断向量表

6.4 裸机工程默认的中断设置

6.5 中断编程方法

6.5.1 寄存器编程方法

6.5.2 库函数编程方法

6.6 中断编程举例

6.6.1 寄存器编程举例

6.6.2 库函数编程举例

6.7 项目实战——按键报警

6.7.1 项目需求

6.7.2 实验环境

6.7.3 系统分析

6.7.4 系统设计

6.7.5 系统实现

6.8 习题

第7章 DMA编程

7.1 学习目标

7.2 DMA的工作原理

7.3 DMA的主要特性

7.4 DMA处理

7.4.1 通道

7.4.2 数据宽度与数据对齐方式

7.4.3 中断

7.4.4 错误管理

7.4.5 DMA的工作模式

7.4.6 DMA请求的处理流程

7.5 DMA寄存器

7.6 DMA寄存器映射

7.7 DMA的编程方法

7.7.1 库函数接口

7.7.2 库函数编程方法

7.8 DMA编程举例

7.9 习题

第8章 UART通信

8.1 学习目标

8.2 STM32F103ZET6 USART概述

8.3 STM32F103ZET6 UART的特性

8.4 STM32F103ZET6 UART的工作原理

8.5 串行通信帧格式

8.6 波特率的生成

8.7 多处理器模式

8.8 USART寄存器

8.9 USART寄存器映射

8.10 UART编程方法

8.10.1 寄存器编程方法

8.10.2 库函数编程方法

8.11 UART编程举例

8.11.1 寄存器编程举例

8.11.2 库函数编程举例

8.11.3 printf()输出重定向

8.12 项目实战——智慧教室系统人机交互调试接口

8.12.1 项目需求

8.12.2 实验环境

8.12.3 系统分析

8.12.4 系统设计

8.12.5 系统实现

8.13 习题

第9章 定时器

9.1 学习目标

9.2 定时器的基本工作原理

9.3 计数模式

9.3.1 上计数

9.3.2 下计数

9.3.3 上/下计数

9.4 定时事件

9.4.1 溢出事件

9.4.2 更新事件

9.4.3 比较事件

9.4.4 捕获事件

9.5 PWM

9.6 死区

9.7 STM32F103ZET6的定时器类型

9.8 基本定时器(TIM6和TIM7)

9.8.1 主要特性

9.8.2 计数时序与更新事件

9.8.3 自动重装载值的计算

9.8.4 基本定时器寄存器

9.8.5 基本定时器寄存器映射

9.9 高级定时器(TIM1和TIM8)

9.9.1 主要特性

9.9.2 重复计数器

9.9.3 计数时钟源

9.9.4 输入捕获

9.9.5 输出比较

9.9.6 生成PWM信号

9.9.7 高级定时器寄存器

9.9.8 高级定时器寄存器映射

9.10 通用定时器

9.11 系统节拍定时器SysTick

9.11.1 系统节拍定时器的工作原理

9.11.2 系统节拍定时器寄存器

9.11.3 系统节拍定时器寄存器映射

9.11.4 裸机工程对系统节拍定时器的使用

9.12 看门狗定时器

9.12.1 独立看门狗IWDG

9.12.2 窗口看门狗WWDG

9.13 定时器编程方法

9.13.1 库函数接口

9.13.2 库函数编程方法

9.14 定时器编程举例

9.14.1 基本定时器编程举例

9.14.2 高级定时器编程举例

9.15 项目实战——人体智慧检测

9.15.1 项目需求

9.15.2 实验环境

9.15.3 步进电机的工作原理与工作方式

9.15.4 系统分析

9.15.5 系统设计

9.15.6 系统实现

9.16 习题

第10章 FSMC编程

10.1 学习目标

10.2 FSMC控制概述

10.3 FSMC功能框图

10.4 各类存储器地址映射

10.5 NOR Flash和PSRAM控制器

10.5.1 支持的存储器类型

10.5.2 读/写时序

10.6 FSMC NOR/PSRAM控制器寄存器

10.7 寄存器映射

10.8 FSMC编程方法

10.8.1 库函数接口

10.8.2 库函数编程方法

10.9 FSMC编程举例

10.9.1 IS62WV51216BLL芯片介绍

10.9.2 利用库函数读/写SRAM

10.10 习题

第11章 I2C编程

11.1 学习目标

11.2 I2C协议简介

11.2.1 I2C网络

11.2.2 I2C总线信号与时序

11.2.3 I2C设备地址格式

11.2.4 I2C数据传送过程

11.3 STM32F103ZET6 I2C的工作原理

11.3.1 主要特性

11.3.2 功能结构

11.3.3 工作方式

11.3.4 通信故障

11.3.5 SDA/SCL控制

11.3.6 中断

11.4 I2C寄存器

11.5 I2C寄存器映射

11.6 I2C编程方法

11.6.1 库函数接口

11.6.2 库函数编程方法

11.7 I2C编程举例

11.7.1 AT24C02 EEPROM介绍

11.7.2 基于程序查询方式

11.7.3 基于中断方式

11.8 项目实战——智慧教室:温度控制

11.8.1 项目需求

11.8.2 实验环境

11.8.3 AHT10温湿度传感器简介

11.8.4 系统分析

11.8.5 系统设计

11.8.6 系统实现

11.9 习题

第12章 串行外设接口SPI

12.1 学习目标

12.2 SPI的功能及主要特性

12.3 SPI的工作原理

12.3.1 SPI功能框图

12.3.2 SPI的工作模式

12.3.3 SPI用作主设备

12.3.4 SPI用作从设备

12.3.5 状态标志

12.3.6 DMA传输

12.4 寄存器

12.5 寄存器映射

12.6 SPI编程方法

12.6.1 库函数接口

12.6.2 库函数编程方法

12.7 SPI编程举例

12.8 项目实战——智慧教室:OLED显示教室温湿度

12.8.1 项目需求

12.8.2 实验环境

12.8.3 OLED SSD1306介绍

12.8.4 系统分析

12.8.5 系统设计

12.8.6 系统实现

12.9 习题

第13章 模数转换器ADC

13.1 学习目标

13.2 ADC的主要特性

13.3 ADC的功能结构与基本概念

13.3.1 ADC转换的触发方式

13.3.2 模拟信号输入通道

13.3.3 通道序列/通道分组

13.3.4 规则序列与注入序列

13.3.5 自动注入

13.3.6 序列的定义与转换结果的保存

13.4 ADC的工作方式

13.5 注入序列转换的启动方式

13.6 中断和DMA

13.7 ADC的时钟与采样时间

13.8 ADC的触发

13.9 数据对齐

13.10 校准

13.11 模拟看门狗

13.12 转换结果

13.13 ADC寄存器

13.14 ADC寄存器映射

13.15 ADC编程方法

13.15.1 库函数接口

13.15.2 库函数编程方法

13.16 ADC编程举例

13.16.1 使用STM32CubeMX配置ADC

13.16.2 使用STM32CubeMX生成代码

13.16.3 电位器驱动

13.17 项目实践——智慧教室:光照强度控制

13.17.1 项目需求

13.17.2 实验环境

13.17.3 光照强度传感器——光敏电阻特性

13.17.4 系统分析

13.17.5 系统设计

13.17.6 系统实现

13.18 习题

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部