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

正文內(nèi)容

基于單片機(jī)的溫度測控系統(tǒng)設(shè)計(jì)—大學(xué)學(xué)位論文范文模板參考資料-預(yù)覽頁

2025-01-08 09:42 上一頁面

下一頁面
 

【正文】 理程序 ?;趩纹瑱C(jī)的溫度測控系統(tǒng)設(shè)計(jì) 摘 要 本設(shè)計(jì)以 AT89C51 單片機(jī)為核心的溫度控制系統(tǒng),利用其 工作原理和設(shè)計(jì)方法 實(shí)現(xiàn)溫度控制 。單片機(jī)通過對(duì)信號(hào)進(jìn)行相應(yīng)處理,從而實(shí)現(xiàn)溫度控制的目的。傳統(tǒng)的繼電器調(diào)溫電路簡單實(shí)用 ,但由于繼電器動(dòng)作頻繁 ,可能會(huì)因觸點(diǎn)不良而影響正常工作。 DS18B20 數(shù)字溫度傳感器具有微型化、封裝簡單、低功耗、高性能抗干擾能力、測量范圍廣、強(qiáng)易配處理器等優(yōu)點(diǎn),可使系統(tǒng)測量更加精確,電路更加簡單。 AT89C51 溫度顯示電路 溫度控制電路 鍵盤輸入電路 溫度采集電路 基于單片機(jī)的溫度測控系統(tǒng)設(shè)計(jì) 3 2 硬件設(shè)計(jì) 主控制 模塊 AT89C51 是一個(gè)低功耗,高性能 CMOS 8 位單片機(jī), 片內(nèi)含 8k Bytes ISP(Insystem programmable)的可反復(fù)擦寫 1000 次的 Flash 只讀程序存儲(chǔ)器,器件采用 ATMEL 公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn) MCS51 指令系統(tǒng)及 80C51 引腳結(jié)構(gòu),芯片內(nèi)集成了通用 8位中央處理器和 ISP Flash 存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的 AT89S51 可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。 AT89C51 提供以下標(biāo)準(zhǔn)功能: 4K字節(jié) Flash 閃速存儲(chǔ)器, 128 字節(jié)內(nèi)部 RAM, 32 個(gè) I/O口線,看門狗( WDT),兩個(gè)數(shù)據(jù)指針,兩個(gè) 16位定時(shí)器 /計(jì)數(shù)器,一個(gè) 5向量兩級(jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘。 AT89C51 引角功能說 明 Vcc:電源電壓 GND:地 P0 口: P0 口是一組 8 位漏極開路型雙向 I/O 口,也即地址 /數(shù)據(jù)總線復(fù)用口,作為輸出口用時(shí),每位能驅(qū)動(dòng) 8個(gè) TTL 邏輯門電路,對(duì)端口寫“ 1”可作為高阻抗輸入端口。對(duì)端口寫“ 1” ,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行: MOVX Ri 指令)時(shí), P2 口線上的內(nèi)(也即特殊功能寄存器,在整個(gè)訪問期間不改變。對(duì) P3口寫入“ 1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。WDT 益出將使該引腳輸出高電平,設(shè)置 SFR AUXR 的 DISRTO 位(地址 8EH)可打開或關(guān)閉該功能。如有必要,可通 過對(duì)特殊功能寄存器( SFR)區(qū)中的 8EH單元的 D0位置位,可禁止 ALE 操作。當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,高有兩次有效的 PSEN 信號(hào)。如 EA端為高電平(接 Vcc 端), CPU 則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。 AT89S51 單片機(jī)內(nèi)部構(gòu)造及功能: 特殊功能寄存器:特殊功能寄存器的片內(nèi)空間分存如下圖 32所示。 雙時(shí)鐘指針寄存器:為方便地訪問內(nèi)部和外部數(shù)據(jù)存儲(chǔ)器,提供了兩個(gè) 16位數(shù)據(jù)指針寄存儲(chǔ)器: PD0位于 SFR區(qū)塊中的地址 82H、 83H和 DP1位于地址 84H、 85H,當(dāng) SFR中的位 DPS=0時(shí)選擇 DP0,而 DPS=1時(shí)選擇 DP1。 程序存儲(chǔ)器:如果 EA引腳接地( GND),全部程序均執(zhí)行外部存儲(chǔ)器。外部復(fù)位時(shí), WDT默認(rèn)為關(guān)閉狀態(tài),要打開 WDT,必按順序?qū)?01H和 0E1H寫到 WDTRST寄存器,當(dāng)啟動(dòng)了 WDT,它會(huì)隨晶體振蕩器在每個(gè)機(jī)器周期計(jì)數(shù),除硬件復(fù)位或 WDT溢出復(fù)位外沒有其它方法關(guān)閉 WDT,當(dāng) WDT溢出,將使 RST引腳輸出高電平的復(fù)位脈沖。對(duì)鍵的識(shí)別通常有兩種方法:一種是常用的逐行掃描查詢法;另一種是速度較快的線反轉(zhuǎn)法。如果有按鍵按下,總會(huì)有一根行線電平被拉至低電平從而使行線不全為 1。從而可以看出 DS18B20 可以 非常 方便的被 用于遠(yuǎn)距離多點(diǎn)溫度檢測系統(tǒng) 。該芯片直接向單片機(jī)傳輸數(shù)字信號(hào),便于單片機(jī)處理及控制。 單片機(jī)與 DS18B20的通信 如圖 5所示: 基于單片機(jī)的溫度測控系統(tǒng)設(shè)計(jì) 9 圖 5 單片機(jī)與 DS18B20的通信 七段數(shù)碼管顯示 模塊 在本系統(tǒng)中采用了 LED 七段數(shù)碼動(dòng)態(tài)顯示電路來顯示溫度值,顯示范圍在 099 之間 。 數(shù)碼管如圖 6所示 : 圖 6 數(shù)碼管 LED 數(shù)碼管作為顯示字段的數(shù)碼型顯示器件,它是由若干個(gè)發(fā)光二極管組成的。當(dāng)某個(gè)發(fā)光二極管的陽極為高電平時(shí),發(fā)光二極管點(diǎn)亮,相應(yīng)的段被顯示。其主要實(shí)現(xiàn)的部分包括:鍵盤輸入、溫度采集、數(shù)據(jù)轉(zhuǎn)換、動(dòng)態(tài)顯示、溫度控制等。第二步是加電后檢查各個(gè)插件上引腳的電位,仔細(xì)測量各點(diǎn)電位是否正常,尤其應(yīng)注意單片機(jī)插座上的各點(diǎn)電位,若有高壓,聯(lián)機(jī)時(shí)將會(huì)損壞仿真器。根據(jù)計(jì)算程序的功能,事先準(zhǔn)備好一組測試數(shù)據(jù)。如果用于測試的數(shù)據(jù)沒有全部覆蓋實(shí)際計(jì)算的原始數(shù)據(jù)的類型,調(diào)試沒有發(fā)現(xiàn)錯(cuò)誤可能在系統(tǒng)運(yùn)行過程中暴露 出來。 本系統(tǒng)的核心技術(shù)表現(xiàn)在溫度采集、矩陣鍵 盤輸入和動(dòng)態(tài)顯示部分,其中溫度采集的硬件部分使用溫度傳感器 DS18B20,通過軟件控制與 DS18B20的串口通訊來進(jìn)行溫度采集; 鍵盤輸入采用鍵碼的掃描來實(shí)現(xiàn) .。 基于單片機(jī)的溫度測控系統(tǒng)設(shè)計(jì) 17 附錄 附錄 1 主程序代碼 include define uchar unsigned char define uint unsigned int define D0 P0 define uchar unsigned char unsigned char hour,min,sec,T50ms。 sbit L1 = P1^4。 sbit L5 = P1^0。//09數(shù)字 void init()。 //顯示子程序聲明 //*****延時(shí)子程序 1***** void Delay_DS18B20(int num) { while(num)。t++)。i) for(j=248。 TH0=0x3c。 ET0=1。 DQ = 1。 //精確延時(shí),大于 480us DQ = 1。 } //*****讀一個(gè)字節(jié) ***** unsigned char ReadOneChar(void) { unsigned char i = 0。i) { DQ = 0。 Delay_DS18B20(4)。i 0。 Delay_DS18B20(5)。 Init_DS18B20()。 WriteOneChar(0xcc)。 //讀高 8位 tvalue = b。 else { 基于單片機(jī)的溫度測控系統(tǒng)設(shè)計(jì) 21 tvalue = ~tvalue+1。 } //******T0 中斷服務(wù)子程序 ******* void timer0() interrupt 1 //timer0 中斷服務(wù)子程序 ,定時(shí)時(shí)間為 50ms,本程序加了10us 的時(shí)間修正量 { TMOD=0x01。//(6553649990)%256。 if(sec=60) { sec=0。 if(hour=24)hour=0。//百位數(shù) L5 = 1。//十位數(shù) L4 =1。//個(gè) 位數(shù) L3 = 1。//小 數(shù) 點(diǎn) L3 = 1。//小 數(shù) 位 L2 = 1。 delay500us(5)。 L5 = 0。 L4 = 0。 L3 = 0。 L2 = 0。 L1 = 0。 L0 = 0。 min=45。 } if(a%2==0) { tvalue = ReadTemperature()。 //分離出個(gè)位 p = tvalu
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1