Arduino DS18B20编译错误解决方法

DS18B20.cpp: In member function 'uint8_t DS18B20::getResolution()':

DS18B20.cpp:101:1: error: control reaches end of non-void function [-Werror=return-type] 101 | } | ^ cc1plus.exe: some warnings being treated as errors exit status 1 Compilation error: exit status 1 

 

打开文件:
c:\Users\XXX\Documents\Arduino\libraries\DS18B20\src\DS18B20.cpp
找到 getResolution() 函数(错误发生在第 101 行附近)。

修改为

uint8_t DS18B20::getResolution() {
    switch (selectedScratchpad[CONFIGURATION]) {
        case RES_9_BIT:
            return 9;
        case RES_10_BIT:
            return 10;
        case RES_11_BIT:
            return 11;
        case RES_12_BIT:
            return 12;
        default:  // 添加 default 分支
            return 12;  // 默认返回 12 位分辨率
    }
}

 

posted @ 2025-06-02 12:42  木子欢儿  阅读(13)  评论(0)    收藏  举报