|
基于mini2440看门狗的100us延时程序的问题
[复制链接]
小弟初学ARM,哪位大侠帮忙给解释下这个程序:
static int delayloopCount = FCLK/10000/10; //delayloopCount的值怎么设定?
void Delay(int time)
{
int i,adjust=0;
if(time==0)
{
time = 200;
adjust = 1; //设定adjust的作用?
delayloopCount = 400;
rWTCON=((PCLK/1000000-1)<<8)|(2<<3); //预分频器值(PCLK/1000000-1)?
rWTDAT=0xffff;
rWTCNT=0xffff;
rWTCON=((PCLK/1000000-1)<<8)|(2<<3)|(1<<5);
}
for(;time>0;time--)
for(i=0;i
if(adjust==1)
{
rWTCON=((PCLK/1000000-1)<<8)|(2<<3);
i=0xffff - rWTCNT;
delayloopCount=8000000/(i*64); //8000000/(i*64)?怎么得来的
}
}
|
|