在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的範例.
问题已解决:
代码直接在SPI-FLash中执行确实非常慢(真得是慢100倍,这个与普通的单片机大不相同), 把代码复制到RAM中运行速度一下就提起来了;
好在新唐可以做到代码把自己复制到RAM中运行, 这点非常赞.