《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》[53M]百度网盘|pdf下载|亲测有效
《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》[53M]百度网盘|pdf下载|亲测有效
《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》[53M]百度网盘|pdf下载|亲测有效
《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》[53M]百度网盘|pdf下载|亲测有效

手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发 pdf下载

isbn:9787512440814
出版社 北京航空航天大学出版社
出版年 2023-06-01
页数 201页
ISBN 9787512440814
装帧 精装
评分 8.6(豆瓣)
限时特惠 00:00:00
活动结束后恢复原价
纸质书参考价 ¥23
电子版限时价 ¥5.99 省 18 元

选择版本

不满意全额退款
发货失败双倍赔偿
邮箱即时发送

内容简介

本篇主要提供手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

产品特色

编辑推荐

1. 入门简单。只需要有C语言基础。

2. 作者专业。作者毕业于清华大学,任教于清华大学,是清华大学本科生的“嵌入式系统实践”“计算机原理与应用”等课程的主讲老师。

3. 平台前沿。硬件平台为STM32G4系列单片机(购买方便,价格便宜),软件平台为STM32CubeIDE(一站式集成开发环境),均为未来主流平台。

4. 内容实用。从STM32CubeIDE软件安装到工程构建,从HAL库常用函数到单片机各功能模块的使用,均基于实例进行了详细讲解。还引入Simulink看波形,让学习者在没有示波器的情况下,也能完成DAC及PWM等波形显示的实验,非常适合线上或线上线下融合的教学模式。

5. 形式友好。本书无枯燥原理和寄存器结构的介绍,处处围绕例程展开,在例程中适当补充原理知识,让初学者迅速上手,让硬件“跑”起来。通过对例程的修改和功能拓展,让读者逐步深入了解功能模块的特性。

6. 配套丰富。附赠各章节案例的源代码或电子版数据,以及部分习题的参考代码。还可以关注微信公众号“GDLAB“,搜索本书所涉及的电子版资料及配套扩展电路板的资料。


内容简介

  《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》的主要内容来自清华大学本科生的“嵌入式系统实践”“计算机原理与应用”等课程的实验讲义,是针对STM32单片机初学者的入门教材,从STM32CubeIDE软件安装到工程构建,从HAL库常用函数到单片机各功能模块的使用,均基于实例进行了详细讲解。
  与市面上大多数数据手册式教材完全不同,该书没有烦琐的原理和枯燥的寄存器结构,而是处处围绕例程展开,仅在案例中适当补充基本的原理知识。通过这种方式,让具备C语言编程基础的初学者迅速上手,快速地让硬件“跑”起来;然后,通过对例程的修改和功能拓展,逐步深入了解功能模块的特性。书中还引入了Sim ulink来看波形,这类似于一个DIY的示波器,让学习者在无示波器的情况下,完成DAC及PWM等波形显示的实验。
  《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》适合STM32单片机初学者作为入门和进阶教材,也可作为电子信息、电气工程及自动化等专业的本科生、研究生以及电子工程师的参考用书。

内页插图

目录

第1章 STM32CubeIDE的使用
1.1 启动STM32CubeIED
1.2 建立新工程
1.2.1 建立STM32工程
1.2.2 选择目标器件
1.2.3 设置工程参数
1.2.4 硬件功能模块配置
1.2.5 启动代码生成功能
1.3 修改代码
1.3.1 代码中注释对及其作用
1.3.2 初始化函数
1.3.3 添加用户代码
1.3.4 如何查找所需要的HAL库函数
1.3.5 修改后的代码
1.4 编译与下载
1.4.1 编译工程
1.4.2 将NUCLEO-G474RE板连接至计算机
1.4.3 调试参数配置
1.4.4 更新ST-Link下载器固件
1.4.5 下载并运行程序
习题

第2章 点亮发光二极管
2.1 用GPIO控制多路发光二极管
2.1.1 建立新工程
2.1.2 代码修改
2.1.3 代码调试
2.1.4 库函数分析
2.1.5 主循环中代码修改
2.2 流水灯控制
2.2.1 顺次点亮发光二极管
2.2.2 改变流水灯的状态
2.2.3 进一步改变流水灯的状态
习题

