图书介绍

嵌入式系统及其应用 基于Cortex-M3内核和STM32F103系列微控制器的系统设计与开发【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

嵌入式系统及其应用 基于Cortex-M3内核和STM32F103系列微控制器的系统设计与开发
  • 陈启军,余有灵,张伟等编著 著
  • 出版社: 上海:同济大学出版社
  • ISBN:9787560845302
  • 出版时间:2011
  • 标注页数:493页
  • 文件大小:181MB
  • 文件页数:508页
  • 主题词:微型计算机-系统设计-高等学校-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

嵌入式系统及其应用 基于Cortex-M3内核和STM32F103系列微控制器的系统设计与开发PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 嵌入式系统导论1

1.1 嵌入式系统——从部件到系统的集成1

1.1.1 什么是嵌入式系统1

1.1.2 嵌入式系统——从部件到系统的集成2

1.2 计算的基本原理和历史演变4

1.2.1 计算的概念——从数值计算到通用信息处理和智能计算4

1.2.2 计算的基本模型:图灵机理论模型5

1.2.3 计算的发展规律7

1.3 计算机的基本原理和历史演变8

1.3.1 计算机的诞生8

1.3.2 计算机的发展9

1.3.3 面向嵌入式应用的架构改进12

1.4 嵌入式系统的历史沿革14

1.5 ARM,Cortex和STM32简介15

1.5.1 ARM系列内核15

1.5.2 Cortex系列内核19

1.5.3 STM32F103系列微控制器20

1.6 嵌入式系统工程设计与开发23

1.6.1 需求分析23

1.6.2 架构和概要设计24

1.6.3 详细设计与开发25

1.6.4 测试反馈25

1.7 本课程学习内容和目标26

习题26

第2章 Cortex-M3微处理器27

2.1 Cortex-M3微处理器内核27

2.1.1 内核体系结构28

2.1.2 系统总线结构30

2.1.3 寄存器32

2.1.4 存储器管理37

2.1.5 工作模式49

2.1.6 异常与中断51

2.1.7 堆栈65

2.1.8 CoreSight调试与跟踪系统68

2.1.9 Cortex-M3内核的其他特性70

2.2 指令系统73

2.2.1 Thumb-2指令分类75

2.2.2 统一汇编语言76

2.2.3 16-bit Thumb-2指令集编码格式77

2.2.4 32-bit Thumb-2指令集编码格式83

2.2.5 条件执行94

2.2.6 未定义及不可预测指令96

2.2.7 寄存器域编码0b1111的用途97

2.2.8 寄存器域编码0b1101的用途98

2.2.9 Cortex-M3常用的Thumb-2指令99

2.2.10 Thumb-2指令与ARM体系架构下的指令比较114

2.2.11 基于Cortex-M3的Thumb-2指令集118

习题129

第3章 STM32F103基础及最小系统设计130

3.1 从Cortex-M3到STM32F103130

3.1.1 微处理器、微控制器和系统130

3.1.2 STM32F103微控制器131

3.2 存储器与总线架构139

3.2.1 存储子系统基本构架139

3.2.2 存储器映像140

3.2.3 位带绑定(Bit-Banding)144

3.2.4 嵌入式闪存145

3.2.5 寄存器说明155

3.2.6 启动配置158

3.2.7 应用实例159

3.3 中断和事件161

3.3.1 嵌套向量中断控制器(NVIC)及其特性162

3.3.2 外部中断/事件控制器(EXTI)164

3.3.3 中断寄存器描述166

3.3.4 应用实例169

3.4 STM32F103x的时钟系统173

3.5 基于STM32的最小系统参考设计174

习题178

第4章 DMA控制器179

4.1 主要特性179

4.2 功能描述180

4.2.1 DMA处理182

4.2.2 仲裁器182

4.2.3 DMA通道183

4.2.4 可编程的数据传输宽度、对齐方式和数据大小端185

4.2.5 错误管理187

4.2.6 DMA请求映像187

4.3 DMA寄存器188

4.4 DMA应用实例192

习题197

第5章 通用和复用功能I/O198

5.1 GPIO功能描述198

5.1.1 通用目标I/O(GPIO)200

5.1.2 原子位设置或位清除200

5.1.3 外部中断/唤醒线200

5.1.4 复用功能(AF)200

5.1.5 I/O复用功能的软件重新映射201

5.1.6 GPIO锁定机制201

5.1.7 输入配置与输出配置201

5.1.8 复用功能配置203

5.1.9 模拟输入配置204

5.2 GPIO寄存器描述205

5.3 复用功能I/O和调试配置(AFIO)207

5.3.1 引脚功能选择207

5.3.2 BXCAN复用功能重映射207

5.3.3 JTAG/SWD复用功能重映射208

5.3.4 定时器复用功能重映射209

