本帖最后由 数码小叶 于 2016-12-15 10:58 编辑
本来想用NUCLEO-F412ZG移植Coremark跑分的,可是两天一直没成功,所以还是把过程发出来,希望有人能看出哪不正确,感觉思路已经陷入死胡同了,问题不解决一直卡着。。。。
开始用的串口一直没输出,于是今天才用的是板载的STLINK 虚拟串口。
在确认工程可以正常输出的情况下,
然后开始移植:
将需要的6个.c文件和.h文件复制到工程下,并添加进工程
然后开始编辑Core_portme.c 文件。
首先复制原main中的初始化函数到Core_portme.c 中
然后再把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++;
}
再屏蔽相关宏定义
添加宏定义
设置迭代次数
然后把工程中的main删除,编译,无错后下载,可是就是没输出。。。。。。。。。
|