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

正文內(nèi)容

數(shù)字溫度計設(shè)計單片機課程設(shè)計-資料下載頁

2025-08-19 13:24本頁面
  

【正文】 **************** * 名稱 : read_byte() * 功能 : 從 DS18B20 讀一個字節(jié) * 輸入 : 無 * 輸出 : 從 DS18B20 讀到的值 ***********************************************************************/ uchar read_byte(void) { uchar i,m,receive_data。 m = 1。 receive_data = 0。 for(i=0。 i8。 i++) { if(read_bit()) { receive_data = receive_data + (m i)。 } delay(6)。 數(shù)字溫度計設(shè)計 20 } return(receive_data)。 } void key11() { while(key1==0) //當(dāng)模式切換鍵按下則進入循環(huán)體 { delay(300)。 //延時消除抖動 if(key1==0) { st++。 //模式循環(huán)切換 if(st==4) st=1。 } while(!key1)。//延時等待按鍵回到高電平 delay(300)。 while(!key1)。//延時消除抖動 } } /******************門限值加 1**************************/ void key2() { while(key02==0) { delay(400)。 if(key02==0) { if(st==3) { low=low+1。} if(st==2) {high=high+1。} if(lowhigh) {pp=low。low=high。high=pp。} } while(!key02)。 delay(400)。 while(!key02)。 } } 數(shù)字溫度計設(shè)計 21 /******************門限值減 1**************************/ void key3() { while(key03==0) { delay(400)。 if(key03==0) { if(st==3) {low=low1。} if(st==2) {high=high1。} if(lowhigh) {pp=low。low=high。high=pp。} } while(!key03)。 delay(400)。 while(!key03)。 } } /******************上限溫度顯示 **************************/ void high1() { uchar k。 display[0]=high%10。 display[1]=high/10。 display[2]=10。 //個位熄滅 display[3]=12。 //百位顯示 H for(k=0。k4。k++) { discan=scan_con[k]。 disdata=dis_7[display[k]]。 delay(300)。 disdata=0x00。 delay(100)。 } } /* uchar code table[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}。 uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09}。 數(shù)字溫度計設(shè)計 22 //溫度小數(shù)部分用查表法 uchar code dis_7[15]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x67,0x00,0x40,0x76,0x38,0x39}。 //共陰 LED 段碼表 0 1 2 3 4 5 6 7 8 9 不亮 H L C uchar code scan_con[4]={0x08,0x04,0x02,0x01}。 //列掃描控制字 uchar data temp_data[2]={0x00,0x00}。 //讀出溫度暫放 uchar data display[5]={0x00,0x00,0x00,0x00,0x00}。 //顯示單元數(shù)據(jù),共 4 個數(shù)據(jù)和一個運算暫 用 /******************下限溫度顯示 **************************/ void low1() { uchar ki。 display[0]=low%10。 display[1]=low/10。 display[2]=10。 //個位熄滅 display[3]=13。 //百位顯示 L for(ki=0。ki4。ki++) { discan=scan_con[ki]。 disdata=dis_7[display[ki]]。 delay(100)。 disdata=0x00。 delay(100)。 } } void BEEP() { if(temp=high||temp=low) { beep=1。 beep1=1。} else {beep=0。 beep1=0。} } /******************************************************************** * 名稱 : write_byte() 數(shù)字溫度計設(shè)計 23 * 功能 : 向 DS18B20 寫一個字節(jié) * 輸入 : val(要對 DS18B20 寫入的命令值) * 輸出 : 無 ***********************************************************************/ void write_byte(uchar val) { uchar i,temp。 for(i=0。 i8。 i++) { temp = val i。 temp = temp amp。 0x01。 write_bit(temp)。 delay(5)。 } } void work_temp() { Reset()。 write_byte(jump_ROM)。 write_byte(start)。 Reset()。 write_byte(jump_ROM)。 write_byte(read_EEROM)。 TMPL = read_byte()。 TMPH = read_byte()。 temp = TMPL / 16 + TMPH * 16。 P0 = table[temp/10%10]。 P2 = 0x01。 Delay_1ms(5)。 P0 = table[temp%10]。 P2 = 0x02。 Delay_1ms(5)。 } /******************************************************************** * 名稱 : Main() * 功能 : 主函數(shù) * 輸入 : 無 * 輸出 : 無 ***********************************************************************/ void main() { P2 = 0x00。 數(shù)字溫度計設(shè)計 24 while(1) { key11()。 //查詢模式切換鍵是否按下 switch(st) //進入不同模式 { case 1:{ work_temp()。 BEEP()。 } break。 case 2: { high1()。 // 顯示上限溫度 key2()。 key3()。 break。 } case 3: { low1()。 //顯示下限溫度 key2()。 key3()。 break。 } } } } //***********************結(jié)束 **************************//
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1