新书推荐 | ARM Cortex-M0+嵌入式系统原理及应用——STM32G071架构、软件和硬件集成(微课视频版)

2023-01-11 0 329

原副标题:画册所推荐 | ARM Cortex-M0+PDP控制系统基本原理及应用领域——STM32G071构架、应用软件和硬体应用软件系统(微课音频版)

竹杖芒鞋轻胜马,谁怕?一蓑烟雨任其文。

——唐代 · 白居易《部领 · 莫听穿林打叶声》

新书推荐 | ARM Cortex-M0+嵌入式系统原理及应用——STM32G071架构、软件和硬件集成(微课视频版)

新书推荐 | ARM Cortex-M0+嵌入式系统原理及应用——STM32G071架构、软件和硬件集成(微课视频版)

书目

1章PDP控制系统设计专论

1.1中央处理器和PDP控制系统基本基本原理

1.1.1中央处理器的表述

1.1.2中央处理器构架

1.1.3中央处理器和中央处理器的差别

1.1.4中央处理器的主要就应用领域情景

1.1.5PDP控制系统基本基本原理

1.2 Cortex-M系列产品MCU进行分类和操控性

1.2.1 Cortex-M系列产品处理器IP核

1.2.2 STM32 Cortex-M系列产品MCU产品

1.2.3STM32G0系列产品MCU的结构和功能

第2章应用软件工具下载、安装和应用领域

2.1 STM32CubeMX工具的下载和安装

2.1.1 STM32CubeMX工具的下载

2.1.2 STM32CubeMX工具的安装

2.1.3STM32G0系列产品MCU支持包的安装

2.2 Keil μVision(ARM版本)工具的下载、安装和授权

2.2.1 Keil μVision内嵌编译工具链构架

2.2.2 Keil μVision(ARM版本)工具的下载和安装

2.2.3 Keil μVision(ARM版本)工具的授权

2.3设计实例:LED的驱动和控制

2.3.1生成简单的工程

2.3.2添加设计代码

2.3.3编译和下载设计

第3章Cortex-M0+处理器结构

3.1 Cortex-M0+处理器核和核心外设

3.1.1 Cortex-M0+处理器核

3.1.2控制系统级接口

3.1.3可配置的调试

3.1.4核心外设

3.2 Cortex-M0+处理器的寄存器

3.2.1通用寄存器

3.2.2堆栈指针

3.2.3程序计数器

3.2.4链接寄存器

3.2.5程序状态寄存器

3.2.6可中断重启指令

3.2.7异常屏蔽寄存器

3.2.8优先级屏蔽寄存器

3.2.9控制寄存器

3.3 Cortex-M0+存储器空间结构

3.3.1存储空间映射构架

3.3.2代码区域地址映射

3.3.3SRAM区域地址映射

3.3.4外设区域地址映射

3.3.5PPB地址空间映射

3.3.6SCS地址空间映射

3.3.7控制系统控制和ID寄存器

3.4Cortex-M0+的端及分配

3.5Cortex-M0+处理器异常及处理

3.5.1异常所处的状态

3.5.2异常类型

3.5.3异常优先级

3.5.4向量表

3.5.5异常的进入和返回

3.5.6NVIC中断寄存器集

3.5.7电平和脉冲中断

3.6Cortex-M0+存储器保护单元

3.6.1MPU寄存器

3.6.2MPU访问权限属性

3.6.3更新MPU区域

3.6.4子区域及用法

3.6.5MPU设计技巧和提示

第4章高级中央处理器总线结构

4.1ARM AMBA控制系统总线

4.2 AMBAAPB规范

4.2.1 AMBA APB写传输

4.2.2 AMBA APB读传输

4.2.3 AMBA APB错误响应

4.2.4 AMBA APB操作状态

4.2.5 AMBA3 APB信号

4.3 AMBA AHB规范

4.3.1 AMBA AHB结构

4.3.2 AMBA AHB操作

4.3.3 AMBA AHB传输类型

4.3.4 AMBA AHB猝发操作

4.3.5 AMBA AHB传输控制信号

4.3.6 AMBA AHB地址译码

4.3.7AMBA AHB从设备传输响应

4.3.8AMBA AHB数据总线

4.3.9AMBA AHB传输仲裁

4.3.10AMBA AHB分割传输

4.3.11 AMBA AHB复位

4.3.12 AMBA AHB总线数据宽度

4.3.13 AMBA AHB接口设备

第5章Cortex-M0+处理器指令集