第3章 输入
3.1 GPIO作为输入
3.1.1 NUCLEO-G474RE板上的按键电路
3.1.2 建立新工程
3.1.3 代码分析
3.1.4 代码修改
3.2 完善与扩展
3.2.1 改变控制策略
3.2.2 进一步修改控制策略
3.2.3 控制蜂鸣器
3.2.4 用子程序方式实现上述功能
习 题

第4章 中断
4.1 GPIO外部中断
4.1.1 建立新工程
4.1.2 代码修改
4.2 用按键控制发光二极管和蜂鸣器
4.2.1 电路扩展板
4.2.2 代码修改
习 题

第5章 串行通信
5.1 用中断方式实现串行数据接收
5.1.1 建立新工程
5.1.2 代码修改
5.1.3 下载并查看结果
5.2 串口数据发送
5.2.1 实现串口发送的库函数
5.2.2 修改回调函数的调用模式
5.3 串口相关库函数与printf函数
5.3.1 串口相关库函数
5.3.2 printf函数
习 题

第6章 定时器
6.1 STM32G4系列MCU的定时器
6.2 定时器中断
6.2.1 建立新工程
6.2.2 代码修改
6.3 输出PWM波形
……
第7章 ADC
第8章 DAC
第9章 构建包含ADC和DAC的测量系统
附录 扩展板原理图
参考文献

