ds18b20温度传感器的c51 程序.txt

来自「各种温度传感器的详细的编程技术和编程程序」· 文本 代码 · 共 63 行

TXT
63
字号
ds18b20温度传感器的C51 程序 

sbit    DQ=P1^3;    /*温度检测*/
/*初始化ds18b20*/
void init18b20(void)
{
    DQ=0;
    del500us();
        DQ=1;
    delay50us();
    do{}while(DQ);
    do{}while(!DQ);
    del500us();
}
/*写ds18b20,i为操作码*/
void wrwire(uchar i)
{
    uchar j;
    for(j=0;j<8;j++)
    {
        DQ=0;
        delay10us();
        if(i%2==1)
            DQ=1;
        else
            DQ=0;
        delay80us();
        DQ=1;            /*master release bus*/
        del100us();
        i=i>>1;
    }
}
/*读ds18b20,返回读出数据*/
uint rdwire(void)
{
    uchar i;
    uint j=0;
        for(i=0;i<12;i++)
    {
        DQ=0;
                delay10us();
        DQ=1;
        _nop_();
        _nop_();
        if(DQ)
                    j=j+ercimi(i);
        DQ=1;
        del100us();
    }
        return(j);
}
void main()
{
    init18b20();
    wrwire(0Xcc);
    wrwire(0XBE);        /*read the temperature*/
    tem1=rdwire();
    init18b20();
}

 
 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?