5.1Thumb指令集

5.2 Keil MDK汇编语言指令格式要点

5.2.1汇编语言源代码中的文字

5.2.2汇编语言源代码行的语法

5.2.3汇编语言指令后缀的含义

5.3寄存器说明符的限制规则

5.3.1使用0b1111作为寄存器说明符的规则

5.3.2使用0b1101作为寄存器说明符的规则

5.4寄存器传输指令

5.5存储器加载和保存指令

5.5.1存储器加载指令

5.5.2存储器保存指令

5.6多数据加载和保存指令

5.6.1多数据加载指令

5.6.2多数据保存指令

5.7堆栈访问指令

5.8算术运算指令

5.8.1加法指令

5.8.2减法指令

5.8.3乘法指令

5.8.4比较指令

5.9逻辑操作指令

5.10移位操作指令

5.10.1右移指令

5.10.2左移指令

5.11反序操作指令

5.12扩展操作指令

5.13程序流控制指令

5.14存储器屏障指令

5.15异常相关指令

5.16休眠相关指令

5.17其他指令

第6章Cortex-M0+汇编语言编程基础

6.1汇编语言程序规范、构架和约束

6.1.1统一汇编语言规范

6.1.2ARM汇编语言模块构架

6.1.3标识符的命名规则

6.1.4调用子程序的寄存器使用规则

6.2表达式和操作符

6.2.1变量

6.2.2常量

6.2.3汇编时替换变量

6.2.4标号

6.2.5字符串表达式

6.2.6一元运算符

6.2.7二元运算符

6.2.8运算符的优先级

6.3常用汇编器命令

6.4STM32G0的向量表格式

6.5配置堆和堆栈

6.6设计实例一:汇编语言程序的分析和调试

6.6.1冒泡排序的基本思想

6.6.2冒泡排序算法的设计实现

6.6.3冒泡排序算法的调试

6.7设计实例二:GPIO的驱动和控制

6.7.1 STM32G071的GPIO基本原理

6.7.2所用寄存器的地址和功能

6.7.3GPIO驱动和控制的实现

6.8设计实例三:中断的控制和实现

6.8.1扩展中断和事件控制器基本原理

6.8.2所用寄存器的地址和功能

6.8.3向量表信息

6.8.4应用领域程序的设计

6.8.5程序代码的调试

第7章Cortex-M0+ C语言编程基础

7.1ARM C/C++编译器选项

7.1.1ARM C编译器的优化级别

7.1.2ARM Compiler 5的参数设置选项

7.2常量和变量

7.2.1常量

7.2.2变量

7.3数据类型

7.3.1Volatile关键字

7.3.2整数类型变量的声明和表示

7.3.3字符类型变量的声明和表示

7.3.4浮点类型变量的声明和表示

7.3.5复数类型变量的声明和表示

7.3.6布尔类型变量的声明和表示

7.3.7自表述数据类型的声明和表示

7.3.8变量的存储类型

7.3.9编译器指定的变量属性

7.4运算符

7.4.1赋值运算符

7.4.2算术运算符

7.4.3递增和递减运算符

7.4.4关系运算符

7.4.5逻辑运算符

7.4.6位运算符

7.4.7复合赋值运算符

7.4.8逗号运算符

7.4.9条件运算符

7.4.10强制类型转换符

7.4.11sizeof运算符

7.5描述语句

7.5.1输入和输出语句

7.5.2输入和输出重定向

7.5.3表达式语句

7.5.4条件语句

7.5.5开关语句

7.5.6循环语句

7.5.7返回语句

7.6数组

7.6.1一维数组的表示方法

7.6.2多维数组的表示方法

7.6.3索引数组元素的方法

7.6.4动态输入数组元素的方法

7.6.5矩阵运算算法的实现

7.7指针

7.7.1指针的概念

7.7.2指向指针的指针

7.7.3指针变量输入

7.7.4指针限定符restrict

7.8函数

7.8.1函数声明

7.8.2函数调用

7.8.3内联函数声明和调用

7.8.4递归函数的调用

7.8.5编译器指定的函数属性

7.8.6数组类型传递参数

7.8.7指针类型传递参数

7.8.8指针函数

7.8.9函数指针

7.9预编译指令

7.9.1宏表述

7.9.2文件包含

7.9.3条件编译

7.9.4编译指示

7.9.5其他预编译命令

7.10复杂数据结构

7.10.1结构

7.10.2联合

7.10.3枚举

7.11ARM C microlib库

7.11.1概述

