你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

NUCLEO-F412ZG移植Coremark失败,求解---(问题已解决)

[复制链接]
数码小叶 提问时间:2016-12-14 11:18 /
本帖最后由 数码小叶 于 2016-12-15 10:58 编辑

本来想用NUCLEO-F412ZG移植Coremark跑分的,可是两天一直没成功,所以还是把过程发出来,希望有人能看出哪不正确,感觉思路已经陷入死胡同了,问题不解决一直卡着。。。。


开始用的串口一直没输出,于是今天才用的是板载的STLINK 虚拟串口。
在确认工程可以正常输出的情况下,
QQ截图20161214102620.png


然后开始移植:

将需要的6个.c文件和.h文件复制到工程下,并添加进工程
QQ截图20161214103052.png




然后开始编辑Core_portme.c 文件。
首先复制原main中的初始化函数到Core_portme.c 中
QQ截图20161214103447.png




然后再把main中相关函数复制过来。




修改start_time函数如下
  1. void start_time(void)
  2. {
  3.         Tick = 0;
  4.   SysTick_Config(SystemCoreClock/1000);
  5. };
复制代码


修改stop_time函数如下
  1. void stop_time(void)
  2. {
  3.         SysTick->CTRL &=SysTick_Counter_Disable;
  4.   SysTick->VAL = SysTick_Counter_Clear;      
  5. }
复制代码




修改CORE_TICKS get_time函数如下
  1. CORE_TICKS get_time(void)
  2. {
  3.         CORE_TICKS elapsed =(CORE_TICKS)Tick;
  4.   return elapsed;
  5. }
复制代码





修改stm32f4xx_it.h中的SysTick_Handler函数如下
  1. void SysTick_Handler(void)
  2. {
  3.     extern __IO uint32_t Tick;
  4.     Tick++;
  5. }
复制代码




再屏蔽相关宏定义
QQ截图20161214104811.png




添加宏定义
QQ截图20161214104959.png


设置迭代次数
QQ截图20161214105212.png


然后把工程中的main删除,编译,无错后下载,可是就是没输出。。。。。。。。。






收藏 1 评论24 发布时间:2016-12-14 11:18

举报

24个回答
wolfgang2015 回答时间:2016-12-14 11:30:34
Print 的函数呢?
数码小叶 回答时间:2016-12-14 11:33:23
  1. #ifdef __GNUC__
  2. #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
  3. #else
  4. #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
  5. #endif /* __GNUC__ */


  6. PUTCHAR_PROTOTYPE
  7. {
  8.   
  9.   HAL_UART_Transmit(&UartHandle, (uint8_t *)&ch, 1, 0xFFFF);

  10.   return ch;
  11. }
复制代码
creep 回答时间:2016-12-14 11:44:02
debug看下是不是fault了,如果是的话修改下堆栈大小。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

风子 回答时间:2016-12-14 11:44:15
https://www.stmcu.org.cn/module/forum/thread-609484-1-1.html
楼主可看看这篇,在412也测试成功的

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

moyanming2013 回答时间:2016-12-14 12:03:46
用“调试单步走+看变量和内存”可解决。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

Paderboy 回答时间:2016-12-14 13:26:09

按照教程一步一步检查下。。。


stm32f412zg-coremark-10.png

编译好的BIN文件。。。需要的可以测试下。。 STM32F412ZG_coremark.rar (13.22 KB, 下载次数: 9)

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

数码小叶 回答时间:2016-12-14 14:08:46
风子 发表于 2016-12-14 11:44
https://www.stmcu.org.cn/module/forum/thread-609484-1-1.html
楼主可看看这篇,在412也测试成功的 ...

已经崩溃了。。。。
数码小叶 回答时间:2016-12-14 14:09:39
Paderboy 发表于 2016-12-14 13:26
按照教程一步一步检查下。。。

这个bin给我也没用啊,我只是想跳出坑
Paderboy 回答时间:2016-12-14 14:38:20
数码小叶 发表于 2016-12-14 14:09
这个bin给我也没用啊,我只是想跳出坑

那你把工程发上来,大伙帮你。看看
123下一页

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版