1024手机基地看电影,午夜福利视频导航,国产精品福利在线一区,亚洲欧美日韩另类成人,在线观看午夜日本理论片,成年超爽免费网站,国产精品成人免费,精品动作一级毛片,成人免费观看网站,97精品伊人久久大香蕉

標題: SHT2X溫濕傳感器測量代碼 [打印本頁]

作者: TomLai    時間: 2018-8-9 21:47
標題: SHT2X溫濕傳感器測量代碼
void Sht_Measure(void)
{
    u16 temp;
    u8 temp1, temp2;
    u8 rh1, rh2;
    u32 rh = 0;
    s32 rh_lin;

    Sht_Start();
    Sht_Send_Byte(T);
    if(Sht_Read_Ack())       //讀ACK
    {
        printf("ACK error \r\n");
        return;
    }
    Set_Data_In();
    while(SHTDATA)        //延時等待DATA變低
    {
        Led_Run();
    }
    temp1 = Sht_Read_Byte();      //讀高8位數據
    Sht_Send_Ack();        //發送一個ACK
    temp2 = Sht_Read_Byte();
    temp=(temp1<<8)+temp2;    //讀低8位并合成一個16位數據
    Sht_Send_Ack();        //發送一個ACK
    Sht_Read_Byte();       //讀CRC
    Sht_Send_Ack();        //發送一個ACK
    //printf("%x  %x  %d  \r\n", temp1, temp2, temp);
    temp_true=temp-3963;       //14bit溫度轉換,其結果為實際溫度*100
    Sht_Start();
    Sht_Send_Byte(RH);
    if(Sht_Read_Ack())       //讀ACK
    {
        printf("ACK error \r\n");
        return;
    }
    Set_Data_In();
    while(SHTDATA)        //延時等待DATA變低
    {
        Led_Run();
    }
    rh1 = Sht_Read_Byte();      //讀高8位數據
    Sht_Send_Ack();        //發送一個ACK
    rh2 = Sht_Read_Byte();
    rh=(rh1<<8)+rh2;    //讀低8位并合成一個16位數據
    Sht_Send_Ack();        //發送一個ACK
    Sht_Read_Byte();       //讀CRC
    Sht_Send_Ack();        //發送一個ACK
    rh_lin  = 0.0405*rh  - 400 - 0.0000028*rh*rh;
    rh_true = (temp_true+3963-2500)*(1+0.00008*rh)+rh_lin;
}
#endif

作者: lon7085    時間: 2018-8-10 08:56
感謝樓主的分享!




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1