您的位置:首页 > 运维架构

单片机中的NOP指令

2014-05-08 13:21 316 查看
在单片机中的很多程序中都能看见NOP这条指令的身影,有些人很疑惑这条空空的指令到底有什么用呢,,经过多次的实验,,我终于证实(呀,谁扔的番茄)主要有两条作用:

1,精确定时:NOP指令时间为1个周期,12M晶振的活呢是1US秒的时间。非常的准确。如

如果晶振用12Mz的话,这样一个机器周期为1us。 

          MOV R0,#0FFH

DLY_LP:

           NOP                       执行一次所需时间为1us       

           NOP                       执行一次所需时间为1us

           DJNZ R0,DLY_LP    执行一次所需时间为2us

这个延时程序的总延时时间为:(1+1+2)×255=1020us 。

DELAY:   

           MOV R0,#0FFH

           MOV R1,#0FFH

DLY_LP:

           NOP                          执行一次所需时间为1us

           NOP                          执行一次所需时间为1us

           DJNZ R0,DLY_LP        执行一次所需时间为2us

           MOV R0,#0FFH          执行一次所需时间为1us

       
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: