-
>
湖南省志(1978-2002)?铁路志
-
>
公路车宝典(ZINN的公路车维修与保养秘籍)
-
>
晶体管电路设计(下)
-
>
基于个性化设计策略的智能交通系统关键技术
-
>
德国克虏伯与晚清火:贸易与仿制模式下的技术转移
-
>
花样百出:贵州少数民族图案填色
-
>
识木:全球220种木材图鉴
嵌入式系统设计权威指南 基于STM32G071和Arm Cortex-M0+的系统集成 版权信息
- ISBN:9787121484339
- 条形码:9787121484339 ; 978-7-121-48433-9
- 装帧:平塑
- 册数:暂无
- 重量:暂无
- 所属分类:>
嵌入式系统设计权威指南 基于STM32G071和Arm Cortex-M0+的系统集成 内容简介
本书以意法半导体公司新推出的基于Arm Cortex-M0+的STM32G071 MCU为硬件平台,以意法半导体公司的STM32CubeMX和Arm公司的Keil μVision(Arm版本)集成开发环境(以下简称Keil)为软件平台,以Cortex-M0+处理器结构、高级微控制总线结构、Cortex-M0+处理器指令集和应用、C语言应用开发、外设驱动与控制,以及RT-Thread操作系统为主线,由浅入深、由易到难地系统介绍了基于STM32G071 MCU的32位嵌入式系统开发流程和实现方法。
本书侧重于对基于Arm Cortex-M0+ MCU的32位嵌入式系统设计应用的讲解,通过典型设计实例说明将嵌入式系统设计应用于不同的应用场景的方法,使得所设计的嵌入式系统在满足应用场景要求的条件下实现成本、功耗和性能的*佳平衡。
本书可作为大学本科和高等职业教育嵌入式系统相关课程的教材,也可作为意法半导体公司举办的各种嵌入式系统开发和设计竞赛的参考用书,还可作为从事基于意法半导体公司产品开发嵌入式系统应用的工程师的参考用书。
嵌入式系统设计权威指南 基于STM32G071和Arm Cortex-M0+的系统集成 目录
第1章 软件工具的下载、安装和应用 1
1.1 STM32CubeMX工具的下载和安装 1
1.1.1 STM32CubeMX工具的下载 1
1.1.2 STM32CubeMX工具的安装 3
1.1.3 STM32G0系列MCU支持包的安装 4
1.2 Keil ?Vision(Arm版本)工具的下载、安装和授权 5
1.2.1 Keil ?Vision内嵌编译工具链架构 6
1.2.2 Keil ?Vision(Arm版本)工具的下载和安装 6
1.2.3 Keil ?Vision(Arm版本)工具的授权 9
1.3 设计 11
实例:LED的驱动和控制 11
1.3.1 生成简单的工程 11
1.3.2 添加设计代码 14
1.3.3 编译和下载设计 16
第2章 Cortex-M0 处理器结构 18
2.1 Cortex-M0 处理器和核心外设 18
2.1.1 Cortex-M0 处理器核 19
2.1.2 系统级接口 21
2.1.3 可配置的调试 21
2.1.4 核心外设 22
2.2 Cortex-M0 处理器的寄存器 22
2.2.1 通用寄存器 22
2.2.2 堆栈指针 23
2.2.3 程序计数器 23
2.2.4 链接寄存器 24
2.2.5 程序状态寄存器 24
2.2.6 可中断重启指令 27
2.2.7 异常屏蔽寄存器 27
2.2.8 优先级屏蔽寄存器 27
2.2.9 控制寄存器 27
2.3 Cortex-M0 处理器的存储空间结构 28
2.3.1 存储空间映射 28
2.3.2 代码区域地址映射 30
2.3.3 SRAM区域地址映射 31
2.3.4 外设区域地址映射 32
2.3.5 PPB地址空间映射 34
2.3.6 SCS地址空间映射 35
2.3.7 系统控制和ID寄存器 36
2.4 Cortex-M0 处理器的端及分配 40
2.5 Cortex-M0 处理器的异常及处理 41
2.5.1 异常所处的状态 41
2.5.2 异常类型 41
2.5.3 异常优先级 42
2.5.4 向量表 43
2.5.5 异常的进入和返回 44
2.5.6 NVIC中的中断寄存器集 46
2.5.7 电平和脉冲中断 48
2.6 Cortex-M0 处理器的存储器保护单元 49
2.6.1 MPU寄存器 50
2.6.2 MPU访问权限属性 54
2.6.3 更新MPU区域 55
2.6.4 子区域及用法 55
2.6.5 MPU设计技巧和提示 56
第3章 高级微控制器总线结构 57
3.1 Arm AMBA系统总线 57
3.2 AMBA APB规范 58
3.2.1 AMBA APB写传输 58
3.2.2 AMBA APB读传输 59
3.2.3 AMBA APB错误响应 60
3.2.4 AMBA APB操作流程 61
3.2.5 AMBA3 APB信号 62
3.3 AMBA AHB规范 62
3.3.1 AMBA AHB结构 62
3.3.2 AMBA AHB操作 63
3.3.3 AMBA AHB传输类型 66
3.3.4 AMBA AHB猝发操作 67
3.3.5 AMBA AHB传输控制信号 71
3.3.6 AMBA AHB地址译码 72
3.3.7 AMBA AHB从设备传输响应 72
3.3.8 AMBA AHB数据总线 75
3.3.9 AMBA AHB传输仲裁 77
3.3.10 AMBA AHB分割传输 82
3.3.11 AMBA AHB复位 84
3.3.12 AMBA AHB总线数据宽度 84
3.3.13 AMBA AHB接口设备 86
第4章 Cortex-M0 处理器指令集和应用 88
4.1 Thumb指令集 88
4.2 Keil MDK汇编语言指令格式要点 89
4.2.1 汇编语言源代码中的文字 89
4.2.2 汇编语言源代码行的语法 89
4.2.3 汇编语言指令后缀的含义 91
4.3 寄存器说明符的限制规则 91
4.3.1 使用0b1111作为寄存器说明符的规则 91
4.3.2 使用0b1101作为寄存器说明符的规则 92
4.4 寄存器传输指令 92
4.5 存储器加载和保存指令 94
4.5.1 存储器加载指令 94
4.5.2 存储器保存指令 98
4.6 多数据加载和保存指令 101
4.6.1 多数据加载指令 101
4.6.2 多数据保存指令 102
4.7 堆栈访问指令 103
4.8 算术运算指令 104
4.8.1 加法指令 104
4.8.2 减法指令 107
4.8.3 乘法指令 108
4.8.4 比较指令 109
4.9 逻辑操作指令 110
4.10 移位操作指令 112
4.10.1 右移指令 112
4.10.2 左移指令 114
4.11 反序操作指令 115
4.12 扩展操作指令 116
4.13 程序流控制指令 117
4.14 存储器屏障指令 120
4.15 异常相关指令 121
4.16 休眠相关指令 121
4.17 其他指令 122
4.18 STM32G0的向量表格式 123
4.19 配置堆和堆栈 124
4.20 设计实例一:汇编语言程序的分析和调试 125
4.20.1 冒泡排序算法的基本思想 125
4.20.2 冒泡排序算法的设计实现 126
4.20.3 冒泡排序算法的调试 128
4.21 设计实例二:GPIO的驱动和控制 130
4.21.1 STM32G071的GPIO原理 130
4.21.2 所用寄存器的地址和功能 132
4.21.3 GPIO驱动和控制的实现 134
4.22 设计实例三:中断的控制和实现 135
4.22.1 扩展中断和事件控制器(EXTI)原理 136
4.22.2 所用寄存器的地址和功能 141
4.22.3 向量表信息 145
4.22.4 应用程序的设计 147
4.22.5 程序代码的调试 149
第5章 Cortex-M0 C语言应用开发 151
5.1 Arm C/C 编译器选项 151
5.1.1 Arm编译器的优化级别 151
5.1.2 Arm Compiler 5的参数设置选项 155
5.1.3 Arm Compiler 6的参数设置选项 157
5.2 CMSIS软件架构 159
5.2.1 引入CMSIS的必要性 160
5.2.2 CMSIS的架构 160
5.2.3 CMSIS的优势 161
5.2.4 CMSIS的编程规则 161
5.2.5 CMSIS软件包 162
5.2.6 使用CMSIS访问不同资源 163
5.3 C语言设计实例一:输入/输出重定向的实现 164
5.3.1 定制Microlib输入/输出函数 164
5.3.2 输入/输出函数重定向的实现原理 165
5.3.3 输入/输出函数重定向的具体实现 166
5.4 C语言设计实例二:1602字符型LCD的驱动 171
5.4.1 1602字符型LCD的原理 171
5.4.2 1602字符型LCD的处理流程 174
5.4.3 1602字符型LCD和开发板的硬件连接 175
5.4.4 程序代码的设计 176
5.5 C语言设计实例三:中断控制与1602字符型LCD的交互 178
5.5.1 程序代码的设计 178
5.5.2 C语言中断程序的分析 179
5.6 C语言设计实例四:软件驱动的设计与实现 181
5.6.1 创建HAL的设计实例 181
5.6.2 创建LL的设计实例 183
第6章 电源、时钟和复位的原理及应用 186
6.1 电源系统的原理及功能 186
6.1.1 电源系统框架 186
6.1.2 电源监控 188
6.1.3 低功耗模式 190
6.2 RCC中的时钟管理功能 194
6.2.1 RCC中的时钟源 194
6.2.2 RCC中的时钟树结构 194
6.3 RCC中的复位管理功能 199
6.3.1 电源复位 199
6.3.2 系统复位 199
6.3.3 RTC域复位 200
6.4 低功耗设计实例一:从停止模式唤醒MCU的实现 201
6.4.1 设计策略和实现目标 201
6.4.2 程序设计和实现 201
6.5 低功耗设计实例二:定时器唤醒功耗分析 206
6.6 低功耗设计实例三:运行模式和低功耗模式状态的显示 210
6.6.1 **种设计实现方法 210
6.6.2 第二种设计实现方法 212
第7章 看门狗的原理和应用 214
7.1 独立看门狗的原理和功能 214
7.1.1 IWDG的结构 214
7.1.2 IWDG的工作原理 215
7.1.3 IWDG时钟基准和超时的设置 216
7.2 系统窗口看门狗的原理和功能 216
7.2.1 WWDG的结构 216
7.2.2 WWDG的工作原理 217
7.2.3 WWDG时钟基准和超时值的设置 217
7.2.4 WWDG中断 218
7.3 独立看门狗设计实例:实现与分析 218
7.3.1 生成工程框架 218
7.3.2 添加设计代码 220
7.3.3 设计下载和分析 222
第8章 步进电机的驱动和控制 223
8.1 低功耗定时器的结构及功能 223
8.1.1 LPTIM的结构 223
8.1.2 LPTIM的功能 228
8.2 高级控制定时器的结构及功能 229
8.2.1 TIM1的结构 229
8.2.2 TIM1的功能 230
8.3 设计实例:步进电机的驱动和信号测量 265
8.3.1 步进电机的设计原理 265
8.3.2 步进电机的驱动电路 266
8.3.3 霍尔传感器的测速原理 267
8.3.4 系统硬件连接 268
8.3.5 在STM32CubeMX中配置参数 268
8.3.6 在Keil ?Vision中添加设计代码 271
8.3.7 设计处理和验证 274
第9章 直流电机的驱动和控制 276
9.1 脉冲宽度调制的原理 276
9.2 直流风扇的驱动原理 276
9.2.1 直流风扇的规范和连线 276
9.2.2 PWM速度控制功能 277
9.2.3 脉冲传感器(转速输出类型) 278
9.3 通用定时器的原理 278
9.3.1 TIM2/TIM3/TIM4的主要功能 279
9.3.2 TIM14的主要功能 280
9.3.3 TIM15的主要功能 281
9.3.4 TIM16/TIM17的主要功能 282
9.4 直流风扇驱动和测速的设计与实现 283
9.4.1 系统设计策略 283
9.4.2 系统硬件连接 284
9.4.3 应用程序的设计 285
9.4.4 设计处理和下载 291
第10章 红外串口通信的设计和实现 292
10.1 低功耗通用异步收发器的原理 292
10.1.1 模块结构 292
10.1.2 接口信号 294
10.1.3 数据格式 294
10.1.4 FIFO模式 296
10.1.5 单线半双工模式 296
10.1.6 多处理器通信 296
10.1.7 发送器原理 298
10.1.8 接收器原理 298
10.1.9 波特率发生器 299
10.1.10 唤醒和中断事件 300
10.2 通用同步异步收发器的原理 301
10.2.1 主要功能 301
10.2.2 接收器过采样技术 302
10.2.3 同步模式 303
10.2.4 ISO/IEC 7816模式 304
10.2.5 串行红外通信 305
10.2.6 自动波特率检测 306
10.2.7 接收器超时 306
10.2.8 唤醒和中断事件 306
10.3 设计实例:基于LPUART和红外接口的串行通信的实现 307
10.3.1 红外串行通信设计思路 307
10.3.2 串口的通信参数配置规则 308
10.3.3 红外发射电路和红外接收电路的设计 309
10.3.4 红1
嵌入式系统设计权威指南 基于STM32G071和Arm Cortex-M0+的系统集成 作者简介
何宾,知名的嵌入式和EDA技术专家,长期从事电子设计自动化方面的教学和科研工作,与全球多家知名的半导体厂商和EDA工具厂商密切合作。已经出版电子信息方面的著作共40余部,内容涵盖电路仿真、电路设计、FPGA、数字信号处理、单片机、嵌入式系统等。典型的代表作有《模拟电子系统设计指南(基础篇):从半导体、分立元件到TI集成电路的分析与实现》、《模拟电子系统设计指南(实践篇):从半导体、分立元件到TI集成电路的分析与实现》、《Xilinx Zynq-7000嵌入式系统设计与实现-基于ARM Cortex-A9双核处理器和Vivado的设计方法》、《Altium Designer17一体化设计标准教程-从仿真原理和PCB设计到单片机系统》、《STC8系列单片机开发指南:面向处理器、程序设计和操作系统的分析与应用》等。
- >
经典常谈
经典常谈
¥16.3¥39.8 - >
人文阅读与收藏·良友文学丛书:一天的工作
人文阅读与收藏·良友文学丛书:一天的工作
¥14.7¥45.8 - >
唐代进士录
唐代进士录
¥15.1¥39.8 - >
巴金-再思录
巴金-再思录
¥14.7¥46.0 - >
龙榆生:词曲概论/大家小书
龙榆生:词曲概论/大家小书
¥7.7¥24.0 - >
小考拉的故事-套装共3册
小考拉的故事-套装共3册
¥36.7¥68.0 - >
有舍有得是人生
有舍有得是人生
¥20.1¥45.0 - >
伊索寓言-世界文学名著典藏-全译本
伊索寓言-世界文学名著典藏-全译本
¥9.3¥19.0
-
黑科技驱动世界的100项技术
¥21.9¥69.8 -
黑科技:驱动世界的100项技术(八品)
¥21.9¥69.8 -
指火控弹道与射击诸元理论
¥38.7¥49 -
智能照明工程手册
¥29.9¥49.8 -
光电直读光谱分析技术与应用
¥38.7¥49 -
服务型制造
¥76.3¥109