STM32H7R7/7S7是ST目前最新推出的高性能MCU,这个系列的MCU具有Cortex-M7内核,运行频率高达600MHz,拥有64 KB片上bootflash、620 KB SRAM以及带Flex ECC的32 x 32 KB缓存。这个系列的MCU主打在极低成本下实现出色性能。 STM32H7S78-DK是基于STM32H7S7L8H MCU的开发板,已经引出了MCU的大部分功能,适合用于评估STM32H7R7/7S7的功能。下面笔者来介绍相关开发流程。 首先从ST官网下载SDK包,下载地址为 https://www.st.com.cn/zh/embedded-software/stm32cubeh7rs.html 文件名为en.stm32cubeh7rs-v1-1-0.zip 下载之后解压,得到如下内容 Utilities\PC_Software下有IAR/keil的pack,需要先执行安装 Projects\STM32H7S78-DK\Templates下有工程模板,目前支持的IDE为EWARM MDK-ARM和 STM32CubeIDE,支持的启动方式分别为片上执行,RAM上执行,以及XIP执行 笔者这里用的是MDK-ARM,选择XIP执行,因此,将Template_XIP下面内容复制到一个新建的工程里面。 然后进行相关配置。 1.删除EWARM和STM32CubeIDE两个文件夹,因为用不到 2.打开工程,可以看到这下面有三个子工程 第一个是bootloader,第二个是XIP到片外NOR FLASH执行的,第三个是在RAM上面执行的,第三个工程我们用不到,只用管前面两个。 这时,很多文件是没有的,因为这个文件夹原本依赖了SDK里面的相对路径,现在拷贝之后,路径的对应关系没了,所以找不到文件。首先在工程里面新建个文件夹,叫Drivers 然后将SDK包Drivers里面的文件夹复制过来
其中CMSIS里面的内容可以按需复制过来,有下面几个文件夹即可 另外再建立一个Middlewares目录,然后将SDK里面的Middlewares下面的内容按需复制过来。如果需要XIP,则boot工程里面必须包含STM32_ExtMem_Manager里面的内容。 然后修改一下工程里面的源文件目录。将这里面的源文件目录都配置为复制过来的目录 修改头文件目录 3.修改之后编译一下,如果配置无误,此时应该可以编译成功,然后将编译出来的内容烧录到板上,烧录之后在调试模式下,应该可以运行到这个函数 这个函数就是强制跳转的,运行到这里说明boot部分执行正常。 4.按照同样的方法,修改一下Template_XIP_Appli的源码目录和头文件目录 5.在Template_XIP_Appli下面添加如下函数,实现LED闪烁 将Template_XIP_Appli也下载到板上,可以看到LED1每隔250ms闪烁一次 到这里,开发环境就搭建完成了。
|