40mhz 没有分频了话 也就是说一个时钟周期是1/40us,,,这个程序是说 ms等于几 就是延时几毫秒。最少是延时1ms,因为这句话( if (ms<1) ms=1;)
接着,,,两个for循环意思是 数这么多下:ms*3338
数一下的时间是一个机器周期, 机器周期=2n*时钟周期(n代表这个类型的mcu的一个机器周期是由几个状态周期组成的,而一个状态周期=2个时钟周期)
假设你用的51内核,机器周期=12时钟周期
当ms=1时
delay=1*3338*1/40*12=1001.4us=1.0014ms
|
|