求单片机高手帮我算下这个延时程序的500ms是怎么算出来的
DELAY:MOVR7,#250D1:MOVR6,#250D2:NOPNOPNOPNOPNOPNOPDJNZR6,D2DJNZR7,D1...
DELAY: MOV R7,#250
D1: MOV R6,#250
D2: NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R6,D2
DJNZ R7,D1 展开
D1: MOV R6,#250
D2: NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R6,D2
DJNZ R7,D1 展开
3个回答
展开全部
根据外部晶振的不同,延时1毫秒的循环次数也不一样,一般12m晶振的话用
for(j=time;j>0;j--);延时时,1毫秒time大概为125左右,这里用110,大概晶振为11.0592m,所以这段程序,内部循环完成1毫秒延时,外部循环完成500毫秒延时。
for(j=time;j>0;j--);延时时,1毫秒time大概为125左右,这里用110,大概晶振为11.0592m,所以这段程序,内部循环完成1毫秒延时,外部循环完成500毫秒延时。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
延时程序,所说的延时,是假的。
实际上,所延的,是机器周期。
实际上,所延的,是机器周期。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询