单片机中什么时候用空操作

来源:百度知道 编辑:UC知道 时间:2024/05/17 03:33:11
延时指令编写的时候,NOP空操作有代表延时多久吗?

NOP运行时间是一个机器周期,也就是执行一条普通哦南方指令的时间。在PIC单片机系列中,一个机器周期=4个时钟周期。所以具体的时间要根据不同的处理器来定。
那么既然NOP 是一条空指令为什么还要用到呢?
这主要是为了避免总线数据冲突!
随着单片机硬件水平的提高,单片机的频率越来越高,指令也就执行的越来越快!中线技术也出现了哈佛中线结构,即数据线与地址总线的分离,还有增强型总线结构,比如DSP。但在实际的指令高速运行的时候,仍然有可能出现指令冲突。即上一条指令还没有执行完,而时间不等人,下一条指令有开始执行了.如果在这两条指令之间加一条NOP语句,就会避免冲突的产生。
总之,这是一种非常有效的方法.

延时一般是为了让某个器件有足够的反应时间,来完成我们所需要的功能;或者是为了避免外部输入的干扰而进行延时等,比如常见的延时去抖.数字系统里,时序的概念很重要.有时必要的延时也是为了达到时序的严格.我想你会在以后的设计中慢慢体会的.
一个NOP代表延时1个机器周期.51里面也就是晶振周期的12分频.

一个机器周期,一般NOP我觉得是在有上升或者下降沿的时候给个确保的时间,一个两个三个都可以

NOP延时12个时钟周期,即一个机器周期