新聞中心

        DS18B20和ADC0832共同使用

        作者: 時(shí)間:2016-12-01 來源:網(wǎng)絡(luò) 收藏
        WriteOneChar(unsigned char dat){unsigned char i=0;for(i=8;i>0;i--){DQ=0;DQ=dat&0x01;delay_18b20(5);DQ=1;dat>>=1;}}Read_Temperature(void){Init_DS18B20() ;WriteOneChar(0xCC) ; // 跳過讀序號(hào)列號(hào)的操作WriteOneChar(0x44) ; // 啟動(dòng)溫度轉(zhuǎn)換Init_DS18B20() ;WriteOneChar(0xCC) ; //跳過讀序號(hào)列號(hào)的操作WriteOneChar(0xBE) ; //讀取溫度寄存器temp_data[0] = ReadOneChar(); //溫度低8位temp_data[1] = ReadOneChar(); //溫度高8位}Disp_Temperature(){display[4]=temp_data[0]&0x0f;display[0]=ditab[display[4]]; //查表得小數(shù)位的值display[4]=((temp_data[0]&0xf0)>>4)|((temp_data[1]&0x0f)<<4);display[3]=display[4]/100 ;display[1]=display[4]%100 ;display[2]=display[1]/10;display[1]=display[1]%10;if(display[3]==0) //高位為0,不顯示{display[3]=10 ; if(display[2]==0) //次高位為0,不顯示display[2]=10 ;}}display1(){P2=tablewe[0]; //P2口低四位位選P0=table[display[3]]; //P0口數(shù)碼管段選delay_18b20(50);P2=tablewe[1];P0=table[display[2]];delay_18b20(50);P2=tablewe[2];P0=table1[display[1]];delay_18b20(50);P2=tablewe[3];P0=table[display[0]];}void main(){while(1){ Read_Temperature();Disp_Temperature();display1();ad();cal();display2();}}這個(gè)程序可以使用,但是就是沒有辦法顯示低溫零度以下的,求修改!
        上一頁 1 2 下一頁

        關(guān)鍵詞: DS18B20ADC0832共同使

        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 天门市| 阿尔山市| 闻喜县| 化隆| 保山市| 隆化县| 辰溪县| 汾阳市| 阳谷县| 延长县| 蒲城县| 南和县| 井陉县| 沂南县| 金华市| 定南县| 金溪县| 双鸭山市| 浮山县| 布尔津县| 元阳县| 仁化县| 浙江省| 子长县| 辰溪县| 高淳县| 平塘县| 靖江市| 且末县| 灵武市| 浠水县| 林甸县| 芜湖县| 宜君县| 平湖市| 上林县| 阿坝县| 托克托县| 岱山县| 麻城市| 嘉禾县|