本帖最后由 数码小叶 于 2016-12-15 10:58 编辑 本来想用NUCLEO-F412ZG移植Coremark跑分的,可是两天一直没成功,所以还是把过程发出来,希望有人能看出哪不正确,感觉思路已经陷入死胡同了,问题不解决一直卡着。。。。 开始用的串口一直没输出,于是今天才用的是板载的STLINK 虚拟串口。 在确认工程可以正常输出的情况下, (, 下载次数: 1) 上传 点击文件名下载附件 然后开始移植: 将需要的6个.c文件和.h文件复制到工程下,并添加进工程 (, 下载次数: 0) 上传 点击文件名下载附件 然后开始编辑Core_portme.c 文件。 首先复制原main中的初始化函数到Core_portme.c 中 (, 下载次数: 0) 上传 点击文件名下载附件 然后再把main中相关函数复制过来。 修改start_time函数如下 void start_time(void) { Tick = 0; SysTick_Config(SystemCoreClock/1000); }; 复制代码 修改stop_time函数如下 void stop_time(void) { SysTick->CTRL &=SysTick_Counter_Disable; SysTick->VAL = SysTick_Counter_Clear; }复制代码 修改CORE_TICKS get_time函数如下 CORE_TICKS get_time(void) { CORE_TICKS elapsed =(CORE_TICKS)Tick; return elapsed; } 复制代码 修改stm32f4xx_it.h中的SysTick_Handler函数如下 void SysTick_Handler(void) { extern __IO uint32_t Tick; Tick++; }复制代码 再屏蔽相关宏定义 (, 下载次数: 0) 上传 点击文件名下载附件 添加宏定义 (, 下载次数: 0) 上传 点击文件名下载附件 设置迭代次数 (, 下载次数: 0) 上传 点击文件名下载附件 然后把工程中的main删除,编译,无错后下载,可是就是没输出。。。。。。。。。
对了,串口波特率我修改到了115200。。 然后关闭了你的串口中断。。这地方没有截图。。
我把修改好的工程打包了,你下载后自己看看了。。。
修改了这里 你默认的太小了。。。。给的。。。
还有这里。10000至少了。。。。你1200差好多。。。
好了,这个是修改后的跑分截图
你配置的内部晶振。。可以配置外部的。。还有用IAR 优化后跑分会更接近官方数据
这是修改好的工程包。。。
希望对您有帮助。。。。
他应该用同样的方法,配置串口输出的。。问题应该不在串口。。可能是系统初始化部分,的问题。。
评分
查看全部评分
楼主可看看这篇,在412也测试成功的
评分
查看全部评分
评分
查看全部评分
按照教程一步一步检查下。。。
编译好的BIN文件。。。需要的可以测试下。。
评分
查看全部评分
那你把工程发上来,大伙帮你。看看
我知道了,他肯定有一个输出定义的地方未修改~~~
他串口测试了没问题。。。应该是其他地方。。
这个打印的是样例中的信息......并没有打印MARK的输出信息。
评分
查看全部评分