void Delay10ms(unsigned int c) //误差 0us
{
unsigned char a,b;
for(; c>0; c--) //c可以不用初始化,因为默认传的参数即为初始化
for(b=38; b>0; b--)
for(a=130; a>0; a--); //最后一个for循环别忘记有分号
}
Delay10ms(100);/表示100个10ms=1s
//计算方法:c*38*130 us
以12MHZ的晶振为例,一个for循环2个指令周期,一个指令周期1us,二个指令周期2us。