7.11.2microlib和默认C库之间的区别

7.12C语言设计实例一:1602字符型LCD的驱动

7.12.11602字符型LCD的基本原理

7.12.21602字符型LCD的处理流程

7.12.31602字符型LCD和开发板的硬体连接

7.12.4程序代码的设计

7.13C语言设计实例二:中断控制与1602字符型LCD的交互

7.13.1程序代码的设计

7.13.2C语言中断程序的分析

第8章Cortex-M0+ C语言编程进阶

8.1内联汇编的格式和用法

8.2CMSIS应用软件构架

8.2.1引入CMSIS的必要性

8.2.2CMSIS的构架

8.2.3CMSIS的优势

8.2.4CMSIS的编程规则

8.2.5CMSIS应用软件包

8.2.6使用CMSIS访问不同资源

8.3设计实例一:内联汇编的设计与实现

8.3.1创建设计工程

8.3.2添加新的设计文件

8.3.3设计分析

8.4设计实例二:应用软件驱动的设计与实现

8.4.1创建HAL的设计实例

8.4.2创建LL的设计实例

第9章电源、时钟和复位基本原理及应用领域

9.1电源控制系统基本原理及功能

9.1.1电源控制系统框架

9.1.2电源监控

9.1.3低功耗模式

9.2RCC中的时钟管理功能

9.2.1RCC中的时钟源

9.2.2RCC中的时钟树结构

9.3RCC中的复位管理功能

9.3.1电源复位

9.3.2控制系统复位

9.3.3RTC域复位

9.4低功耗设计实例一:从停止模式唤醒MCU的实现

9.4.1设计策略和实现目标

9.4.2程序设计和实现

9.5低功耗设计实例二:定时器唤醒功耗分析

9.6低功耗设计实例三:运行模式和低功耗模式状态的显示

9.6.1第一种设计实现方法

9.6.2第二种设计实现方法

第10章看门狗基本原理及应用领域

10.1独立看门狗基本原理和功能

10.1.1IWDG的结构

10.1.2IWDG的工作基本原理

10.1.3IWDG时钟基准和超时的设置

10.2独立看门狗设计实例:实现与分析

10.2.1生成工程框架

10.2.2添加设计代码

10.2.3设计下载和分析

第11章定时器的基本原理及应用领域

11.1脉冲宽度调制的基本原理

11.2直流风扇的驱动基本原理

11.2.1直流风扇的规范和连线

11.2.2PWM速度控制功能

11.2.3脉冲传感器(转速输出类型)

11.3通用定时器的结构和主要就功能

11.3.1时基单元

11.3.2计数器模式

11.3.3时钟选择

11.3.4输入捕获模式

11.3.5PWM模式

11.3.6单脉冲模式

11.4直流风扇驱动和测速的设计与实现

11.4.1控制系统设计策略

11.4.2控制系统硬体连接

11.4.3应用领域程序的设计

第12章异步和同步串行接口的基本原理及应用领域

12.1低功耗通用异步收发器的基本原理

12.1.1模块结构

12.1.2接口信号

12.1.3数据格式

12.1.4FIFO模式

12.1.5单线半双工模式

12.1.6发送器基本原理

12.1.7接收器基本原理

12.1.8波特率发生器

12.1.9唤醒和中断事件

12.2设计实例:基于LPUART和红外接口的串行通信的实现

12.2.1红外串行通信设计思路

12.2.2串口的通信参数配置规则

12.2.3红外发射和接收电路的设计

12.2.4红外接口的基本原理

12.2.5信号的编码与解码

12.2.6红外通信控制系统的抗干扰设计

12.2.7发送端应用领域程序的设计与实现

12.2.8接收端应用领域程序的设计与实现

第13章人机交互游戏的设计与实现

13.1彩色触摸屏模块的信号表述

13.2 STM32G071 MCU对彩屏的访问控制

13.2.1 STM32G071 MCU提供给彩屏的写控制信号

13.2.2 STM32G071 MCU提供给触摸屏的读控制信号

13.2.3ILI9341读写命令/数据格式

13.3彩屏基本绘图流程

13.4贪吃蛇游戏的设计与实现

13.4.1设计前需要考虑的问题

13.4.2屏幕显示区域的划分

13.4.3图形显示模式的设计

13.4.4字符显示模式的设计

13.4.5外部按键的连接和功能

13.4.6游戏逻辑设计的关键问题

13.4.7寻径算法分析

13.4.8设计优化

购书链接

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务