欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: lcd1602顯示溫度ds18b20 [打印本頁]

作者: 仰望753521    時間: 2018-5-11 22:03
標題: lcd1602顯示溫度ds18b20
以下是部分關鍵代碼:
int getTmpValue()
{
    unsigned int tmpvalue;
    int value;
    float t;
    unsigned char low, high;
    sendReadCmd();

    low = readByte();
    high = readByte();

    tmpvalue = high;
    tmpvalue <<= 8;
    tmpvalue |= low;
    value = tmpvalue;

  \
    t = value * 0.0625;
    \
    value = t * 100 + (value > 0 ? 0.5 : -0.5); //′óóú0¼ó0.5, D¡óú0¼õ0.5
    return value;
}

void display(int v)
{
    unsigned char count;
    unsigned char datas[] = {0, 0, 0, 0, 0};
    unsigned int tmp = abs(v);
    datas[0] = tmp / 10000;
    datas[1] = tmp % 10000 / 1000;
    datas[2] = tmp % 1000 / 100;
    datas[3] = tmp % 100 / 10;
    datas[4] = tmp % 10;
    writeComm(0xc0+3);
    if(v < 0)
    {
        writeString("- ", 2);
   }
    else
    {
       writeString("+ ", 2);
    }
    if(datas[0] != 0)
    {
        writeData('0'+datas[0]);
    }
    for(count = 1; count != 5; count++)
    {
        writeData('0'+datas[count]);
        if(count == 2)
        {
            writeData('.');
        }
    }
}
/**//*****************************DS18B20*******************************/

void main()
{
    uchar table[] = "  xianzaiwendu: ";
    sendChangeCmd();
    init();
    writeComm(0x80);
    writeString(table, 16);
    while(1)
    {
        delayMs(1000); //ζè×a»»ê±¼äDèòa750msòÔéÏ
        writeComm(0xc0);
        display(getTmpValue());
        sendChangeCmd();
    }
}
...................
具體請下載附件^v^..............

【實驗58】DS18B20溫度計(1602顯示).rar

24.53 KB, 下載次數: 58, 下載積分: 黑幣 -5






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