5.3.5 USART复用功能重映射210

5.3.6 I2C复用功能重映射211

5.3.7 SPI复用功能重映射211

5.4 AFIO寄存器描述211

5.5 GPIO和AFIO寄存器地址映像214

5.5.1 GPIO寄存器地址映像214

5.5.2 AFIO寄存器地址映像215

5.6 应用实例215

习题217

第6章 STM32高级定时器原理与应用218

6.1 定时/计数器的基本原理与实现方法218

6.1.1 完全硬件实现218

6.1.2 纯软件方式219

6.1.3 微控制器中的可编程定时/计数器219

6.2 STM32高级定时/计数器220

6.2.1 STM32高级定时器的主要特点220

6.2.2 高级定时器概述221

6.3 STM32高级定时器寄存器描述222

6.4 STM32高级定时器工作原理及应用239

6.4.1 定时器的时基信号239

6.4.2 重复计数器245

6.4.3 定时器定时应用实例246

6.4.4 输入捕获247

6.4.5 输出比较模式248

6.4.6 STM32高级定时器捕获/比较应用实例252

6.4.7 STM32高级定时器触发工作模式256

习题258

第7章 STM32的USART模块259

7.1 串行通信概述259

7.2 串行通信的基本原理259

7.2.1 USART的扩展——RS232C接口和标准259

7.2.2 RS232C的连接261

7.2.3 流控和握手262

7.2.4 分帧和组帧263

7.2.5 错误检测和CRC校验263

7.2.6 RS485264

7.3 STM32F103的串行通信模块264

7.3.1 基本结构和连接265

7.3.2 单字节传输266

7.3.3 分频设置和波特率选择267

7.3.4 基于RTS和CTS硬件握手协议的流控过程268

7.3.5 常用全双工异步通信的发送配置270

7.3.6 全双工异步通信的接收配置271

7.3.7 关于传输错误272

7.3.8 多处理器通信273

7.3.9 校验控制273

7.3.10 LIN模式273

7.3.11 USART同步模式273

7.3.12 单线半双工通信274

7.3.13 智能卡274

7.3.14 IrDA SIR ENDEC功能块275

7.3.15 利用DMA实现连续通信276

7.3.16 中断请求277

7.4 USART寄存器描述278

7.5 USART应用实例分析286

习题289

第8章 STM32的SPI模块290

8.1 串行外设接口概述290

8.2 串行外设接口SPI的基本原理291

8.2.1 主从式连接架构291

8.2.2 接口信号线介绍292

8.2.3 数据传输的时序模式293

8.2.4 多个从机的连接294

8.3 STM32F103的串行外设接口模块294

8.3.1 基本结构和连接295

8.3.2 时钟信号的相位和极性296

8.3.3 数据帧格式297

8.3.4 SPI从模式297

8.3.5 SPI主模式298

8.3.6 状态标志299

8.3.7 CRC计算299

8.3.8 利用DMA的SPI通信300

8.3.9 错误标志300

8.3.10 中断301

8.4 SPI寄存器描述301

8.5 SPI应用实例分析306

习题311

第9章 I2C总线原理及其应用312

9.1 I2C总线概述312

9.1.1 I2C总线特点312

9.1.2 I2C总线标准的发展历史313

9.1.3 I2C总线术语313

9.2 I2C总线原理314

9.2.1 I2C硬件构成314

9.2.2 位传输315

9.2.3 数据传输格式316

9.3 STM32 I2C模块原理319

9.3.1 STM32 I2C模块特点319

9.3.2 I2C寄存器描述320

9.3.3 STM32 I2C模块的通信实现330

9.4 STM32 I2C扩展EEPROM应用335

9.4.1 概述336

9.4.2 管脚描述336

9.4.3 串行EEPROM芯片的寻址336

9.4.4 写操作方式337

9.4.5 读操作方式338

9.4.6 STM32 I2C模块扩展24C64应用339

习题345

第10章 CAN总线原理及其应用346

10.1 CAN总线概述346

10.1.1 CAN总线通信概述346

10.1.2 CAN报文传输348

10.2 STM32的CAN通信模块350

10.2.1 STM32 bxCAN通信模块概述350

10.2.2 控制寄存器描述351

10.2.3 邮箱寄存器描述359

10.2.4 CAN过滤器寄存器363

10.3 STM32 bxCAN模块工作过程364

10.3.1 bxCAN模块工作模式364

10.3.2 bxCAN模块数据发送管理365

10.3.3 bxCAN模块数据接收管理367

10.3.4 bxCAN模块标识符过滤器368

10.3.5 bxCAN模块出错管理370

10.3.6 bxCAN模块位时间特性370

10.3.7 bxCAN通信与出错中断管理371

10.4 STM32 CAN应用实例373

10.4.1 CAN总线硬件设计373

