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

正文內(nèi)容

基于單片機(jī)的上下限溫度控制報(bào)警器 畢業(yè)設(shè)計(jì)-預(yù)覽頁

2025-03-30 10:24 上一頁面

下一頁面
 

【正文】 33 頁 STC12C5A16S2 單片機(jī) 引腳介紹: — (39— 32): P0 口是一個(gè)漏極開路型準(zhǔn)雙向 I/O 口。 — (18): P1 口是帶內(nèi)部上拉電阻的 8 位雙向 I/O 口。在對(duì) EFROM 編程和程序驗(yàn)證期間,它接收高 8 位地址。 4 路 PWM 還可當(dāng) 4 路 D/A 使用 ● 2 個(gè)硬件 16 位定時(shí)器,兼容普通 8051 的定時(shí)器。一線總線獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測(cè)量系統(tǒng)的構(gòu)建引入全新概念。 在傳統(tǒng)的模擬信號(hào)遠(yuǎn)距離溫度測(cè)量系統(tǒng)中,需要很好的解決引線誤差補(bǔ)償問題、多點(diǎn)測(cè)量切換誤差問題和放大電路零點(diǎn)漂移誤差問題等技術(shù)問題,才能夠達(dá)到較高的測(cè)量精度。 ( 2) .在 DS18B20 中的每個(gè)器件上都有獨(dú)一無二的序列號(hào)。 C 之間。 序號(hào) 名稱 引腳功能描述 1 GND 地信號(hào) 2 DQ 數(shù)據(jù)輸入 /輸出引腳。 由于 DS18B20 是在一根 I/O 線上讀寫數(shù)據(jù),因此,對(duì)讀寫的數(shù)據(jù)位有 著嚴(yán)格的時(shí)序要求。而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)主動(dòng)啟動(dòng)寫時(shí)序開始,如果要求單總線器件回送數(shù)據(jù),在進(jìn)行寫命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收。 DS18B20 在完成一個(gè)讀時(shí)序過程,至少需要 60us 才能完成。用三個(gè) 8550PNP 三極做為每一位 LED管的驅(qū)動(dòng)電路,這樣使得數(shù)碼管電流量更大,亮度更亮。 5:按鍵電路 三個(gè)輕觸開關(guān)組成按鍵電路,因?yàn)槎际仟?dú)立的按鍵所以采 用直接接地的方法,這樣電路比較簡(jiǎn)單,達(dá)到了效果。通過“減鍵”可以對(duì)設(shè)置數(shù)值減。 圖中沒有采用按鍵做為復(fù)位電路,直接采用電容充電的方式做為復(fù)位,在每上電時(shí)單片機(jī)復(fù)位一次這樣就可以達(dá)到重啟單片機(jī)的效果。211。195。 圖 2 主程序流程圖 圖 3 讀溫度流程圖 初始化 調(diào)用顯示子程序 1S 到? 初次上電 讀出溫度值溫度計(jì)算處理顯示數(shù)據(jù)刷新 發(fā)溫度轉(zhuǎn)換開始命令 N Y N Y Y 發(fā) DS18B20 復(fù)位命令 發(fā)跳過 ROM 命令 發(fā)讀取溫度命令 讀取操作, CRC 校驗(yàn) 9 字節(jié)完? CRC 校驗(yàn)正? 確? 移入溫度暫存器 結(jié)束 N N Y 基于單片機(jī)的溫度 上下限 控制 報(bào)警 器 畢業(yè)設(shè)計(jì) 第 17 頁,共 33 頁 發(fā) DS18B20復(fù)位命令 發(fā)跳過 ROM 命令 發(fā)溫度轉(zhuǎn)換開始命令 結(jié)束 2:讀出溫度子程序 讀出溫度子程序的主要功能是讀出 RAM 中的 9 字節(jié),在讀 出時(shí)需進(jìn)行 CRC 校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。程序流程圖如圖 5。 開始 溫度零下 ? 溫度值取 補(bǔ)碼置“ — ”標(biāo)志 計(jì)算小數(shù)位溫度 BCD值 計(jì)算整數(shù)位溫度 BCD值 結(jié)束 置“ +”標(biāo)志 N Y 溫度數(shù)據(jù)移入顯示寄存器 個(gè) 位數(shù) 0? 十 位數(shù) 0? 個(gè)位數(shù)顯示符號(hào)十位數(shù)不顯示 十 位數(shù)顯示數(shù)據(jù)(不顯示符號(hào)) 結(jié)束 N N Y Y 基于單片機(jī)的溫度 上下限 控制 報(bào)警 器 畢業(yè)設(shè)計(jì) 第 19 頁,共 33 頁 測(cè)試方法 數(shù)字萬用表主要用來測(cè)試分立元件的電阻、壓降、漏電流、截止 /導(dǎo)通狀態(tài)等參數(shù);直流穩(wěn)壓電源在測(cè)試期間為各待測(cè)系統(tǒng)供電。 這次畢業(yè) 設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),需要有很巧妙的程序算法,雖然以前寫過幾次程序,但我們覺的寫好一個(gè)程序并不是一件簡(jiǎn)單的事,有好多的東西,只有我們們?nèi)ピ囍隽?,才能真正的掌握,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握。無論是在理論學(xué)習(xí)階段,還是在論文的選題、資料查詢、開題、研究和撰寫的每一個(gè)環(huán)節(jié),無不得到導(dǎo)師的悉心指導(dǎo)和幫助。 附件 附件 1: PCB板圖: 附件 2:成品實(shí)物圖: 基于單片機(jī)的溫度 上下限 控制 報(bào)警 器 畢業(yè)設(shè)計(jì) 第 21 頁,共 33 頁 基于單片機(jī)的溫度 上下限 控制 報(bào)警 器 畢業(yè)設(shè)計(jì) 第 22 頁,共 33 頁 附件 3:程序源文件 /*/* 溫度控制器 顯示為三個(gè)共陽極 LED 溫度傳感器用單總線 DS18B20 CPU 為 2051,四個(gè)按鍵,分別為 UP, DOWN, SET 溫度調(diào)節(jié)上限為 125 度,下限為 55 度 只 能用于單只 18B20 */ include include define uchar unsigned char define uint unsigned int code unsigned char seg7code[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92, 0x82,0xf8,0x80,0x90,0xff,0xbf}。 //下調(diào)溫度 sbit Key_SET=P1^5。 //LED DS3 控制(個(gè)位) sbit DQ=P2^0。 sbit Lled=P3^4。 //下限報(bào)警溫度,默認(rèn)值為 5 uchar data wendu[3]。 /**************************************** ****ds18b20 延時(shí)函數(shù) *********************/ void delay(unsigned int i) { while(i)。 delay(20)。 delay(10)。 break。i0。 delay(20)。 } /************************************************* 主機(jī)從 DS18B20 讀取一個(gè)字節(jié)子程序 ********************** **********************************************/ unsigned char ds18b20_read(void) { unsigned char i,date。 date=1。 } return(date)。 ds18b20_write(0x44)。 ds18b20_write(0xbe)。 k=hamp。//把 H 左移 8 位,加上 L 后再按位取反 temp=temp+1。//把 H 左移 8 位,加上 L 后的值乘以 得到 10 進(jìn)制實(shí)際溫度值再擴(kuò)大 100 倍,精確到小數(shù)點(diǎn)后面 2 位數(shù) EA=1。 delay(120)。 P0=seg7codeB[temp%100/10]。 LEDThreeC=0。 P0=0xff。 LEDOneC=1。 delay(120)。 P0=seg7code[temp%10]。 } } /****進(jìn)入設(shè)置顯示畫面 ******/ void Xiaxian_disp(void) //下限設(shè)置界面 { LEDOneC=0。 基于單片機(jī)的溫度 上下限 控制 報(bào)警 器 畢業(yè)設(shè)計(jì) 第 26 頁,共 33 頁 P0=0xff。 LEDTwoC=1。 delay(50)。 P0=0x89。 LEDTwoC=0。 P0=0xff。 LEDThreeC=1。 IAP_TRIG = 0x00。 //開中斷 } //*******************字節(jié)讀 *************************** uchar Byte_read(uint byte_addr) { IAP_CONTR = 0X85。 //送地址高字節(jié) IAP_ADDRL = (uchar)(byte_addr amp。 //送觸發(fā)命令字 0X4 0XB9 IAP_TRIG = 0XA5。 //開中斷 return (IAP_DATA)。 //送字節(jié)編程命令字 IAP_ADDRH = (uchar)(byte_addr 8)。 //送數(shù)據(jù)進(jìn) ISP_DATA EA = 0。 ISP_IAP_Disable()。并送等待時(shí)間 // ISP_CONTR=0xc1。0X00FF)。 _nop_()。 Sector_erase(0X2021)。 Sector_erase(0X2400)。 Sector_erase(0X2600)。 if(Key_SET==0) delay(200)。 } while(Key_SET==0)。 } if(Key_DOWN==0) delay(10000)。 } if(fg==2) //設(shè)置下限報(bào)警值 delay(200)。 if(Key_DOWN==0) { if(xiaxian1)xiaxian=1。 } } /********循環(huán)顯示設(shè)置溫度 *****/ void key_scan(void) { while(fg==1) { Shangxian_disp()。 } } /*********主函數(shù) *******/ void main(void) { TMOD=0x00。 ET0=1。j0。 fg1=Byte_read(0X2021)。 xiaxian=5。 wendu[3]=temp%10。 user_set[3]=xiaxian%10。Hled=1。Lled=1。amp。Lled=1。 key_scan()。 QA9wkxFyeQ^! djsXuyUP2kNXpRWXm Aamp。 gTXRm 6X4NGpP$vSTTamp。gTXRm 6X4NGpP$vSTTamp。gTXRm 6X4NGpP$vSTTamp。 gTXRm 6X4NGpP$vSTTamp。 gTXRm 6X4NGpP$vSTTamp。 gTXRm6X4NGpP$vSTTamp。 gTXRm6X4NGpP$vSTTamp。gTXRm 6X4NGpP$vSTTamp。 UE9aQGn8xp$Ramp。 ksv*3t nGK8!z89Am YWpazadNuKNamp。 gTXRm6X4NGpP$vSTTamp。 gTXRm 6X4NGpP$vSTTamp。 gTXRm 6X4NGpP$vSTTamp。 gTXRm 6X4NGpP$vSTTamp。 UE9aQGn8xp$Ramp。 ksv*3t nGK8! z89Am YWpazadNuKNamp。ksv*3t nGK8!z89Am YWpazadNuKNamp。 ksv*3t nGK8!z89Am YWpazadNuKNamp。 ksv*3t nGK8! z89Am UE9aQGn8xp$Ramp。 ksv*3t nGK8! z89Am YWpazadNuKNamp。 ksv*3t nGK8! z89Am YWpazadNuKNamp。 ksv*3t nGK8! z89Am YWpazadNuKNamp。 ksv*3t nGK8!z89Am YWv*3tnGK8! z89Am YWpazadNuKNamp。 ksv*3t nGK8! z89Am YWpazadNuGK8! z89Am YWpazadNuKNamp。 ksv*3
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1