仪器社区

sht11温湿度传感器程序中有一句语句: DATA=!ack; =!请问是什么意思?

xf香蕉姐 2018-12-05
chars_read_byte(unsignedcharack)//----------------------------------------------------------------------------------{unsignedchari,val=0;DATA=1;//释放数据线for(i=0x80;i>0... char s_read_byte(unsigned char ack)
//----------------------------------------------------------------------------------
{
unsigned char i,val=0;
DATA=1; //释放数据线
for(i=0x80;i>0;i>>=1) //高位为1,循环右移
{
SCK=1;
if(DATA) val=(val|i); //读一位数据线的值 ?
SCK=0;
} DATA=!ack; //如果是校验,读取完后结束通讯; ? SCK=1; _nop_();_nop_();_nop_(); //延时3us SCK=0; _nop_();_nop_();_nop_(); DATA=1; //释放数据线 return val; } 上面程序中: DATA=!ack; 这一句怎么解释,其中 != 运算符? if(DATA) val=(val|i); 这一句怎么读一位数据线的值的呢?
评论
全部评论
您可能感兴趣的社区主题
加载中...
发布 评论