前言/序言

  1.编写缘起
  笔者因工作上的需要,学习和使用嵌入式系统已有多年,在这期间,用过多个厂家多种类型的MCU(MicroController Unit,微控制器)和DSP(Digital Signal Processor,数字信号处理器)。使用中遇到问题,一开始会去查阅相关的书籍,后来更多地是从网上找资料,一般来说,芯片厂商提供的资料比较全面。譬如关于芯片中各模块的说明文档,芯片厂商提供的参考手册是最权威的。不过,动辄几千页的手册,很少有人会从头到尾“啃”一遍。不是因为它不重要,而是没有必要,尤其是对于初学者。如此一来,就应运而生了各类书籍和教程,其中相当一部分是针对初学者的,内容讲得很详细,一个模块接着一个模块,并且包含大量寄存器结构的内容,最终也成为一本厚厚的手册。
  学习嵌入式系统,迅速上手的关键是,尽快让硬件“跑”起来;通过对例程的修改和功能的扩展,并结合芯片参考手册,逐步了解所用模块的特性。一定量的练习之后,就会积累若干的经验。因此,笔者认为一本给初学者用的教程,内容不应面面俱到,最好能围绕例程展开,在案例中适当补充基本的原理知识。
  随着技术的发展,一些嵌入式芯片功能越来越强大,内部结构也变得相当复杂,面对众多的寄存器,传统的编程控制方式就显得相当烦琐。为了简化硬件模块配置方式、降低开发难度、缩短开发周期,针对芯片各功能模块,芯片厂商提供了大量的库函数,用户可以采用调用库函数的方式实现对硬件的操作。通常情况下,以这种方式编程,使用者,特别是初学者,可以不用了解太多的寄存器细节,只需熟悉库函数的调用格式和一些常用的库函数就可以实现对硬件的操作与控制。
  意法半导体(STMicroelectronics,简称ST)公司的STM32系列MCU采用的是Arm(Advanced RISC Machine,一款RISC微处理器)核,并且具有丰富的外围功能模块。市场上介绍该系列MCU的书籍琳琅满目,从早期的寄存器编程,到库函数编程,再到现今流行的固件库编程。库函数由ST公司提供,用户结合第三方的集成开发环境进行开发。ST公司于2019年推出了自己的集成开发环境STM32CubeIDE,采用的是Eclipse架构,很好地融合了Cube固件库。相比于第三方开发环境,STM32CubeIDE可以说是一站式集成开发环境。该软件较新,目前还缺乏相应的使用教程,编写本书的目的,是为使用该软件进行开发的初学者提供一本简易的参考教程。
  2.本书特色
  本书的主要特色如下:
  ①本书硬件平台选用的是STM32G4系列单片机(板子为ST公司的NUCLEO开发板,自带仿真器,购买渠道多且价格便宜),于2019年推出,是ST公司未来主推的主流产品;目前尚缺乏针对G4的教材。
  ②本书软件平台采用ST公司的STM32CubeIDE,于2019年推出;相比于第三方开发环境,STM32CubeIDE可以说是一站式集成开发环境。由于该软件较新,目前还缺乏相应的使用教材。
  ③本书中完整地给出了在硬件平台上DIY“示波器”的全过程(采用Simulink),学习者在无示波器的情况下也可方便实现需要波形显示的实验(DAC、PWM及信号处理等)。这种方式非常适合线上或线上与线下融合的教学模式,也适合嵌入式电子爱好者自学。
  本书选用的硬件、软件平台新且为未来主流;本书以实例展开,融入了若干新元素,并从实战出发,避免了传统教科书模式的枯燥与烦冗,更适合初学者入门进阶。
  3.章节内容
  本书的主要内容安排如下:
  第1章为STM32CubeIDE的使用,通过点亮一个发光二极管的实例,介绍如何从零开始用CubeIDE建立一个STM32工程,以此来熟悉CubeIDE开发环境。第2章是在第1章基础上实现对8个发光二极管的流水灯控制,从而进一步熟悉软件、硬件开发平台。第3章介绍GPIO作为输入,控制发光二极管和蜂鸣器。第4章引入外部中断,用中断方式实现按键识别以及对发光二极管和蜂鸣器的控制。通过这4章,应该能基本掌握使用CubeIDE的开发过程。
  第5~9章分别介绍串行通信、定时器、ADC和DAC的使用。第5章介绍串口的中断接收和发送。第6章介绍如何使用定时器的中断、PWM波形的输出和输入捕捉。第7章介绍ADC模块的使用,除了中断方式外,还介绍了用DMA实现ADC采样值到串口的数据传送。在串口接收中,引入了Simulink显示波形,这类似于一个DIY的示波器。第8章介绍用DAC模块产生模拟信号的例子。第9章构建包含ADC和DAC的测量系统,并通过串口将ADC采样数据送出,在计算机上用Simulink显示波形。
  4.使用方法
  学习嵌入式系统,案例学习和随后的大量自主练习是关键。本书从第1章开始,就以案例展开。读者拿到本书,准备好基本的硬件、软件环境后,即可开始学习之旅。从点亮发光二极管开始,到GPIO控制、中断、串口通信、定时器、ADC、DAC和DMA等功能模块,越到后面,用到的功能模块就越多,可以说是层层深入;到最后,基本是对所有主要功能模块的综合使用。用熟、用好这些功能模块,离不开大量的练习和针对软件、硬件的“实操”。本书各章节均设置了若干练习题目,有些题目有一定的挑战度,希望读者能在完成各章案例学习的基础上逐一完成这些习题。
  在各章节的案例中,大都以新建工程的方式展开,并列出了相对完整的硬件配置步骤。有些地方看似重复,实则是考虑到读者(尤其是初学者)参考时的方便性。此外,有些章节(如第2~4章)还用到了扩展电路板,主要是用到了其上的蜂鸣器、多个按键和多个发光二极管。在学习中,此扩展电路板非必需,有需要的读者可以参考相关章节或附录中给出的电路原理图,自行制作。
  5.提供资源
  为方便读者学习,本书还提供了各章节案例的代码或电子版数据,以及部分习题的参考代码。读者可以登录北京航空航天大学出版社的官方网站,选择“下载专区”一“随书资料”下载本书配套的代码和习题答案;还可以关注公众号“北航科技图书”,回复“4081”获取;此外,还可以关注微信公众号“GDLAB”,搜索本书所涉及的电子版资料以及配套扩展电路板的资料。
  感谢清华大学电机系教学委员会对本书编写工作的支持,感谢朱小梅老师和微机教研组全体同事的帮助。最后,还要特别感谢北京航空航天大学出版社陈守平老师的指导和建议。
  由于编者水平有限,错误之处在所难免,恳请读者批评指正,相关建议可以发送至邮箱:wpeng@ mail. tsinghua.edu.cn.

