迅为ITOP-STM32MP157是基于ST的STM32MP157芯片开发的一款开发平台。
在STM32MP157开发平台上,我们也做了比较多的创新,其中重要的一点就是,iTOP-STM32MP157核心板电源管理采用ST全新配套研制的PMIC电源管理芯片STPMU1A。为整个系统的稳定运行提供了更可靠的保证。
核心板通过了电磁兼容,电磁辐射,安规检测、高低温环境测验,采用邮票孔的连接方式,连接方式更加稳定和可靠。
底板板载4G接口(选配)、千兆以太网、WIFI蓝牙模块、HDMI、CAN、RS485、LVDS接口、温湿度传感器(选配)光环境传感器、六轴传感器、2路USB OTG、3路串口、CAMERA接口、ADC电位器、SPDIF、 SDIO接口等
在迅为iTOP-STM32MP157开发板上,系统支持Buildroot、QT5.12.10、ubuntu_base_20.04、Debian、yocto、最小Linux系统。 系统驱动源码全开源,提供开发使用手册并长期稳定更新,资料不断升级
目录
注意事项与售后维修............................................................................................................................................ 2
技术支持与开发定制............................................................................................................................................ 4
资料获取与后续更新............................................................................................................................................ 5
更新记录.................................................................................................................................................................6
第一部分 硬件及资料介绍................................................................................................................................ 20
第零章 开发板使用前必读................................................................................................................................ 21
必须注意的问题.......................................................................................................................................... 21
01 硬件配件检查........................................................................................................................................ 21
第一章 iTOP-STM32MP157 开发板简介............................................................................................................22
1.1 核心板介绍............................................................................................................................................ 22
核心板参数列表.................................................................................................................................. 22
核心板正面:...................................................................................................................................... 22
1.2 底板介绍............................................................................................................................................... 23
1.2.1 底板外观.................................................................................................................................... 23
1.2.2 底板参数列表............................................................................................................................ 23
1.3 底板硬件资源接口............................................................................................................................... 24
1.3.1 拨码开关电路............................................................................................................................ 25
1.3.2 系统电源接口............................................................................................................................ 25
1.3.3 复位电路.................................................................................................................................... 26
1.3.4 纽扣电池电路............................................................................................................................ 26
1.3.5 CAN 接口电路............................................................................................................................. 27
1.3.6 GPIO 接口电路............................................................................................................................27
1.3.7 RS485 电路.................................................................................................................................. 27
1.3.8 LED 电路...................................................................................................................................... 28
1.3.9 按键电路.................................................................................................................................... 28
1.3.10 TF 卡电路.................................................................................................................................. 29
1.3.11 音频电路................................................................................................................................... 29
1.3.12 RGB 屏幕电路........................................................................................................................... 31
1.3.13 LVDS 屏幕接口.......................................................................................................................... 31
1.3.14 USB OTG 电路............................................................................................................................32
1.3.15 USB HOST 接口..........................................................................................................................33
1.3.16 CSI 摄像头接口电路................................................................................................................. 33
1.3.17 WIFI/蓝牙电路.......................................................................................................................... 34
1.3.18 PCIE 4G 模块电路......................................................................................................................34
1.3.19 以太网电路............................................................................................................................... 35
1.3.21 JTAG 接口...................................................................................................................................37
1.3.22 SDIO 接口.................................................................................................................................. 38
1.3.23 ADC 电位器电路....................................................................................................................... 38
1.3.24 蜂鸣器电路.............................................................................................................................. 38
1.3.25 六轴传感器电路...................................................................................................................... 39
1.3.26 CH340 转串口电路................................................................................................................... 40
1.3.27 光环境传感器电路...................................................................................................................40
1.3.28 DHT11 温湿度传感器电路....................................................................................................... 41
1.3.29 红外传感器电路...................................................................................................................... 41
1.4 扩展口原理图和 PCB 管脚对应方式...................................................................................................41
第二章 开发板组装............................................................................................................................................ 42
2.1 电源的连接........................................................................................................................................... 42
2.2 控制台(console)串口.......................................................................................................................43
2.3 屏幕的连接........................................................................................................................................... 43
2.3.1 LVDS 10.1 寸屏幕........................................................................................................................ 44
2.3.2 LVDS 9.7 寸屏幕.......................................................................................................................... 46
2.3.3 LVDS 7 寸屏幕............................................................................................................................. 47
2.3.4 RGB 7 寸屏幕.............................................................................................................................. 47
2.3.5 RGB 5 寸屏幕.............................................................................................................................. 48
2.3.6 RGB 4.3 寸屏幕........................................................................................................................... 49
第三章 外设功能验证........................................................................................................................................ 50
3.1 用户 LED 测试....................................................................................................................................... 51
3.2 蜂鸣器测试........................................................................................................................................... 51
3.3 ADC 电位器测试.................................................................................................................................... 51
3.4 TF 卡测试................................................................................................................................................52
3.5 USB HOST 测试.......................................................................................................................................52
3.6 以太网测试........................................................................................................................................... 53
3.7 用户按键测试....................................................................................................................................... 54
3.8 UART 测试和扩展.................................................................................................................................. 55
3.8.1 硬件介绍.................................................................................................................................... 55
3.8.2 串口 ttySTM0 测试.................................................................................................................... 56
3.8.3 串口 ttySTM3 测试.................................................................................................................... 59
3.9 RTC 实时时钟测试................................................................................................................................ 62
3.10 看门狗测试......................................................................................................................................... 64
3.11 声卡耳机和麦克测试......................................................................................................................... 64
3.11.1 声卡基础知识.......................................................................................................................... 65
3.11.2 耳机播放测试.......................................................................................................................... 65
3.11.3 麦克风录音测试...................................................................................................................... 66
3.11.4 扬声器播放测试...................................................................................................................... 68
3.12 OTG 接口的 host 模式测试................................................................................................................. 69
3.13 CAN 接口测试...................................................................................................................................... 70
3.14 485 接口测试....................................................................................................................................... 73
3.15 PCIE 4G 模块测试.................................................................................................................................76
3.16 蓝牙 WIFI 测试....................................................................................................................................79
3.16.1 WIFI 测试...................................................................................................................................79
3.16.2 蓝牙测试.................................................................................................................................. 82
3.17 AP3216C 测试.......................................................................................................................................83
3.18 LCD 测试............................................................................................................................................... 83
3.18.1 背光测试.................................................................................................................................. 83
3.18.2 LCD 触摸测试............................................................................................................................84
第四章 外设模块测试........................................................................................................................................ 85
第二部分 开发环境搭建.................................................................................................................................... 85
第五章 VMware 和 Ubuntu 环境搭建............................................................................................................... 85
5.1 虚拟机 VMware-workstation 的安装.................................................................................................85
5.1.1 安装虚拟机................................................................................................................................ 85
5.1.2 安装虚拟机常见错误................................................................................................................91
5.1.3 卸载后重装虚拟机需要注意的问题........................................................................................92
5.1.4 虚拟机安装 Ubuntu 常见问题之 64 位虚拟化................................................................... 94
5.2 虚拟机加载 Ubuntu 镜像...................................................................................................................95
5.2.1 加载搭建好的 Ubuntu18.04 系统.......................................................................................... 95
5.2.2 安装初始 Ubuntu18.04 系统................................................................................................ 100
5.3 常见虚拟机问题................................................................................................................................. 124
5.3.1 虚拟机 Ubuntu 扩展硬盘空间..............................................................................................124
5.3.2 U 盘、TF 卡与虚拟机连接.....................................................................................................134
5.3.3 设置 Ubuntu 的核数和内存....................................................................................................140
5.3.4 Ubuntu 更改语言......................................................................................................................144
5.3.5 虚拟机和主机之间共享文件夹..............................................................................................152
5.3.6 修改数据源地址...................................................................................................................... 162
5.3.7 虚拟机的联网设置..................................................................................................................169
5.3.8 Samba 服务搭建....................................................................................................................... 172
5.3.9 安装和使用 SSH 软件..............................................................................................................175
第六章 Windows 环境搭建.............................................................................................................................. 178
6.1 超级终端的使用.................................................................................................................................. 178
6.1.1 超级终端的安装...................................................................................................................... 178
6.1.2 超级终端的设置...................................................................................................................... 181
6.1.3 超级终端的系统配置..............................................................................................................183
6.1.4 超级终端保存日志..................................................................................................................186
6.2 Source Insight 软件安装和使用......................................................................................................... 188
6.3 Putty 软件的安装教程.........................................................................................................................216
6.4 MobaXterm 的安装教程......................................................................................................................223
6.5 FTP 客户端安装.................................................................................................................................. 227
6.6 vscode 的安装和使用..........................................................................................................................230
6.6.1 windows 安装 Visual Studio Code............................................................................................ 230
6.6.2 ubuntu 环境下安装 Visual Studio Code...................................................................................235
6.6.3 Visual Studio Code 插件安装....................................................................................................237
6.6.4 Visual Studio Code 快捷键的使用............................................................................................239
第三部分 开发板固件烧写.............................................................................................................................. 242
第七章 设置启动模式(必看)...................................................................................................................... 242
7.1 uboot 模式............................................................................................................................................242
7.2 设置拨码开关..................................................................................................................................... 242
7.3 镜像说明............................................................................................................................................. 243
7.3.1 tsv 配置文件..............................................................................................................................243
7.3.2 tf-a 镜像文件.............................................................................................................................246
7.3.3 u-boot.stm32............................................................................................................................. 247
7.3.4 bootfs.ext4.................................................................................................................................247
7.3.5 rootfs.ext4..................................................................................................................................248
第八章 STM32MP157 烧写系统....................................................................................................................... 248
8.1 Windows 环境的烧写.......................................................................................................................... 248
8.1.1 Java 环境的搭建....................................................................................................................... 248
8.1.2 STM32CubeProgrammer 安装..................................................................................................250
8.1.3 系统的烧写.............................................................................................................................. 256
8.2 Ubuntu 环境的烧写.............................................................................................................................260
8.2.1 Java 环境的搭建....................................................................................................................... 260
8.2.2 STM32CubeProgrammer 安装..................................................................................................262
8.2.3 系统的烧写.............................................................................................................................. 267
8.3 ums 挂载烧写系统.............................................................................................................................. 271
8.4 TF 卡 Raw 镜像制作和烧写................................................................................................................ 274
8.5 EMMC Raw 镜像制作和烧写.............................................................................................................. 277
8.6 Tftp 下载和 nfs 启动............................................................................................................................282
8.6.1 配置开发板网络...................................................................................................................... 282
8.6.2 tftp 服务搭建............................................................................................................................ 284
8.6.3 nfs 服务搭建............................................................................................................................. 286
8.6.4 功能实现.................................................................................................................................. 289
8.7 设置屏幕参数..................................................................................................................................... 293
8.8 设置系统启动参数............................................................................................................................. 294
第四部分 开发板源码编译.............................................................................................................................. 295
第九章 搭建编译环境...................................................................................................................................... 295
9.1 安装 ubuntu 虚拟机........................................................................................................................... 295
9.2 安装交叉编译器................................................................................................................................. 295
第十章 编译 TF-A.............................................................................................................................................. 296
第十一章 编译 U-Boot......................................................................................................................................299
第十二章 编译 Linux 内核................................................................................................................................302
12.1 内核源码的编译............................................................................................................................... 302
12.2 驱动模块的使用............................................................................................................................... 304
第十三章 编译 QtE5.12 文件系统................................................................................................................... 304
13.1 安装交叉编译器............................................................................................................................... 304
13.2 编译触摸........................................................................................................................................... 305
13.3 编译 QtE5.12 库............................................................................................................................... 306
13.4 生成文件系统................................................................................................................................... 309
13.5 屏幕校准........................................................................................................................................... 313
13.6 使用制作好 QtE5.12 文件系统........................................................................................................313
第五部分 Qt 应用开发..................................................................................................................................... 314
第十四章 QtE5.12 应用开发............................................................................................................................ 314
14.1 安装 QtCreator..................................................................................................................................314
14.2 在 PC 上运行 Helloworld................................................................................................................... 319
14.3 命令行交叉编译 Helloworld............................................................................................................ 325
14.4 开发板运行 Helloworld.................................................................................................................... 327
14.5 QtCreator 直接编译 ARM 架构程序.................................................................................................327
14.6 Qt5.7 测试例程.................................................................................................................................. 333
第六部分 构建文件系统.................................................................................................................................. 335
第十五章 制作最小 linux 系统........................................................................................................................ 335
15.1 什么是根文件系统........................................................................................................................... 335
15.2 Busybox 工具简介..............................................................................................................................337
15.3 设置支持中文................................................................................................................................... 337
15.4 编译 busybox.....................................................................................................................................341
15.5 编译 busybox.....................................................................................................................................345
15.6 完善最小根文件系统....................................................................................................................... 346
15.6.1 创建必要文件夹....................................................................................................................346
15.6.2 拷贝 lib 库文件...................................................................................................................... 346
15.6.3 创建 rcS 文件........................................................................................................................346
15.6.4 创建 fstab 文件.....................................................................................................................349
15.6.5 创建 inittab 文件.................................................................................................................. 350
15.6.6 创建 passwd 文件...................................................................................................................351
15.6.7 创建 profile 文件................................................................................................................... 352
15.6.8 创建 eth0-setting 文件.......................................................................................................... 352
15.6.9 创建 ifconfig-eth0 文件......................................................................................................... 353
15.6.10 创建 medv.conf 文件........................................................................................................... 354
15.6.11 创建 mtab 文件.....................................................................................................................355
15.6.12 创建 netd 文件......................................................................................................................356
15.7 制作镜像........................................................................................................................................... 357
15.8 busybox 根文件系统测试..................................................................................................................358
15.8.1 网络测试................................................................................................................................ 359
15.8.2 中文测试................................................................................................................................ 360
15.8.4 热拔插测试............................................................................................................................ 360
15.8.5 库文件测试............................................................................................................................ 360
15.8.6 开机自启动程序测试............................................................................................................361
15.8.7 固定 IP 测试...........................................................................................................................362
第十六章 Buildroot 制作根文件系统..............................................................................................................363
16.1 Buildroot 简介................................................................................................................................... 363
16.2 获取 buildroot 源码.......................................................................................................................... 364
16.3 buildroot 编译环境........................................................................................................................... 364
16.4 使用提供的配置文件进行编译(推荐).......................................................................................366
16.5 从零开始编译 buildroot...................................................................................................................366
16.5.1 配置 Target options...............................................................................................................367
16.5.2 配置 Toolchain.......................................................................................................................368
16.5.3 配置 System configuration....................................................................................................370
16.5.4 配置 Filesystem images.........................................................................................................371
16.5.5 禁止编译 Linux 内核和 uboot........................................................................................... 371
16.5.6 配置 Target packages............................................................................................................ 372
16.5.7 编译测试 buildroot................................................................................................................372
16.6 增加基本的软件包........................................................................................................................... 373
16.6.1 支持 linux 磁盘工具............................................................................................................ 373
16.6.2 支持 nfs 挂载工具................................................................................................................. 374
16.6.3 支持 v4l2 框架工具............................................................................................................. 375
16.6.4 支持 can 工具...................................................................................................................... 376
16.6.5 支持 ssh 访问工具................................................................................................................376
16.6.7 支持 4G 拨号上网工具....................................................................................................... 376
16.6.8 支持 hci 蓝牙工具............................................................................................................... 377
16.6.6 支持 alsa 声卡工具..............................................................................................................377
16.6.9 支持 wpa WIFI 工具.............................................................................................................378
16.7 支持 Qt 配置..................................................................................................................................... 379
16.7.1 支持 multimedia................................................................................................................... 379
16.7.2 支持 tslib 触摸...................................................................................................................... 380
16.7.3 支持 qt5..................................................................................................................................380
16.8 其他配置........................................................................................................................................... 382
16.8.1 支持 python3........................................................................................................................ 382
16.8.2 支持 MQTT 库........................................................................................................................ 382
16.8.3 支持 opencv3......................................................................................................................... 383
16.9 增加功能后烧写测试....................................................................................................................... 384
16.9.1 配置烧写................................................................................................................................ 384
16.9.2 qt 环境测试.............................................................................................................................388
16.9.3 基本工具测试........................................................................................................................391
16.9.4 Python 环境测试.....................................................................................................................396
16.9.5 opencv3 测试.......................................................................................................................... 396
16.10 使用制作好的 Buildroot 文件系统................................................................................................397
第十七章 制作 Ubuntu 文件系统....................................................................................................................399
17.1 Ubuntu-base 获取.............................................................................................................................. 400
17.2 解压 Ubuntu-base............................................................................................................................. 400
17.3 安装 Qemu-User-Static 工具............................................................................................................ 401
17.4 设置软件源....................................................................................................................................... 401
17.5 挂载根文件系统并 Chroot...............................................................................................................402
17.6 Ubuntu 文件系统测试.......................................................................................................................407
17.6.1 制作 Ubuntu 烧写镜像..........................................................................................................407
17.6.2 Ubuntu 镜像的烧写...............................................................................................................408
17.6.3 Ubuntu 根文件系统测试.......................................................................................................408
17.6.4 Ubuntu WIFI 测试................................................................................................................... 410
17.6.5 4.3 寸屏幕校准....................................................................................................................... 412
17.7 使用制作好的 Ubuntu 文件系统.....................................................................................................413
第十八章 Debian 文件系统..............................................................................................................................414
18.1 安装所需的工具............................................................................................................................... 414
18.2 根文件系统制作............................................................................................................................... 415
18.3 Debian 可烧写文件系统的制作........................................................................................................415
18.4 debian 文件系统测试........................................................................................................................ 417
18.4.1 制作 Debian 烧写镜像.......................................................................................................... 417
18.4.2 Debian 镜像的烧写.................................................................................................................418
18.4.3 Debian 根文件系统测试........................................................................................................ 419
18.4.4 Debian WIFI 测试.................................................................................................................... 421
18.4.5 4.3 寸屏幕校准....................................................................................................................... 423
18.5 使用 Chroot 挂载文件系统..............................................................................................................424
18.6 使用制作好的 Debian 文件系统..................................................................................................... 427
第十九章 Yocto 系统开发................................................................................................................................ 427
19.1 编译环境搭建.................................................................................................................................... 428
19.2 构建 Yocto 文件系统....................................................................................................................... 428
19.3 镜像介绍............................................................................................................................................ 433
19.4 镜像烧写............................................................................................................................................ 435
19.4.1 文件系统内容的添加............................................................................................................435
19.4.2 镜像的烧写............................................................................................................................ 437
19.5 交叉编译器的使用............................................................................................................................ 438
第七部分 LInux 系统移植.................................................................................................................................442
第二十章 Trusted Firmware-A 移植................................................................................................................ 443
20.1 源码的导入以及打补丁................................................................................................................... 443
20.2 准备编译所用到工具(用我们提供的环境可以跳过本小节).................................................. 444
20.3 编译 TF-A 源码..................................................................................................................................445
20.3.1 增设自己的平台....................................................................................................................445
20.3.2 修改 Makefile.sdk 文件......................................................................................................... 446
20.3.3 编译 TF-A 文件.......................................................................................................................447
20.3.3 烧写初始 TF-A 镜像...............................................................................................................449
20.4 适配 EMMC....................................................................................................................................... 452
第二十一章 U-Boot 移植..................................................................................................................................454
21.1 源码的导入以及打补丁................................................................................................................... 455
21.2 编译 U-Boot 源码..............................................................................................................................456
21.2.1 增设自己的平台....................................................................................................................456
21.2.2 修改 Makefile 文件................................................................................................................458
21.2.3 修改 Makefile.sdk 文件.......................................................................................................... 459
21.2.4 修改 stm32mp1.c 文件...........................................................................................................460
21.2.5 编译 uboot 文件.................................................................................................................... 460
21.2.6 烧写初始 uboot 镜像............................................................................................................ 462
21.3 功能的修改与适配............................................................................................................................ 467
21.3.1 去掉 ADC................................................................................................................................. 467
21.3.2 网卡适配................................................................................................................................ 469
21.3.3 EMMC 适配............................................................................................................................. 475
21.3.3 TF 卡环境变量的设置............................................................................................................ 478
21.3.4 EMMC 环境变量的设置........................................................................................................489
第二十二章 linux 内核移植............................................................................................................................. 496
22.1 源码的导入以及打补丁................................................................................................................... 497
22.2 编译内核源码................................................................................................................................... 498
22.2.1 增设自己的平台....................................................................................................................498
22.2.2 编译内核................................................................................................................................ 500
22.2.3 制作内核设备树镜像............................................................................................................502
22.3 从零开始适配内核........................................................................................................................... 504
22.3.1 设备树的裁剪......................................................................................................................... 504
22.3.2 TF 卡和 EMMC 功能完善....................................................................................................... 515
22.3.3 USB 适配..................................................................................................................................518
22.3.4 网卡适配................................................................................................................................. 522
22.3.5 串口适配................................................................................................................................. 529
22.3.6 RTC 实时时钟适配..................................................................................................................536
22.3.7 HDMI 适配...............................................................................................................................541
22.3.8 LCD 屏幕适配..........................................................................................................................550
22.3.9 LCD 触摸适配..........................................................................................................................568
22.3.10 音频适配............................................................................................................................... 579
22.3.11 ov5640 摄像头适配..............................................................................................................588
22.3.12 蓝牙 WIFI 适配.....................................................................................................................596
22.3.13 CAN 总线适配....................................................................................................................... 604
22.3.14 ap3216c 光环境传感器适配................................................................................................ 605
22.3.15 ADC 适配............................................................................................................................... 610
第八部分 M4 内核裸机开发............................................................................................................................612
第二十三章 Cortex-M4 开发环境搭建...........................................................................................................612
23.1 Java 环境的搭建................................................................................................................................ 612
23.2 STM32CubeIDE 软件的安装.............................................................................................................. 614
23.3 CH340 串口驱动的安装.................................................................................................................... 617
第二十四章 STM32CubeIDE 的初步使用........................................................................................................ 620
第二十五章 Cortex-M4 GPIO_LED 实验............................................................................................................626
25.1 什么是 GPIO.......................................................................................................................................626
25.2 实验目的........................................................................................................................................... 626
25.3 GPIO 的工作模式...............................................................................................................................626
25.4 LED 电路的分析................................................................................................................................. 628
25.5 实验步骤........................................................................................................................................... 628
25.5.1 建立 LED 工程.........................................................................................................................628
25.5.2 GPIO 功能引脚配置................................................................................................................631
25.5.3 工程的生成与完善.................................................................................................................634
25.5.4 工程的编译............................................................................................................................. 640
25.5.5 工程的调试............................................................................................................................. 641
第二十六章 Cortex-M4 GPIO_蜂鸣器实验.......................................................................................................643
26.1 什么是蜂鸣器................................................................................................................................... 643
26.2 实验目的........................................................................................................................................... 644
26.3 蜂鸣器电路的分析........................................................................................................................... 644
26.4 实验步骤........................................................................................................................................... 645
26.4.1 建立 BEEP 工程.......................................................................................................................645
26.4.2 GPIO 功能引脚配置................................................................................................................647
26.4.3 工程的生成与完善.................................................................................................................650
26.4.4 工程的编译............................................................................................................................. 656
26.4.5 工程的调试............................................................................................................................. 656
第二十七章 Cortex-M4 按键实验.....................................................................................................................659
27.1 什么是按键....................................................................................................................................... 659
27.2 实验目的........................................................................................................................................... 660
27.3 按键电路的分析............................................................................................................................... 660
27.4 实验步骤........................................................................................................................................... 661
27.4.1 建立 KEY 工程......................................................................................................................... 661
27.4.2 GPIO 功能引脚配置................................................................................................................664
27.4.3 工程的生成与完善.................................................................................................................674
27.4.4 工程的编译............................................................................................................................. 681
27.4.5 工程的调试............................................................................................................................. 681
第二十八章 Cortex-M4 外部中断实验.............................................................................................................684
28.1 认识中断........................................................................................................................................... 684
28.1.1 对中断的初步理解.................................................................................................................684
28.1.2 中断的分类............................................................................................................................. 685
28.1.3 NVIC 的初步认识............................................................................................................... 685
28.1.4 EXTI 的初步认识..................................................................................................................... 687
28.2 实验目的........................................................................................................................................... 688
28.3 按键电路的分析............................................................................................................................... 688
28.4 实验步骤........................................................................................................................................... 689
28.4.1 建立 EXTI 工程........................................................................................................................ 689
28.4.2 GPIO 功能引脚配置................................................................................................................692
28.4.3 工程的生成与完善.................................................................................................................704
28.4.4 工程的编译............................................................................................................................. 710
28.4.5 工程的调试............................................................................................................................. 710
第二十九章 Cortex-M4 串口实验.....................................................................................................................713
29.1 串口简介........................................................................................................................................... 713
29.2 实验目的........................................................................................................................................... 714
29.3 实验步骤............................................................................................................................................ 715
29.3.1 建立 UART 工程...................................................................................................................... 715
29.3.2 工程的生成与完善.................................................................................................................724
29.3.4 工程的编译............................................................................................................................. 728
29.3.5 工程的调试............................................................................................................................. 729
第三十章 Cortex-M4 通用定时器实验.............................................................................................................731
30.1 定时器简介........................................................................................................................................ 731
30.1.1 什么是定时器........................................................................................................................731
30.1.2 基本定时器的初步认识........................................................................................................732
30.2 实验目的............................................................................................................................................ 733
30.3 实验步骤............................................................................................................................................ 733
30.3.1 建立 TIME 工程.......................................................................................................................733
30.3.2 GPIO 功能引脚配置................................................................................................................736
30.3.3 时钟与定时器的配置............................................................................................................739
30.3.4 工程的生成与完善.................................................................................................................742
30.3.5 工程的编译............................................................................................................................. 745
30.3.6 工程的调试............................................................................................................................. 745
第三十一章 Cortex-M4 窗口看门狗实验.........................................................................................................748
31.1 WWDG 简介...................................................................................................................................... 748
31.2 看门狗原理讲解............................................................................................................................... 749
31.3 实验目的........................................................................................................................................... 751
31.4 实验步骤........................................................................................................................................... 752
31.4.1 建立 WWDG 工程...................................................................................................................752
31.4.2 GPIO 功能引脚配置................................................................................................................754
31.4.3 时钟与看门狗的配置............................................................................................................758
31.4.3 工程的生成与完善.................................................................................................................760
31.4.4 工程的编译............................................................................................................................. 763
31.5.5 工程的调试............................................................................................................................. 763
第三十二章 Cortex-M4 PWM 呼吸灯实验.......................................................................................................766
32.1 PWM 简介.......................................................................................................................................... 766
32.1.1 什么是 PWM...........................................................................................................................766
32.1.2 PWM 输出模式...................................................................................................................... 767
32.1.3 PWM 生成............................................................................................................................... 767
32.2 实验目的............................................................................................................................................ 768
32.3 实验步骤............................................................................................................................................ 769
32.3.1 建立 PWM 工程......................................................................................................................769
32.3.2 GPIO 功能引脚配置................................................................................................................772
32.3.3 时钟与定时器的配置............................................................................................................773
32.3.4 工程的生成与完善.................................................................................................................777
32.3.5 工程的编译............................................................................................................................. 779
32.3.6 工程的调试............................................................................................................................. 779
第三十三章 Cortex-M4 DMA 实验....................................................................................................................782
33.1 DMA 简介.......................................................................................................................................... 782
33.2 STM32MP157 DMA 资源介绍.......................................................................................................... 783
33.3 实验目的............................................................................................................................................ 786
33.4 实验步骤............................................................................................................................................ 786
33.4.1 建立 DMA 工程.......................................................................................................................786
33.4.2 工程的生成与完善.................................................................................................................798
33.4.4 工程的编译............................................................................................................................. 803
33.4.5 工程的调试............................................................................................................................. 804
第三十四章 Cortex-M4 ADC 实验.....................................................................................................................806
34.1 ADC 简介............................................................................................................................................ 806
34.1.1 ADC 初步认识......................................................................................................................... 806
34.1.2 ADC 框图................................................................................................................................ 807
34.2 实验目的........................................................................................................................................... 811
34.3 实验步骤............................................................................................................................................ 812
34.3.1 建立 ADC 工程........................................................................................................................ 812
34.3.2 工程的生成与完善.................................................................................................................825
34.3.4 工程的编译............................................................................................................................. 832
34.3.5 工程的调试............................................................................................................................. 833
第三十五章 A7 和 M4 联合调试.................................................................................................................. 837
35.1 调试前的准备工作........................................................................................................................... 837
35.2 使用 STM32CubeIDE 进行调试......................................................................................................840
35.3 手动调试........................................................................................................................................... 843