久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2993|回復: 5
打印 上一主題 下一主題
收起左側

SHT10傳感器讀取數據不成功 最高位亂碼

[復制鏈接]
回帖獎勵 15 黑幣 回復本帖可獲得 5 黑幣獎勵! 每人限 1 次(中獎概率 50%)
跳轉到指定樓層
樓主
ID:265988 發表于 2018-2-12 22:59 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
void tmep_RH_get()
{
        value humi_val,temp_val;             //定義兩個共同體 溫濕度·
        unsigned char error;                 //用于檢測是否出錯
        unsigned char checksum;                    //CRC                    
        RESET_TX();                            //啟動連接復位·
        error=0;                                 //沒有·錯誤
        error+=MEASURE_T_RH((unsigned char*)&temp_val.i,&checksum,TEMP); //測量溫度
        error+=MEASURE_T_RH((unsigned char*)&humi_val.i,&checksum,HUMI); //測量濕度
        if(error!=0) RESET_TX();                     //發生錯誤則復位
        else
        {
                humi_val.f=(float)humi_val.i;                   //轉換為浮點數
                temp_val.f=(float)temp_val.i;                  
                calc(&humi_val.f,&temp_val.f);            //修正溫濕度
                temp=temp_val.f*10;
                humi=humi_val.f*10;
                TEMP1[0]=temp/1000;
                TEMP1[1]=temp%1000/100;
                TEMP1[2]=temp%100/10;
                TEMP1[3]=temp%10;               
                RH[0]=humi/1000;
                RH[1]=humi%1000/100;
                RH[2]=humi%100/10;
                RH[3]=humi%10;               
        }
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:285001 發表于 2018-2-24 17:55 | 只看該作者
最高位亂碼是什么意思?一個bit,非零即一啊。
如果你說的是 TEMP1[0]或RH[0],從代碼上是沒有問題的,你要確認temp和humi的值是否正確,
可能性更大的是存在數組越界操作了TEMP1[0]/RH[0]。你可以從TEMP[1]開始存數據看看情況。
回復

使用道具 舉報

板凳
ID:285675 發表于 2018-2-26 15:15 | 只看該作者
你好,現在SHT10今年就要停產了,你這里怎么還用這個產品呢,
回復

使用道具 舉報

地板
ID:285675 發表于 2018-2-26 15:16 | 只看該作者
SHT10這個產品,今年就要停產了,怎么還選這個呢
回復

使用道具 舉報

5#
ID:96023 發表于 2019-12-14 11:03 | 只看該作者
MEASURE_T_RH((unsigned char*)&temp_val.i,&checksum,TEMP); 這個原函數處理處理錯,返回&temp_val.i為unshigned int 型數據,參考如下程序:
/********************************************************
SHT11溫濕度檢測
********************************************************/
char s_measure(uint16_t *p_value, uint8_t *p_checksum, uint8_t mode)
{
    unsigned error=0;
    uint8_t value_H = 0;
    uint8_t value_L = 0;
    uint16_t i;
    s_transstart(); //啟動傳輸
    switch(mode)    //選擇發送命令
    {
        case TEMP : error+=s_write_byte(MEASURE_TEMP); break; //測量溫度
        case HUMI : error+=s_write_byte(MEASURE_HUMI); break; //測量濕度
        default : break;
    }
    DATA_IN();
    for (i=0;i<65535;i++) if(IN_DATA == 0) break; //等待測量結束
    if(IN_DATA) error+=1; // 如果長時間數據線沒有拉低,說明測量錯誤
    value_H = s_read_byte(ACK); //讀第一個字節,高字節 (MSB)
    value_L = s_read_byte(ACK); //讀第二個字節,低字節 (LSB)
//    *(p_value) = s_read_byte(ACK); //讀第一個字節,高字節 (MSB)
//    *(p_value+1) = s_read_byte(ACK); //讀第二個字節,低字節 (LSB)
    *p_value = (value_H << 8)| value_L;
    *p_checksum = s_read_byte(noACK); //read CRC校驗碼
    return error; // error=1 通訊錯誤
}
回復

使用道具 舉報

6#
ID:627214 發表于 2019-12-14 19:58 | 只看該作者
試著清零一下看看,或者延時一下
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 最新国产在线 | 亚洲欧洲在线视频 | 免费影视在线观看 | 国产精品久久久久久久粉嫩 | 伊人精品久久久久77777 | 日韩高清国产一区在线 | 乳色吐息在线观看 | 国产精品1区 | 鸳鸯谱在线观看高清 | 91精品久久久久久久久中文字幕 | 日韩精品在线免费 | 日韩在线视频免费观看 | 欧美日韩一区二区三区四区五区 | 国产福利在线 | 精品不卡 | 精品国产乱码久久久久久中文 | 狠狠干夜夜草 | 国产综合久久久久久鬼色 | 日韩亚洲一区二区 | 91精品国产一区二区三区动漫 | 亚洲区一区二 | 久色网| 日韩资源 | 91看片网址| 成人中文字幕在线 | 免费九九视频 | 一区二区免费看 | 国产亚洲精品区 | 亚洲成人午夜在线 | 涩涩鲁亚洲精品一区二区 | 免费在线观看一区二区三区 | 91视频在线| 亚洲精品av在线 | 丁香婷婷综合激情五月色 | 久久精品色视频 | 亚洲字幕在线观看 | 日韩成人一区 | 日韩免 | 日本h片在线观看 | 天天操操操操操 | 亚洲欧美日韩在线一区二区 |