第2章 开发板使用
2.1 硬件连接
2.1.1 连接 ST-Link
本课程使用 ST-Link 给开发板供电、烧录、调试。
百问网全场景工业互联开发板上有 4 个插座,它们分别是从左往右分别是 GND 、 SWDIO 、SWCLK 、3.3V,对应线序黑、蓝、绿、红。ST-Link 上有 10 个插针, 它们的功能 在外壳上有标注。接线方法如下图所示:
连接好的实物图像如下(ST-Link 的 USB 口要插到电脑上) :
2.1.2 连接 USB 串口
USB 默认只为开发板提供供电, 将来我们会将它作为串口进行通信。
2.1.3 连接 SPI 屏
使用提供的 24PIN 排线分别连接开发板和 SPI 屏, 开发板使用上接, 屏幕使用下接。 连接实物图如下:
2.2 运行测试程序验证硬件
2.2.1 硬件接线(RS485、CAN)
使用提供的接线端子分别连接两对端子线, 分别插入两路 RS485 ,CAN。
接线如下表所示:
RS485 | CAN |
---|---|
CH1-485A —— CH2-485A | CH1-CANL —— CH2-CANL |
CH1-485B —— CH2-485B | CH2-CANH —— CH2-CANH |
连接实物图如下:
2.2.2 编译工程
把开发板配套资料中如下程序复制到 目录名里没有空格等特殊字符、没有中文字符 的 目录下并解压开。比如, 可以在 D 盘根目录新建一 个名为 100ask 的目录,并将其解压到 其中:
在工程的“MDK-ARM”目录下, 双击如下文件, 就会使用 Keil 打开工程:
在 Keil 界面, 点击一下红框中任意一个按钮即可编译程序:
左边的按钮名为“Build”, 点击这个按钮后,这些文件将会被编译:
- 所有没有被编译过的 C 文件
- 所被修改了但是尚未再次编译的 C 文件
如果你曾经编译过工程, 但是只是修改了某些文件,使用“Buld”按钮时,只会编译 这些被修改的文件, 这会加快编译速度。
右边的按钮名为“Rebuild”,点击这个按钮后, 所有的文件都会被再次编译。
2.2.3 配置调试器
先点击如下图所示按钮:
然后如下图依次点击“Debug”, 选择“ST-Link Debugger”, 点击“Setting”(可 能会一是升级固件, 见本节后面部分) :
如一切正常,ST-Link 会自动识别出芯片, 如下图所示:
然后如下图选择:
注意: 如果你的 ST-Link 是第 1 次使用,它的固件可能已经很老了。设置调试器时可 能会提示升级固件。如下图所示: 点击“Yes”表示升级:
然后会弹出升级界面, 点击“Device Connect”,表示连接设备;再点击“Yes”开 始升级。如下图所示:
2.2.4 烧录运行
点击如下按钮, 即可烧写、运行程序:
如果一切正常, 可以看到开发板 SPI 屏幕上呈现出,两路 RS485、CAN,和 WIFI、芯 片 ID,前面的方框都打上了对勾【 √ 】,并且左上角 Drag me 方块处可以在屏幕上任意滑动。
实物现象如下图所示:
2.3 创建第 1 个工程
本节代码为“项目 1-全场景工业互联设备管理系统解决方案(PC 上位机+中控+多传感 器)3_程序源码01_视频配套的源码2-1_创建第 1 个 工程demo.7z”。
2.3.1 创建工程
启动 STM32CubeMX 后, 点击如下图标开始选择 MCU:
如下图输入型号“STM32H563RIV”,双击找到的芯片,开始创建工程:
在弹出的窗口, 选择“without TurstZone activated”:
调高 CPU 频率:
配置工程, 如下操作:
指定代码生成方法, 如下:
在弹出的窗口, 点击“Yes”(以后再使能 ICACHE):
2.3.2 选择调试器
新建的工程要配置调试器,参考《2.2.3 配置调试器》 。
然后就可以编译程序、烧写运行了。
2.3.3 配置 GPIO 操作 LED
根据核心板原理图“项目 1-全场景工业互联设备管理系统解决方案(PC 上位机+中控+ 多传感器)5_硬件资料01_开发板原理图DshanMCU-LiteH5_SCH_V1.pdf”, 可以看到 LED 引脚图如下:
可以双击打开工程里如下文件进行配置:
然后如下配置 PC12 为输出引脚:
-
在 main 函数的循环里,增加如下代码:
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* set PC13 output high */
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_12, GPIO_PIN_SET);
HAL_Delay(500);
/* set PC13 output low */
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_12, GPIO_PIN_RESET);
HAL_Delay(500);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}最后编译、烧写、运行, 可以看到开发板的 LED 闪烁
2.4 使用 LCD 打印信息
本节代码为“项目 1-全场景工业互联设备管理系统解决方案(PC 上位机+中控+多传感 器)3_程序源码01_视频配套的源码2-2_使用 LCD 打印调试信息demo.7z”。
2.4.1 接口信息
在上 一 个程序的基础上配 置 SPI 。 在 底 板 原 理 图 “ 100ASK_MCU-Industrial- DevKit_SCH_V1.pdf”中可以看到 SPI LCD 的接口信息:
所涉及引脚列表如下:
原理图引脚名 | 功能 | 引脚 | 描述 |
---|---|---|---|
PWM | 背光控制 | PB11 | 高电平打开背光,也可使用 PWM 波控制 亮度 |
LCD_RESET | 复位 | PB4 | 低电平复位 |
RS | LCD 数据/命令选择 | PD12 | 高电平表示传输数 据,低电平表示传 输命令 |
SPI_CS | SPI LCD 片选 | PD11 | |
SPI_MOSI | SPI MOSI | PC1 | |
SPI_MISO | SPI MISO | PC2 | |
SPI_SCK | SPI1 SCK | PB10 |
2.4.2 配置 SPI
在 STM32CubeMX 中, 如下进行配置。
1. SPI2 参数配置
2.SPI2 GPIO 配置
SPI LCD 的 SPI 频率很高, 所涉及的 SPI 引脚速率都要配置为“very high”, 如下:
3. 其他引脚配置
如下图所示: