【NUC505】BOOT模式SPI比ICE-SPI慢100倍,这是为什么?

houj_cn |浏览2013次
收藏|2015/09/05 10:19

在NUC505开发板上试验时发现:

BOOT模式选成SPI时,  速度极慢, 经过测试,发现要慢100倍以上,下面是测试代码

static void t_Delay(uint32_t delayCnt) {
while (delayCnt--) {
     __NOP();
     __NOP();
}
}

uint32_t testSpeed(uint32_t n){
    uint32_t pre=util_getTickCount();
    for(uint32_t i=0;i<n;i++){
       t_Delay(n);
    }
    return util_getTickCount()-pre;
}

满意回答

2022/09/06 16:45

應該是boot時code放的位置不同.

將code下載到flash再放到SRAM跑, 和直接初始到SRAM跑的速度差異.

可以參考NUC505的BSP \SampleCode\BootTemplate的範例.

CHLIN55

其他回答(1)
  • 问题已解决:

    代码直接在SPI-FLash中执行确实非常慢(真得是慢100倍,这个与普通的单片机大不相同), 把代码复制到RAM中运行速度一下就提起来了;

    好在新唐可以做到代码把自己复制到RAM中运行, 这点非常赞.


    回答于 2015/09/08 11:40
0人关注该问题
+1
 加载中...