我尝试在 Sensor Controller Studio 中使用温度传感器 SHT21。
代码:
i2cStart();
i2cTx (I2C_OP_WRITE | ALS_I2C_ADDR);//0x40<<1.
i2cTx (trig_T_measuring_HM);//0xe3
i2cStop();
fwDelayU (100、FW_DELAY_RANGE_100_MS);
i2cStart();
i2cTx (I2C_OP_Read | ALS I2C_ADDR);
if (state.i2cStatus = 0x0000){
U16结果 H;
U16结果 L;
U16 CRC;
i2cRxAck (resultH);
i2cRxAck (resultL);
i2cRxNack (CRC);
output.value =(resultH << 8)| resultL;
}
i2cStop();
有时(40%的样本)、它返回正确的值、有时(40%)- 0、有时(20%)-随机值。
已尝试播放延迟,RepeatedStart(),i2cStatus -运气不好。
Arduino 板上具有相同传感器的相同代码工作正常。
我出了什么问题?