10.4.2 STM32 CAN通信软件示例373

习题378

第11章 STM32的模拟数字转换模块379

11.1 A/D变换的基本原理379

11.1.1 采样380

11.1.2 量化380

11.1.3 编码381

11.2 ADC模块的主要技术指标和选型考虑383

11.2.1 位数383

11.2.2 采样速率383

11.2.3 分辨率383

11.2.4 量化误差384

11.2.5 绝对精度385

11.2.6 相对精度385

11.2.7 偏移误差385

11.2.8 增益误差385

11.2.9 AD线性误差386

11.2.10 微分非线性387

11.2.11 积分非线性387

11.2.12 输入失调电压388

11.2.13 输入失调电流388

11.2.14 输入阻抗388

11.2.15 增益带宽积GBP389

11.2.16 运放的单位增益带宽389

11.2.17 运放建立时间389

11.2.18 压摆率390

11.3 ADC模块的外围软硬件设计390

11.3.1 电压测量与峰值测量391

11.3.2 单路测量与多路测量391

11.3.3 异步测量和同步测量391

11.3.4 关于电压基准391

11.3.5 查询式A/D392

11.3.6 中断式A/D393

11.3.7 Timer驱动的周期采样393

11.3.8 外部触发式启动A/D394

11.3.9 同步A/D395

11.3.10 DMA数据传输395

11.3.11 STM32F103的A/D变换模块395

11.4 STM32F103 ADC寄存器介绍397

11.5 STM32F103的ADC模块的使用405

11.5.1 ADC的使能405

11.5.2 ADC时钟405

11.5.3 通道选择405

11.5.4 转换模式406

11.5.5 模拟看门狗406

11.5.6 扫描模式407

11.5.7 注入通道管理407

11.5.8 间断模式408

11.5.9 校准408

11.5.10 数据对齐408

11.5.11 可编程的通道采样时间409

11.5.12 外部触发转换409

11.5.13 DMA请求410

11.5.14 双ADC模式410

11.5.15 温度传感器/VREFINT内部通道413

11.5.16 中断414

11.6 基于STM32F103的A/D变换示例414

习题417

第12章 STM32支撑开发环境418

12.1 嵌入式系统开发的流程418

12.1.1 嵌入式项目的生命周期418

12.1.2 嵌入式软件的开发环节419

12.1.3 交叉编译与软件调试419

12.2 基于Keil MDK的STM32开发支撑环境421

12.2.1 ARM开发工具421

12.2.2 基于Keil MDK的STM32开发环境422

12.2.3 开发环境硬件连接423

12.2.4 基于Keil的软件开发流程423

12.3 STM32启动文件解析433

12.4 ARTX嵌入式操作系统使用初步440

12.5 嵌入式系统软件开发的高级主题442

12.5.1 形式化规范与证实技术442

12.5.2 设计架构与模式442

12.5.3 低功耗软件设计444

习题444

第13章 基于STM32的多功能综合实验板设计445

13.1 综合实验板介绍445

13.2 MDVSTM32-107实验板模块设计446

13.2.1 电源电路设计446

13.2.2 通用I/O口电路设计447

13.2.3 基于I2C总线扩展447

13.2.4 CAN总线扩展449

13.2.5 USB总线扩展450

13.2.6 智能卡接口电路450

13.2.7 I2S扩展音频电路450

13.2.8 RS232扩展和IrDA扩展453

13.2.9 SD卡扩展电路453

13.2.10 TFT液晶扩展电路453

13.2.11 电机扩展接口454

13.2.12 以太网扩展457

13.2.13 AD电路扩展457

13.2.14 MCU电路设计457

13.2.15 调试电路设计458

13.2.16 扩展接口460

习题462

第14章 基于STM32的电动自行车控制器设计463

14.1 直流无刷电机的基本原理463

14.1.1 直流无刷电机结构463

14.1.2 直流无刷电机工作原理464

14.2 直流无刷电机应用系统设计467

14.2.1 硬件电路实现469

14.2.2 软件电路实现474

习题477

第15章 AMR单相电能表的参考设计478

15.1 需求和目标系统特性478

15.2 硬件设计方案479

15.2.1 层次化硬件架构和接口设计479

15.2.2 测量电路479

15.2.3 MCU和外设电路480

15.2.4 供电电路481

15.2.5 磁保持继电器482

15.3 STPM10测量集成芯片482

15.3.1 STPM10测量芯片介绍482

15.3.2 STPM10与MCU的接口482

15.3.3 使用DMA的SPI读过程486

15.3.4 STPM10校准486

15.4 账户管理487

15.5 目标机的测试与评估488

15.5.1 目标机488

15.5.2 AMR的评估489

习题490

附件A ARM公司系列产品命名规则491

主要参考文献493

热门推荐