51单片机延时程序求解

2019-07-15 13:04发布


/*******************************************************************************
* 函 数 名         : Delay10ms
* 函数功能                   : 延时函数,延时10ms
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/

void Delay10ms(unsigned int c)   //误差 0us
{
    unsigned char a, b;

        //--c已经在传递过来的时候已经赋值了,所以在for语句第一句就不用赋值了--//
    for (;c>0;c--)
        {
                for (b=38;b>0;b--)
                {
                        for (a=130;a>0;a--);
                }

        }      
}


求大神解释下这时间是怎么算的啊

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
lunhui1
1楼-- · 2019-07-15 14:09
 精彩回答 2  元偷偷看……
linchenfeng
2楼-- · 2019-07-15 14:16
仅仅是软件模拟的延时,相当于是使用的控制令来做延时(机器周期)   ,是不可能达到精度的,会有误差。
keil-uvision4
3楼-- · 2019-07-15 14:44
先编译,然后调试,看汇编代码计算。STC-ISP软件里有指令集的表格。

一周热门 更多>