freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于51單片機(jī)及ds18b20溫度傳感器的數(shù)字溫度計(jì)程序(更新版)

  

【正文】 * * 程序名 。} if((temp+temp_d*)min)//當(dāng)測(cè)量值小于最小值時(shí)不報(bào)警 {w=0。(temp+temp_d*)min) {w=0。 //向暫存器 TL(下限溫度暫存器)寫溫度 ds18b20_write(0xff)。 //小數(shù)部分 temp_d=a。0x0f)。0x80)==0x80)//若讀取的下限溫度的最高位(符號(hào)位)為‘ 1’表明是負(fù)溫度 {f_min=1。 //讀內(nèi)部 RAM ( LSB) b=ds18b20_read()。//向 DS18B20發(fā)跳過(guò)讀 ROM 命令 ds18b20_write(0x44)。0x01。 //返回讀取的值 } /*************************ds18b20 字節(jié)寫函數(shù) **************************/ void ds18b20_write(uchar d) // ds18b20字節(jié)寫 { uchar i。 //d 左移一位,低位先發(fā); DQ = 0。 //等待 DS18B20拉低總線 智筆記 4 ds18b20_delayus(20)。i) for(j=120。 //測(cè)量溫度的小數(shù)部 bit f=0。 //報(bào)警函數(shù) keyscan()。 //關(guān)閉蜂鳴器 led=1。 K1是用來(lái) * 進(jìn)入上下限調(diào)節(jié)模式的,當(dāng)按一下 K1進(jìn)入上限調(diào)節(jié)模式,再按一下進(jìn)入下限 * 調(diào)節(jié)模式。 * 編程者: Jason * 編程時(shí)間: 2020/10/2 *********************************************************************/ include //將 include //將 (調(diào)用其中的 _nop_()空操作函數(shù)延時(shí)) define uint unsigned int //變量類型宏定義,用 uint 表示無(wú)符號(hào)整形( 16位) define uchar unsigned char //變量類型宏定義,用 uchar表示無(wú)符號(hào)字符型( 8位) uchar max=0x00,min=0x00。 //首次啟動(dòng) DS18B20獲取溫度( DS18B20上點(diǎn)后自動(dòng)將 EEPROM 中的上下限溫度復(fù)制到 TH和 TL寄存器) while(1) //主循環(huán) { keyscan()。 *********************************************************************/ ifndef __ds18b20_h__ //定義頭文件 define __ds18b20_h__ define uint unsigned int //變量類型宏定義,用 uint 表示無(wú)符號(hào)整形( 16位) define uchar unsigned char //變量類型宏定義,用 uchar表示無(wú)符號(hào)字符型( 8位) sbit DQ= P2^3。 //下限溫度的標(biāo)志位‘ 0’表示“正溫度”、‘ 1’表示“負(fù)溫度”) bit w=0。} /**************************ds18b20 初始化函數(shù) *************************/ void ds18b20_init() // DS18B20初始化 { DQ=1。 //定義一個(gè)局部變量 i(局部變量只在本函數(shù)中有效 ) uchar d = 0。_nop_()。i) //一位一位的寫 { DQ=0。 d = 1。 //用開(kāi)機(jī)動(dòng)畫耗時(shí) } else ds18b20_delayms(1)。 //讀內(nèi)部 RAM ( Tl) } if((maxamp。 i=b。 //i為 1,表示讀取的溫度是負(fù)溫度 ,設(shè)立負(fù)溫度標(biāo)記 a=~a+1。 ds18b20_init()。 //向 DS18B20發(fā)跳過(guò)讀 ROM 命令 ds18b20_write(0x48)。} //若測(cè)量值是負(fù)值時(shí)報(bào)警 } if(f_min==1) //若下限值是負(fù)值 { if(f==0) //若測(cè)量值是正值 智筆記 6 { if((temp+temp_d*)=max)//當(dāng)測(cè)量值大于最大值時(shí)報(bào)警 {w=1。} //當(dāng)測(cè)量值小于最大值或大于最小值時(shí)報(bào)警 if((temp+temp_d*)minamp。 //用 key2表示 sbit key3=P2^0。 //消按鍵音功能調(diào)整位,為‘ 0’時(shí)開(kāi)按鍵音,為‘ 1’時(shí)關(guān)按鍵音 /***************************讀鍵盤延時(shí)子函數(shù) **************************/ void keyscan_delay(uint z) //延時(shí) 1ms 左右 { uint i,j。 //延時(shí) 10ms if(key2==0) //再次判斷 K2是否按下(實(shí)現(xiàn)按按鍵時(shí)消抖 ) { beer=1。 keyscan_delay(10)。 keyscan_delay(10)。 //在上下溫度調(diào)節(jié)功能模式下選擇 K K3的溫度加減功能 i++。 //a=0選擇顯示測(cè)得的溫度 case 1:a=1。amp。 if(k4==1) //k4=1時(shí) K4按鍵選擇正負(fù)溫度設(shè)定功能 { if(key4==0) { if(v2==0)beer=0。 keyscan_delay(10)。 keyscan_delay(10)。 keyscan_delay(10)。 //為‘ 0’時(shí)開(kāi)按鍵音,為‘ 1’時(shí)關(guān)按鍵音 } while(key4==0)。 //定義 num為全局無(wú)符號(hào)字符型變量,賦初值為‘ 0’ uchar code temperature1[]={ 0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}。j)。 //重新賦初值,定時(shí) 50ms TL0=0xb0。if(w==1){beer=0。 else P0=temperature1[k/100]。 else P0=temperature1[k%100/10]。 //關(guān)第二個(gè)數(shù)碼管 wei3=0。//若 s1=1則顯示第二個(gè)數(shù)碼管( s1標(biāo)志位用于上下限查看時(shí)的顯示) } if(a==2) //若 a=2則在第二個(gè)數(shù)碼管上顯示下限報(bào)警溫度的百位或‘ ’ { if(s==0) selsct_1(f_min,min)。 case 2: //選通第三個(gè)數(shù)碼管 if(a==0){P0=temperature2[t%10]。 wei2=0。//若 s1=1則顯示第四個(gè)數(shù)碼管 } if(a==2) //若 a=2則在第四個(gè)數(shù)碼管上顯示下限報(bào)警溫度的個(gè)位 智筆記 12 { if(s==0) P0=temperature1[min%10]。 } display_delay(3)。//第一個(gè)數(shù)碼管顯示 wei2=0。 wei4=0。 break。 //每個(gè)數(shù)碼管顯示 200ms 左右 } } } endif
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1