[应用方案] 这个空指令怎么用的啊?

[复制链接]
686|13
 楼主| xia00 发表于 2020-2-23 20:47 | 显示全部楼层 |阅读模式
#define  NOP() _nop_()  /* 定义空指令 */
这个空指令怎么用的啊?
hfdy01 发表于 2020-2-23 20:59 | 显示全部楼层
可以当很短时间的延时使用
CallReceiver 发表于 2020-2-23 21:00 | 显示全部楼层
调用就可以了
NOP() ;
boy1990 发表于 2020-2-23 21:05 | 显示全部楼层


uchar Read(void) /*读一个字节的数据,并返回该字节值*/   
{   
        
    uchar temp=0;   
        
    uchar temp1=0;   
        
    uchar BitCounter=8;   
        
    Sda=1;   
        
    do{         
        Scl=0;   
            
        _nop_ ();   
            
        _nop_ ();   
            
        _nop_ ();   
            
        _nop_ ();   
            
        Scl=1;   
            
        _nop_ ();   
            
        _nop_ ();   
            
        _nop_ ();   
            
        _nop_ ();   
            
        if(Sda) /*如果Sda=1;*/               
            temp=temp|0x01; /*temp的最低位置1*/         
        else               
            temp=temp&0xfe; /*否则temp的最低位清0*/   
            
        if(BitCounter-1)               
        {     
            temp1=temp<<1;              
            temp=temp1;            
        }   
            
        BitCounter--;   
            
    }while(BitCounter);   
        
    return(temp);   
        
}
androidbus 发表于 2020-2-23 21:10 | 显示全部楼层
相当于延时   你就这么记
litengg 发表于 2020-2-23 21:14 | 显示全部楼层

空指令就是什么也不做,耗费一个指令周期。
qiangweii 发表于 2020-2-23 21:15 | 显示全部楼层
个人观点:调试设置断点的时候用
laozhongyi 发表于 2020-2-23 21:19 | 显示全部楼层
进行最低消耗的延时。
Edisons 发表于 2020-2-23 21:20 | 显示全部楼层

代码肯定需要延时的时候使用的
_gege 发表于 2020-2-23 21:23 | 显示全部楼层
你选的芯片与实际用的芯片是否一致?
Mozarts 发表于 2020-2-23 21:23 | 显示全部楼层
楼主没有做过延时显示的函数吗?
bbapple 发表于 2020-2-23 21:27 | 显示全部楼层
通过nop指令产生一定的延迟
handleMessage 发表于 2020-2-23 21:27 | 显示全部楼层
空指令最大的作用是占位。
zhouhuanの 发表于 2020-2-23 21:31 | 显示全部楼层
_NOP_();一般用来做延时作用的。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

179

主题

1867

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部