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

正文內(nèi)容

基于c51單片機(jī)數(shù)字溫度計(jì)設(shè)計(jì)制作畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2025-07-02 08:24本頁(yè)面

【導(dǎo)讀】隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)基本已經(jīng)普及到我們的生活中,越來(lái)越多的。工作,科研和各個(gè)領(lǐng)域都涉及到單片機(jī)的應(yīng)用,單片機(jī)已經(jīng)成為了一項(xiàng)比較成熟的技。種新型產(chǎn)品,它具有多種功能,例如它可以設(shè)置上下報(bào)警溫度,當(dāng)溫度不在設(shè)置范圍。內(nèi)時(shí),它就會(huì)發(fā)出報(bào)警信號(hào)。隨著人們生活水平不斷的提高,單片機(jī)控制無(wú)疑是人們追求的目標(biāo)之一,它給人。生活上帶來(lái)的方便也是不可否認(rèn)的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,但人們對(duì)。它的要求也越來(lái)越高,要為現(xiàn)代人生活,工作,科研提供更好更方便的設(shè)施就需要從。本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)和傳統(tǒng)溫度計(jì)相比,具有度數(shù)方便,測(cè)數(shù)范圍廣,測(cè)。溫更準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫比較準(zhǔn)確的場(chǎng)所,或科研實(shí)驗(yàn)。室使用等該設(shè)計(jì)控制器使用單片機(jī)AT89C51,測(cè)溫傳感器使用DS18B20,采用3位共。陽(yáng)極LED數(shù)碼管以串行口傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示和準(zhǔn)確度要求。廣泛,可以說(shuō)是滲透到社會(huì)的每一個(gè)領(lǐng)域,人民的生活

  

【正文】 。 22 17} /***************************************************** 函數(shù)功能:顯示說(shuō)明信息 **********************************************/ void display_explain(void) { uchar i。 WriteAddress(0x00)。//顯示的數(shù)據(jù)是在第一行第一列 i = 0。 while(Str[i] != 39。\039。) { lcd_wdat(Str[i])。 i++。 delay_ms(100)。 } } /**************顯示溫度 Temp 符號(hào) **************/ void display_symbol(void) { uchar i。 WriteAddress(0x40)。 //寫(xiě)顯示地址,將在第 2行第 1 列開(kāi)始顯示 i = 0 。 while(Temp[i] != 39。\039。) { lcd_wdat(Temp[i])。 i++。 delay_ms(50)。 22 18 } } /********************顯示小數(shù)點(diǎn)符號(hào) ****************/ void display_dot(void) { WriteAddress(0x49)。//寫(xiě)顯示地址,將在第二行第十列顯示 lcd_wdat(39。.39。)。 delay_ms(50)。 } /*******************溫度單位函數(shù)功能:顯示溫度的單位 (Cent)******/ void display_cent (void) { uchar i。 WriteAddress(0x4c)。//顯示地址從第二行的第十三列開(kāi)始 i = 0 。 while(Cent[i] != 39。\039。) { lcd_wdat(Cent[i])。 i++。 delay_ms(50)。 } } /***********函數(shù)功能:顯示溫度的整數(shù)部分 *****/ void display_temp1(unsigned char x) { unsigned char j,k,l。 //j,k,l 分別儲(chǔ)存溫度的百位、十位和個(gè)位 j=x/100。 //取百位 k=(x%100)/10。 //取十位 22 19 l=x%10。 //取個(gè)位 WriteAddress(0x46)。 //寫(xiě)顯示地址 ,將在第 2行第 7列開(kāi)始顯示 lcd_wdat(digit[j])。 //將百位數(shù)字的字符常量寫(xiě)入 LCD WriteAddress(0x47)。 lcd_wdat(digit[k])。 //將十位數(shù)字的字符常量寫(xiě)入 LCD WriteAddress(0x48)。 lcd_wdat(digit[l])。 //將個(gè)位數(shù)字的字符常量寫(xiě)入 LCD delay_ms(50)。 //延時(shí) 1ms 給硬件一點(diǎn)反應(yīng)時(shí)間 } /*****************函數(shù)功能:顯示溫度的小數(shù)數(shù)部分 *****/ void display_temp2(unsigned char x) { WriteAddress(0x4a)。 //寫(xiě)顯示地址 ,將在第 2行第 11列開(kāi)始顯示 lcd_wdat(digit[x])。 //將小數(shù)部分的第一位數(shù)字字符常量寫(xiě)入 LCD delay_ms(50)。 //延時(shí) 1ms 給硬件一點(diǎn)反應(yīng)時(shí)間 } void ReadyReadTemp(void) { Init_DS18B20()。 //將 DS18B20 初始化 WriteOneChar(0xCC)。 // 跳過(guò)讀序號(hào)列號(hào)的操作 WriteOneChar(0x44)。 // 啟動(dòng)溫度轉(zhuǎn)換 for(time=0。time100。time++)。 //溫度轉(zhuǎn)換需要一點(diǎn)時(shí)間 Init_DS18B20()。 //將 DS18B20 初始化 WriteOneChar(0xCC)。 //跳過(guò)讀序號(hào)列號(hào)的操作 WriteOneChar(0xBE)。 //讀取溫度寄存器 ,前兩個(gè)分別是溫度的低位和高位 } void main(void) { uchar TL。 //存儲(chǔ)溫度的低位 22 20 uchar TH。 //溫度的高位 uchar TN。 //溫度的整數(shù)部分 uchar TD。 //溫度的小數(shù)部分 lcd_init()。 delay_ms(5)。 if(Init_DS18B20()==1) { display_error()。 } display_explain()。 display_symbol()。 display_dot()。 display_cent()。 while(1) { ReadyReadTemp()。 TL = ReadOneChar()。 TH = ReadOneChar()。 TN=TH*16+TL/16。 //實(shí)際溫度值 =(TH*256+TL)/16,即:TH*16+TL/16 //這樣得出的是溫度的整數(shù)部分 ,小數(shù)部分被丟棄了 TD=(TL%16)*10/16。 //計(jì)算溫度的小數(shù)部分 ,將余數(shù)乘以 10 再除以 16 取整, //這樣得到的是溫度小數(shù)部分的第一位數(shù)字 (保留 1位小數(shù) ) display_temp1(TN)。 //顯示溫度的整數(shù)部分 display_temp2(TD)。 //顯示溫度的小數(shù)部分 22 21 delay_ms(10)。 } } 22 附錄 B 簡(jiǎn)易數(shù)字溫度計(jì)原理總圖
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1