新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AT89C52控制溫度傳感器DS18B20并在LM016L_LCD上顯示

        AT89C52控制溫度傳感器DS18B20并在LM016L_LCD上顯示

        作者: 時間:2018-07-24 來源:網絡 收藏

        lcden=0;
        delay(5);
        }


        //----------------------------------------
        //函 數 名:lcd_init
        //函數類型:void
        //入口參數:None
        //出口參數:None
        //說明:液晶初始化
        //----------------------------------------
        void lcd_init()
        {
        lcden=0;
        lcdrw=0;
        write_com(0x38); //顯示模式
        write_com(0x0c); //開顯示,關光標
        write_com(0x06); //寫字符后地址加1,光標加1
        write_com(0x01); //清屏
        }


        //----------------------------------------
        //函 數 名:display_tempt
        //函數類型:void
        //入口參數:None
        //出口參數:None
        //說明:溫度數據顯示
        //----------------------------------------
        void display_tempt(uint date)
        {
        uchar i,j,k;
        i=date/100;//十位
        j=date0/10;//個位
        k=date0;//小數位
        write_com(0x80+0x40+5);
        write_data(disp[i]);
        write_data(disp[j]);
        write_data('.');
        write_data(disp[k]);
        }

        本文引用地址:http://www.104case.com/article/201807/383597.htm


        //----------------------------------------
        //函 數 名:reset_temp
        //函數類型:void
        //入口參數:None
        //出口參數:None
        //說明:復位,初始化
        //----------------------------------------
        void reset_tempt()
        {
        uint i;
        tempt=0;
        i=90;//延時
        while(i>0)i--;
        tempt=1;
        i=4;//延時
        while(i>0)i--;
        }


        //----------------------------------------
        //函 數 名:read_bit()
        //函數類型:bit
        //入口參數:None
        //出口參數:dat
        //說明:讀一位數據
        //----------------------------------------
        bit read_bit()
        {
        uint i;
        bit dat;
        tempt=0;
        i++;//延時
        tempt=1;
        i++;
        i++;
        dat=tempt;
        i=8;//延時
        while(i>0)i--;
        return dat;
        }


        //----------------------------------------
        //函 數 名:read_tempt()
        //函數類型:uchar
        //入口參數:None
        //出口參數:dat
        //說明://讀一個字節數據
        //----------------------------------------
        uchar read_tempt()
        {
        uchar i,j,dat;
        dat=0;
        for(i=1;i=8;i++)
        {
        j=read_bit();
        dat=(j7)|(dat>>1); //將讀取的數據按讀取的先后順序,從低位到高位排列保存到dat
        }
        return dat;
        }


        //----------------------------------------
        //函 數 名:write_byte()
        //函數類型:void
        //入口參數:uchar dat
        //出口參數:None
        //說明:寫一個字節數據到DS18B20
        //----------------------------------------
        void write_byte(uchar dat)
        {
        uint i;
        uchar j;
        bit testbit;
        for(j=1;j=8;j++)
        {
        testbit=dat0x01;//每次只寫一位數據
        dat=dat>>1;
        if(testbit)



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 昌邑市| 彩票| 拉萨市| 故城县| 上栗县| 乌苏市| 望城县| 娄烦县| 诏安县| 武定县| 嘉义县| 香港 | 巴马| 会泽县| 衡水市| 柘荣县| 临泉县| 湘潭市| 蒙城县| 句容市| 繁峙县| 克什克腾旗| 茌平县| 广平县| 瓮安县| 嘉兴市| 乌鲁木齐市| 江孜县| 五大连池市| 青冈县| 贞丰县| 桦南县| 临澧县| 甘孜县| 历史| 新营市| 马公市| 泰兴市| 武夷山市| 淅川县| 邹城市|