产品特色

编辑推荐

1. 入门简单。只需要有C语言基础。

2. 作者专业。作者毕业于清华大学,任教于清华大学,是清华大学本科生的“嵌入式系统实践”“计算机原理与应用”等课程的主讲老师。

3. 平台前沿。硬件平台为STM32G4系列单片机(购买方便,价格便宜),软件平台为STM32CubeIDE(一站式集成开发环境),均为未来主流平台。

4. 内容实用。从STM32CubeIDE软件安装到工程构建,从HAL库常用函数到单片机各功能模块的使用,均基于实例进行了详细讲解。还引入Simulink看波形,让学习者在没有示波器的情况下,也能完成DAC及PWM等波形显示的实验,非常适合线上或线上线下融合的教学模式。

5. 形式友好。本书无枯燥原理和寄存器结构的介绍,处处围绕例程展开,在例程中适当补充原理知识,让初学者迅速上手,让硬件“跑”起来。通过对例程的修改和功能拓展,让读者逐步深入了解功能模块的特性。

6. 配套丰富。附赠各章节案例的源代码或电子版数据,以及部分习题的参考代码。还可以关注微信公众号“GDLAB“,搜索本书所涉及的电子版资料及配套扩展电路板的资料。


内容简介

  《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》的主要内容来自清华大学本科生的“嵌入式系统实践”“计算机原理与应用”等课程的实验讲义,是针对STM32单片机初学者的入门教材,从STM32CubeIDE软件安装到工程构建,从HAL库常用函数到单片机各功能模块的使用,均基于实例进行了详细讲解。
  与市面上大多数数据手册式教材完全不同,该书没有烦琐的原理和枯燥的寄存器结构,而是处处围绕例程展开,仅在案例中适当补充基本的原理知识。通过这种方式,让具备C语言编程基础的初学者迅速上手,快速地让硬件“跑”起来;然后,通过对例程的修改和功能拓展,逐步深入了解功能模块的特性。书中还引入了Sim ulink来看波形,这类似于一个DIY的示波器,让学习者在无示波器的情况下,完成DAC及PWM等波形显示的实验。
  《手把手教你用STM32CubeIDE——基于HAL库的嵌入式开发》适合STM32单片机初学者作为入门和进阶教材,也可作为电子信息、电气工程及自动化等专业的本科生、研究生以及电子工程师的参考用书。

内页插图

目录

第1章 STM32CubeIDE的使用
1.1 启动STM32CubeIED
1.2 建立新工程
1.2.1 建立STM32工程
1.2.2 选择目标器件
1.2.3 设置工程参数
1.2.4 硬件功能模块配置
1.2.5 启动代码生成功能
1.3 修改代码
1.3.1 代码中注释对及其作用
1.3.2 初始化函数
1.3.3 添加用户代码
1.3.4 如何查找所需要的HAL库函数
1.3.5 修改后的代码
1.4 编译与下载
1.4.1 编译工程
1.4.2 将NUCLEO-G474RE板连接至计算机
1.4.3 调试参数配置
1.4.4 更新ST-Link下载器固件
1.4.5 下载并运行程序
习题

第2章 点亮发光二极管
2.1 用GPIO控制多路发光二极管
2.1.1 建立新工程
2.1.2 代码修改
2.1.3 代码调试
2.1.4 库函数分析
2.1.5 主循环中代码修改
2.2 流水灯控制
2.2.1 顺次点亮发光二极管
2.2.2 改变流水灯的状态
2.2.3 进一步改变流水灯的状态
习题

