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

正文內(nèi)容

單片機(jī)數(shù)字溫度計(jì)設(shè)計(jì)-預(yù)覽頁

2025-06-21 15:20 上一頁面

下一頁面
 

【正文】 ................................ 17 4 緒論 隨 著人們生活水平的不斷提高,單片機(jī)控制無疑是人們追求的目標(biāo)之一,它給人帶來的方便也是無可置疑的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子。現(xiàn)在所使用的溫度計(jì)通常都是精度為 1℃和℃的水銀、煤油或酒精溫度計(jì),這些溫度計(jì)的刻度間隔通常都很密,不容易準(zhǔn)確分辨,讀數(shù)困難,而且他們的熱容量還比較大,達(dá)到熱平衡所需的時(shí)間較長,因此很難讀準(zhǔn),并且使用非常不方便。 顯示 此項(xiàng)目采用了 SM410564 四位數(shù)碼管,通過溫度傳感器和單片機(jī)交換數(shù)據(jù),把當(dāng)前環(huán)境下的溫度數(shù)據(jù)適時(shí)傳輸給數(shù)碼管,方便用戶了解當(dāng)前溫度,為下一步工作做好鋪墊。 AT89C52 功能強(qiáng)大,可充分滿足該控制器存儲(chǔ)等各方面的需求。 測溫范圍 55℃~+ 125℃,固有測溫分辨率 ℃。 16 位數(shù)字?jǐn)[放是從低位到高位。 : C13 0 p fC23 0 p fX1CR Y S T A L 此部分為 AT89C52 的內(nèi)部時(shí)鐘電路振蕩器。 11 主程序流程圖 主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理 DS18B20 的測量的當(dāng)前溫度值,溫度測量每 1s 進(jìn)行一次。高級(jí)的匯編器如 MASM, TASM 等等為我們 12 寫匯編程序提供了很多類似于高級(jí)語言的特征,比如結(jié)構(gòu)化、抽象等。 MCS51 單片機(jī)的這個(gè)指令系統(tǒng)中共包括 111 條指令,可以完成30 多種功能。 1 2從而使 C 的運(yùn)算類型極為豐富,可以實(shí)現(xiàn)其他高級(jí)語言難以實(shí)現(xiàn)的運(yùn)算。與匯編語言相比,用 C 語言寫的程序可移植性好。 C 語言對(duì) 操作系統(tǒng) 和系統(tǒng)使用程序以及需要對(duì)硬件進(jìn)行操作的場合,用 C 語言明顯優(yōu)于其它解釋型高級(jí)語言,有一些大型應(yīng)用軟件也是用 C 語言編寫的。 Keil C51 單片機(jī)軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu) Keil C51 是美國 Keil Software 公司出品的 51 系列兼容單片機(jī)C 語言軟件開發(fā)系統(tǒng),與匯編相比, C 語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語言的優(yōu)勢(shì)。開發(fā)人員可用 IDE 本身或其它編輯器編輯 C 或匯編 源文件。 仿真如下: 15 .第四章 調(diào)試 本次設(shè)計(jì)系統(tǒng)的調(diào)試以程序的調(diào)試為主。 軟件調(diào)試到數(shù)碼管能顯示溫度值,而且在有溫度變化時(shí)(例如改變傳感器的溫度值)顯示溫度能改變。 本次課程設(shè)計(jì)主要分為四部分:設(shè)計(jì)、仿真、調(diào)試。 [2] 模擬電子技術(shù)(第三版)胡宴如 主編。 [6] 張毅剛 .MCS51 單片機(jī)應(yīng)用設(shè)計(jì) [M].高等教育出版社。 18 附錄 include include //_nop_()。 //數(shù)碼管 3 sbit w2=P2^2。 // 指示燈 sbit set=P2^6。 //顯示當(dāng)前溫度和設(shè)置溫度的標(biāo)志位為 0 時(shí)顯示當(dāng)前溫度 uint h。 uchar sign。 //**************溫度小數(shù)部分用查表法 ***********// uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09}。 //讀出溫度暫放 uchar data display[5]={0x00,0x00,0x00,0x00,0x00}。 } void scan() { int j。w0=0。w1=0。w2=0。w3=0。w3=0。 while(presence) { while(presence) { DQ=1。 delay(50)。 //presence=0 復(fù)位成功 ,繼續(xù)下一步 } delay(45)。 for(i=8。_nop_()。_nop_()。 //最低位移出 delay(6)。 } /****************DS18B20 讀 1 字節(jié)函數(shù) ************************/ //從總線上取 1 個(gè)字節(jié) uchar read_byte(void) { uchar i。i) { DQ=1。 DQ=0。_nop_()。_nop_()。 //66 us } DQ=1。 write_byte(0xcc)。 write_byte(0xcc)。 //讀溫度值的高字節(jié) temp=temp_data[1]。 return temp。} // 負(fù)溫度求補(bǔ)碼 ,標(biāo)志位置 1 display[4]=temamp。 // 取中間八位 ,即整數(shù)部分的值 23 display[3]=display[4]/100。 //個(gè)位數(shù)據(jù) r=display[1]+display[2]*10+display[3]*100。} //負(fù)溫度時(shí)最高位顯示 } void BEEP() { if((r=highamp。 } else { beep=0。n=1。 display[2]=horl%100/10。 //最高位為 0 時(shí)不顯示 if(!display[2]) { display[2]=0x0a。//消抖 if(set==0) { temp1++。 if(add==0) { while(!add) scan()。 } } 26 if(temp1==2) { xianshi(low)。 low=1。 } } } } /****************主函數(shù) ************************/ void main() { dm=0x00。 w3=0。 } ow_reset()。h100。 scan
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1