中级会员
 
- 积分
- 236
- 金钱
- 236
- 注册时间
- 2021-6-19
- 在线时间
- 67 小时
|

楼主 |
发表于 2021-10-13 09:34:30
|
显示全部楼层
大家好,我参照时序,重新修改了代码,但是还是只有温度有效值
- float SHT85_Read1(void)
- {
- uint8_t i;
- CMD_Write(SINGLE_MEAS_MEDIUM); //写入单次测量命令
- delay_ms(5);
- IIC_Start();
- IIC_Send_Byte(SHT85_I2C_ADDR << 1 | 0x01);
- while (IIC_Wait_Ack());
- IIC_Stop();
- delay_ms(5);
- IIC_Start();
- IIC_Send_Byte(SHT85_I2C_ADDR << 1 | 0x01);
- while (IIC_Wait_Ack());
- delay_us(5);
- for (i = 0; i < 6; i++)
- {
- if (i == 5) { *(rxbufsht31 + i) = IIC_Read_Byte(0); }
- else { *(rxbufsht31 + i) = IIC_Read_Byte(1); }
- }
- IIC_Stop();
- BUFt[0] = rxbufsht31[0]; //温度
- BUFt[1] = rxbufsht31[1];
- BUFh[0] = rxbufsht31[3]; //湿度
- BUFh[1] = rxbufsht31[4];
- printf("%d %d %d %d %d %d \r\n", rxbufsht31[0], rxbufsht31[1], rxbufsht31[2], rxbufsht31[3], rxbufsht31[4], rxbufsht31[5]);
- hum = 100.0f * (float)(BUFh[0] * 256 + BUFh[1]) / 65535.0f;
- //printf("%.2f\r\n",175.0f * (float)(BUFt[0]*256+BUFt[1]) / 65535.0f - 45.0f);
- return hum;
- }
复制代码
|
|