第3章 输入
3.1 GPIO作为输入
3.1.1 NUCLEO-G474RE板上的按键电路
3.1.2 建立新工程
3.1.3 代码分析
3.1.4 代码修改
3.2 完善与扩展
3.2.1 改变控制策略
3.2.2 进一步修改控制策略
3.2.3 控制蜂鸣器
3.2.4 用子程序方式实现上述功能
习 题

第4章 中断
4.1 GPIO外部中断
4.1.1 建立新工程
4.1.2 代码修改
4.2 用按键控制发光二极管和蜂鸣器
4.2.1 电路扩展板
4.2.2 代码修改
习 题

第5章 串行通信
5.1 用中断方式实现串行数据接收
5.1.1 建立新工程
5.1.2 代码修改
5.1.3 下载并查看结果
5.2 串口数据发送
5.2.1 实现串口发送的库函数
5.2.2 修改回调函数的调用模式
5.3 串口相关库函数与printf函数
5.3.1 串口相关库函数
5.3.2 printf函数
习 题

第6章 定时器
6.1 STM32G4系列MCU的定时器
6.2 定时器中断
6.2.1 建立新工程
6.2.2 代码修改
6.3 输出PWM波形
……
第7章 ADC
第8章 DAC
第9章 构建包含ADC和DAC的测量系统
附录 扩展板原理图
参考文献

