这是用timer做延时。配置完周期后就在等timer中断改标志, while(flagIsrCnt); 然后再退出,作用是一样的。
你的代码对应的是一个二层for 循环:
for(i=count; i>0; i--) {
for(j=0; j<138; j++)
{ asm( "nop");}
}
只是在你原来的芯片上1us对应的就是138个循环,在新平台上,你需要测算一下要多少循环。
这是用timer做延时。配置完周期后就在等timer中断改标志, while(flagIsrCnt); 然后再退出,作用是一样的。
你的代码对应的是一个二层for 循环:
for(i=count; i>0; i--) {
for(j=0; j<138; j++)
{ asm( "nop");}
}
只是在你原来的芯片上1us对应的就是138个循环,在新平台上,你需要测算一下要多少循环。