软件延时程序详解

2020-01-23 14:43发布

void delay()
{unsigned char i,j;
for(i=0;i<10;i++)
for(j=0;j<33;j++);


void delay1(unsigned int z)
{unsigned int j,k;
for(j=z;j>0;j--)
for(k=120;k>0;k--);



请大家帮忙计算下延时时间,频率12M,z=2,书上计算delay的公式(3*j+2)*i=1010us,下面那个算就不对,请详解。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
flor
1楼-- · 2020-01-23 16:13
timer延时吧。。。
jswd0810
2楼-- · 2020-01-23 20:29
 精彩回答 2  元偷偷看……
zjk
3楼-- · 2020-01-23 23:17
嗯,这个肯定不精确的,毕竟还有执行for语句的时间
jamasliu
4楼-- · 2020-01-24 03:42
谢谢你的软件,我只是想知道怎么一个计算公式,算出大概的延时时间。
fzkqi
5楼-- · 2020-01-24 04:12
char和int肯定不一样,自己看汇编,可以算出个大概的公式,但不完全准
Maurice
6楼-- · 2020-01-24 09:30
这个问题问的好奇怪,同样频率的晶振,分别在AT89C51和ATMEGA8上你试下你这么算行不行的通?

一周热门 更多>