前言/序言

  1.编写缘起
  笔者因工作上的需要,学习和使用嵌入式系统已有多年,在这期间,用过多个厂家多种类型的MCU(MicroController Unit,微控制器)和DSP(Digital Signal Processor,数字信号处理器)。使用中遇到问题,一开始会去查阅相关的书籍,后来更多地是从网上找资料,一般来说,芯片厂商提供的资料比较全面。譬如关于芯片中各模块的说明文档,芯片厂商提供的参考手册是最权威的。不过,动辄几千页的手册,很少有人会从头到尾“啃”一遍。不是因为它不重要,而是没有必要,尤其是对于初学者。如此一来,就应运而生了各类书籍和教程,其中相当一部分是针对初学者的,内容讲得很详细,一个模块接着一个模块,并且包含大量寄存器结构的内容,最终也成为一本厚厚的手册。
  学习嵌入式系统,迅速上手的关键是,尽快让硬件“跑”起来;通过对例程的修改和功能的扩展,并结合芯片参考手册,逐步了解所用模块的特性。一定量的练习之后,就会积累若干的经验。因此,笔者认为一本给初学者用的教程,内容不应面面俱到,最好能围绕例程展开,在案例中适当补充基本的原理知识。
  随着技术的发展,一些嵌入式芯片功能越来越强大,内部结构也变得相当复杂,面对众多的寄存器,传统的编程控制方式就显得相当烦琐。为了简化硬件模块配置方式、降低开发难度、缩短开发周期,针对芯片各功能模块,芯片厂商提供了大量的库函数,用户可以采用调用库函数的方式实现对硬件的操作。通常情况下,以这种方式编程,使用者,特别是初学者,可以不用了解太多的寄存器细节,只需熟悉库函数的调用格式和一些常用的库函数就可以实现对硬件的操作与控制。
  意法半导体(STMicroelectronics,简称ST)公司的STM32系列MCU采用的是Arm(Advanced RISC Machine,一款RISC微处理器)核,并且具有丰富的外围功能模块。市场上介绍该系列MCU的书籍琳琅满目,从早期的寄存器编程,到库函数编程,再到现今流行的固件库编程。库函数由ST公司提供,用户结合第三方的集成开发环境进行开发。ST公司于2019年推出了自己的集成开发环境STM32CubeIDE,采用的是Eclipse架构,很好地融合了Cube固件库。相比于第三方开发环境,STM32CubeIDE可以说是一站式集成开发环境。该软件较新,目前还缺乏相应的使用教程,编写本书的目的,是为使用该软件进行开发的初学者提供一本简易的参考教程。
  2.本书特色
  本书的主要特色如下:
  ①本书硬件平台选用的是STM32G4系列单片机(板子为ST公司的NUCLEO开发板,自带仿真器,购买渠道多且价格便宜),于2019年推出,是ST公司未来主推的主流产品;目前尚缺乏针对G4的教材。
  ②本书软件平台采用ST公司的STM32CubeIDE,于2019年推出;相比于第三方开发环境,STM32CubeIDE可以说是一站式集成开发环境。由于该软件较新,目前还缺乏相应的使用教材。
  ③本书中完整地给出了在硬件平台上DIY“示波器”的全过程(采用Simulink),学习者在无示波器的情况下也可方便实现需要波形显示的实验(DAC、PWM及信号处理等)。这种方式非常适合线上或线上与线下融合的教学模式,也适合嵌入式电子爱好者自学。
  本书选用的硬件、软件平台新且为未来主流;本书以实例展开,融入了若干新元素,并从实战出发,避免了传统教科书模式的枯燥与烦冗,更适合初学者入门进阶。
  3.章节内容
  本书的主要内容安排如下:
  第1章为STM32CubeIDE的使用,通过点亮一个发光二极管的实例,介绍如何从零开始用CubeIDE建立一个STM32工程,以此来熟悉CubeIDE开发环境。第2章是在第1章基础上实现对8个发光二极管的流水灯控制,从而进一步熟悉软件、硬件开发平台。第3章介绍GPIO作为输入,控制发光二极管和蜂鸣器。第4章引入外部中断,用中断方式实现按键识别以及对发光二极管和蜂鸣器的控制。通过这4章,应该能基本掌握使用CubeIDE的开发过程。
  第5~9章分别介绍串行通信、定时器、ADC和DAC的使用。第5章介绍串口的中断接收和发送。第6章介绍如何使用定时器的中断、PWM波形的输出和输入捕捉。第7章介绍ADC模块的使用,除了中断方式外,还介绍了用DMA实现ADC采样值到串口的数据传送。在串口接收中,引入了Simulink显示波形,这类似于一个DIY的示波器。第8章介绍用DAC模块产生模拟信号的例子。第9章构建包含ADC和DAC的测量系统,并通过串口将ADC采样数据送出,在计算机上用Simulink显示波形。
  4.使用方法
  学习嵌入式系统,案例学习和随后的大量自主练习是关键。本书从第1章开始,就以案例展开。读者拿到本书,准备好基本的硬件、软件环境后,即可开始学习之旅。从点亮发光二极管开始,到GPIO控制、中断、串口通信、定时器、ADC、DAC和DMA等功能模块,越到后面,用到的功能模块就越多,可以说是层层深入;到最后,基本是对所有主要功能模块的综合使用。用熟、用好这些功能模块,离不开大量的练习和针对软件、硬件的“实操”。本书各章节均设置了若干练习题目,有些题目有一定的挑战度,希望读者能在完成各章案例学习的基础上逐一完成这些习题。
  在各章节的案例中,大都以新建工程的方式展开,并列出了相对完整的硬件配置步骤。有些地方看似重复,实则是考虑到读者(尤其是初学者)参考时的方便性。此外,有些章节(如第2~4章)还用到了扩展电路板,主要是用到了其上的蜂鸣器、多个按键和多个发光二极管。在学习中,此扩展电路板非必需,有需要的读者可以参考相关章节或附录中给出的电路原理图,自行制作。
  5.提供资源
  为方便读者学习,本书还提供了各章节案例的代码或电子版数据,以及部分习题的参考代码。读者可以登录北京航空航天大学出版社的官方网站,选择“下载专区”一“随书资料”下载本书配套的代码和习题答案;还可以关注公众号“北航科技图书”,回复“4081”获取;此外,还可以关注微信公众号“GDLAB”,搜索本书所涉及的电子版资料以及配套扩展电路板的资料。
  感谢清华大学电机系教学委员会对本书编写工作的支持,感谢朱小梅老师和微机教研组全体同事的帮助。最后,还要特别感谢北京航空航天大学出版社陈守平老师的指导和建议。
  由于编者水平有限,错误之处在所难免,恳请读者批评指正,相关建议可以发送至邮箱:wpeng@ mail. tsinghua.edu.cn.