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

正文內(nèi)容

單片機溫度控制系統(tǒng)的設(shè)計畢業(yè)論文設(shè)計-資料下載頁

2025-07-02 19:39本頁面

【導讀】系統(tǒng)的研發(fā)與應(yīng)用在很大程度上提高了生產(chǎn)生活中對溫度的控制水平。本設(shè)計論述了一種。以STC89C52單片機為主控制單元,以DS18B20為溫度傳感器的溫度控制系統(tǒng)。統(tǒng)可以實時存儲相關(guān)的溫度數(shù)據(jù)并記錄當前的時間。硬件電路主要包括STC89C52單片機最小系統(tǒng),測溫電路、實時時鐘電路、LCD液。晶顯示電路以及通訊模塊電路等。系統(tǒng)程序主要包括主程序,讀出溫度子程序,計算溫度。子程序、按鍵處理程序、LCD顯示程序以及數(shù)據(jù)存儲程序等。

  

【正文】 { uchar i,j,dat。 dat=0。 for(i=1。i=8。i++) { j=tempreadbit()。 dat=(j7)|(dat1)。 } return(dat)。 } void tempwritebyte(uchar dat) //ds18b20 寫字 { uint i。 uchar j。 bit testb。 for(j=1。j=8。j++) { testb=datamp。0x01。 dat=dat1。 if(testb) { ds=0。 i++。i++。 ds=1。 i=8。while(i0)i。 } 畢業(yè)論文設(shè)計 第 22 頁 共 27 頁 else { ds=0。 i=8。while(i0)i。 ds=1。 i++。i++。 } } } void tempchange(void) { dsreset()。 delay(1)。 tempwritebyte(0xcc)。 tempwritebyte(0x44)。 //ds18b20 溫度轉(zhuǎn)換指令 } uint get_temp() //ds18b20 溫度轉(zhuǎn)換 { uchar a,b。 dsreset()。 delay(1)。 tempwritebyte(0xcc)。 tempwritebyte(0xbe)。 a=tempread()。 b=tempread()。 temp=b。 temp=8。 temp=temp|a。 畢業(yè)論文設(shè)計 第 23 頁 共 27 頁 if(temp0x0800) { f_temp=temp*。 TFLAG=0。 } else { f_temp=(~temp)+1。 f_temp=f_temp*。 TFLAG=1。 } temp=f_temp*10。 return temp。 } void warn() //閃爍報警 { led0=1。delay(100)。led0=0。 } void warn1() //蜂鳴器報警 { Tru=1。delay(100)。Tru=0。 } void motor() // 馬達轉(zhuǎn)動 {Fan=1。delay(100)。Fan=0。} void deal(uint t) //數(shù)據(jù)處理 { 畢業(yè)論文設(shè)計 第 24 頁 共 27 頁 if((tnum)|(tnum2)) warn1()。 else Tru=0。 if(tnum) motor()。 else Fan=0。 if(tnum2) warn()。 else led0=0。 } void keyscan() //按鍵掃描 { if(key1==0) { delayms(1)。 if(key1==0) { num=num+10。 while(!key1)。 } } if(key2==0) { delayms(1)。 if(key2==0) { 畢業(yè)論文設(shè)計 第 25 頁 共 27 頁 num=num10。 while(!key2)。 } } if(key3==0) { delayms(1)。 if(key3==0) { num2=num2+10。 while(!key3)。 } } if(key4==0) { delayms(1)。 if(key4==0) { num2=num210。 while(!key4)。 } } } void display(uint j) //顯示 { uchar FLAGDAT。 disdata[0]=j/1000+0x30。 disdata[1]=j%1000/100+0x30。 畢業(yè)論文設(shè)計 第 26 頁 共 27 頁 disdata[2]=j%100/10+0x30。 disdata[3]=j%10+0x30。 if(TFLAG==0) FLAGDAT=0x20。 else FLAGDAT=0x2d。 if(disdata[0]==0x30) { disdata[0]=0x20。 if(disdata[1]==0x30) { disdata[1]=0x20。} } write_(0x81)。 write_date(0x48)。 //H write_(0x82)。 write_date(num/100+0x30)。 //溫度上限第一位 write_(0x83)。 write_date(num%100/10+0x30)。 //溫度上限第二位 write_(0x84)。 write_date(0x20)。 //空格 write_(0x85)。 write_date(0x4c)。 //L write_(0x86)。 write_date(num2/100+0x30)。 //溫度下限第一位 write_(0x87)。 write_date(num2%100/10+0x30)。 //溫度下限第二位 write_(0x40+0x82)。 write_date(FLAGDAT)。 //溫度大于零不顯示,溫度小于零顯示負號 write_(0x40+0x83)。 write_date(disdata[0])。 //溫度第一位 畢業(yè)論文設(shè)計 第 27 頁 共 27 頁 write_(0x40+0x84)。 write_date(disdata[1])。 //溫度第二位 write_(0x40+0x85)。 write_date(disdata[2])。 //溫度第三位 write_(0x40+0x86)。 write_date(0x2E)。 //小數(shù)點 write_(0x40+0x87)。 write_date(disdata[3])。 //溫度第四位 } void main() //主程序 { init()。 dsreset()。 while(1) { tempchange()。 keyscan()。 deal(get_temp())。 display(get_temp())。 } }
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1