这一段C51程序是什么意思,请行家解释一下

voidDelay_ms(unsignedintt)//@11.0592MHz{unsignedchari,j;while(--t){_nop_();i=11;j=190... void Delay_ms(unsigned int t) //@11.0592MHz
{
unsigned char i, j;
while(--t)
{
_nop_();
i = 11;
j = 190;
do
{
while (--j);
} while (--i);
}
}
/*这是智能循迹小车的开头程序,但这里的语句看起来有点不合C的语法呀?我一点都看不懂。
1.这里t是不是一个变量?它的初值是多少?没有赋值呀?
2.while(--t);while(--j); while(--i);分别是怎么循环的?希望能描述一下这些语句对小车产生的作用和效果是什么样的?
3.如果您不知C51语言,请不要乱回答。谢谢!
/*这是整个原程序的原文:*/
#include "reg52.h"#include "intrins.h"
sbit ENA=P1^4;
sbit ENB=P1^3;
sbit OUT1=P3^6;
sbit OUT2=P3^5;
sbit OUT3=P3^4;
sbit OUT4=P3^3;

sbit track1=P1^0;sbit track2=P1^7;
void Delay_ms(unsigned int t) //@11.0592MHz
{
unsigned char i, j;
while(--t)
{
_nop_();
i = 11;
j = 190;
do
{
while (--j);
} while (--i);
}
}//下面还有,因为字数限止发不上来了。
展开
 我来答
ghost4063
2013-04-12 · TA获得超过6522个赞
知道大有可为答主
回答量:2940
采纳率:75%
帮助的人:2771万
展开全部
1、这不是一个完整的C程序,仅仅是一个延时函数,标准的C程序必须包括main函数。
2、t是函数的参数,在调用的时候,将t值传入,这个值就相当于你说的初值了。
3、3个while可以看出,这是3层循环,所以总的循环次数是j*I*t,即乘数关系。因为只使用1层或2层循环的话,循环次数受char类型的限制,所以,必须使用3层循环。
4、这个函数的作用应当是控制小车的速度。
中智咨询
2024-08-28 广告
在当今竞争激烈的商业环境中,企业需要不断提高自身的竞争力,以保持市场份额和增加利润。通过人效提升,企业可以更有效地利用有限的资源,提高生产力和效益,从而实现盈利目标。中智咨询提供全方位的组织人效评价与诊断、人效提升方案等数据和管理咨询服务。... 点击进入详情页
本回答由中智咨询提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式