|
void Delay_ms(unsigned int a) //@12.000MHz,1mS延時函數(shù),代碼從STC下載器復(fù)制來
{
unsigned char i, j;
for(a;a>0;a--)
{
i = 16;
j = 147;
do
{
while (--j);
} while (--i);
}
}
從1mS到1秒,我都是用這個
誤差肯定是有的,但這重要嗎?
誤差不會很大的,不會是1S延時變成2S或者50S的,誤差肯定是在可以接受的范圍內(nèi)的
你都用軟件來進(jìn)行延時了,對精度本身就不會太大的要求了,你想軟件延時10S,誤差只有幾uS的,那得在這上面耗上多少精力?直接用定時器不就行了
高精度延時用軟件延時,這就是把好鋼用在刀把上
高精度時間控制,都是用定時器完成的
延時很短的,直接用空指令 |
|