1、开箱硬件特性介绍
STM32H533的内核采用Arm® Cortex®-M33内核,并搭载面向Armv8-M的TrustZone®技术、DSP和浮点单元 (FPU),运行频率高达250 MHz。新的内核效率不仅比M3和M4的效率高,而且增加了TrustZone等安全特性。H系列的外设多达21个通信外设,包括MIPI-I3C、FDCAN、USB 2.0全速主机和从机、USB Type-C®/USB功率输出和摄像头接口。从H系列的单位来看,H系列不仅比F系列的内核效率有大幅的提高从72Mhz到250Mhz,外设还有所提高,定时器提供了32位的定时器,增加了I3C的外设和CAN FD外设。USB也增加了更多的外设功能。
2、STM32H533的开发环境除了keil和IAR以外还有开源的VScode等的ide开发环境。本文使用vscode构建stm32的开发环境。
ST公司的VScode开发环境需要安装STM32扩展。但是需要注意的是该扩展不可以独立的完成项目,需要配合其它的工具GNU 编译器、OpenOCD调试烧录工具等。这些环境ST公司也提供了集成包,STM32CubeCLT 是一个集成了包括GNU C / C++ for Arm工具链可执行文件,GDB调试器和STM32CubeProgrammer(STM32CubeProg)实用程序集合。
在安装VScode之前,首先安装该集成工具。我安装的是V1.16版
安装完成后在安装VScode STM32扩展。STM32扩展还需要C++、Cortex-Debug、等扩展。LinkerScript、GNU Linker Map files、Hex editor等扩展通过安装Cortex-Debug扩展会自动安装
Cortex-Debug安装虽然非常的快捷和简单,但是却不一定能够正常的工作。其中的坑是:可能C++的GDB扩展安装设置不成功造成的。不成功的原因是国内的网络环境造成地,如果你的网络可以顺利的访问wiki等网站就可能不需要手工安装。关于手工安装GDB调试环境请参考我已往的帖子。
STM32扩展安装完成后就可以顺利的使用STM32CubeMX开发环境了。
3、使用STM32CubeMX生成项目
选择NUCLEO H533RE开发板。其中的选项如下:注意Generate demonstration code前的选项,这个可以使用BSP包的代码。
修改调试选项位两线串口Serial Wire
修改时钟位外部时钟
ICHACHE加速设置,只是没有特别指定flash内存区域。如果这些区域有写入操作或大块常数操作可以会引起故障。
注意生成代码的类型CMAKE,如果是在windows下这个选项是最可靠的。其它的Make都会出现问题。
生成代码后就可以测试了。
生成代码需要添加如下代码
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
BSP_LED_Toggle(LED_GREEN);
HAL_Delay(500);
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
可以看到LD2开始闪耀了。
|