纪国圣 发表于 2020-7-5 11:06

【华大测评】+ 奇怪的时钟配置

今天在HC32F460-EVB上移植CoreMark时遇到了一个非常奇怪的问题。在移植前搭建了一个工程模板,并定时通过串口输出字符串,结果程序正常。可是在加上coremark程序后,时钟配置始终失败。先说一下我的移植过程。

首先从官网下载coremark程序,并将下列程序复制到工程文件夹中:

之后添加头文件路径:

并将文件添加至工程:

之后修改portme.c文件:







然后修改portme.h:

然后修改ddl_config.h的中断和TIMER0的使能位:

注释main.c文件中的main函数,然后编译仿真,结果出现时钟配置失败的情形:

timeout始终为0,造成程序一直延时等待。
之后将SystemClockConfig(void)放置在core_main.c中的main函数中:


结果仍然一样:

caizhiwei 发表于 2020-7-5 11:12

历程中的主频只有8Mhz

纪国圣 发表于 2020-7-5 11:15

上传一下有问题的工程源码:

纪国圣 发表于 2020-7-5 12:05

caizhiwei 发表于 2020-7-5 11:12
历程中的主频只有8Mhz

关键是加了一个coremark时钟就不对了。如果进入Hardfault还好说,可是时钟配置出问题实在不能理理解。

masterqqq 发表于 2020-7-5 15:28

STM的CoreMark也在SystemClockConfig()时钟上出问题

0520kuang 发表于 2020-9-8 17:41

请教一下,这个coremark,是RTOS???
有coremark的介绍吗

martinhu 发表于 2020-9-9 13:59


运行程序后发现是卡在延时的代码上,查看汇编和寄存器,R0自加1是OK的,但是STR结果存储不了,
注意SP寄存器地址,是栈溢出了。

纪国圣 发表于 2020-9-9 14:31

martinhu 发表于 2020-9-9 13:59
运行程序后发现是卡在延时的代码上,查看汇编和寄存器,R0自加1是OK的,但是STR结果存储不了,
注意SP寄存 ...

谢谢这位兄弟的指点{:lol:}。

WFD121 发表于 2020-9-23 17:32

很难用的单片机

mtswz213 发表于 2020-9-28 21:12

今天测试,只能上80mhz,设置为160mhz跑不起来,好像也是死在lz程序这个地方

java0735 发表于 2020-9-29 13:38

本帖最后由 java0735 于 2020-9-30 13:21 编辑

mtswz213 发表于 2020-9-28 21:12
今天测试,只能上80mhz,设置为160mhz跑不起来,好像也是死在lz程序这个地方


页: [1]
查看完整版本: 【华大测评】+ 奇怪的时钟配置