本帖最后由 lmx89 于 2017-3-14 10:21 编辑
感谢二姨家给的Nucleo-F722ZE开发板
先来几张美图
开发板的资料和介绍,在官网上都有,这就不多说了
最近大家都在玩CoreMark,赶紧跟上!!!
开发工具:
STM32CubeMX V4.19.0
STM32CubeF7 V1.6.0
ST-LINK/V2-1 V2.J28.M18 STM32 Debug+Mass storage
ST-LINK/V2-1 USB driver
(以上在官网中都能下载到)
MDK-ARM V5.23
STM32F7xx_DFP V2.9.0
CoreMark源代码在CoreMark官网(需注册)可以下载
coremark_v1.0.tgz
(618.78 KB)
下面介绍具体过程:
生成工程模板
直接选择nucleo722ZE
时钟选用内部晶振,HCLK选择216MHz
串口选用USART3(跟STLink共用,不用另外接线)
配置串口
Cortex M7 配置
生成源码(堆栈必须要改大)
往工程中添加Coremark
配置MDK,优化(选择默认,分数只有550左右)
配置Coremark文件(具体参见
如何将coremark程序移植到STM32上.pdf
(1.12 MB)
的P6~P11)
文档是以IAR为环境的,文件要改的内容和MDK是一样的
你以为按pdf配置就行了?其实不行(自己也琢磨了一阵)
还要修改:
1)main.c 里的Error_Handler函数也要拷贝到Core_portme.c 中
2) Core_portme.h文件中的宏定义HAS_STDIO和HAS_PRINTF需定义为1;
#define NULL ((void *)0) 屏蔽(与stdio.h中重定义)
typedef size_t ee_size_t;改成typedef unsigned int ee_size_t; (编译时,size_t显示未定义,明明有的)
到此,编译就可以成功通过
但是download还是出问题 Error: Flash Download failed - "Cortex-M7"
要Flash全擦除,才能下载成功
最后,download成功,打开串口
分数不到880,MDK的优化还是差点
改好的CoreMark代码:
CoreMarkSrc.rar
(23.46 KB)
多谢4楼whtwhtw的提醒,更改后分数加了4分,影响并不大
|