理论
asm(nop);具体延时_Mr_White01的博客-CSDN博客_asm(“nop”)
准备测试函数
while(1){
LED_VA_R_ON();
MYDELAY(0);
LED_VA_R_OFF();
MYDELAY(0);
};
就是循环开灯/关灯
测试的时候 万用表鳄鱼夹----一排口的COM标识的2个随便 都是GND
尖头---PWR(V)的靠近 近距离边缘的LED
看图我们是40MHZ的晶振
那么12*1/40=0.3us
unsigned int MYDELAY( unsigned int a){
/* Hardware manual recommends 5us delay after enabling clock & reset */
for (int i=0;i<10;i++) {
asm("nop");
}
return 0;
}
这个函数 执行一次 预计延时是3us
结果
基本就是3US的 符合要求!