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

正文內(nèi)容

基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)論文-wenkub.com

2024-11-08 14:55 本頁面
   

【正文】 //最高位為 0 時(shí)不顯示 if(!display[2]) { display[2]=0x0a。 // 取后兩位數(shù)據(jù)暫存 display[2]=display[1]/10。 // 取小數(shù)部分的值 display[0]=ditab[display[4]]。 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 47 if(tem6348) // 溫度值正負(fù)判斷 {tem=65536tem。 temp=temp|temp_data[0]。 temp_data[0]=read_byte()。 //發(fā)轉(zhuǎn)換命令 ow_reset()。 } read_temp() //讀出溫度函數(shù) { ow_reset()。 //4 us if(DQ)value|=0x80。 _nop_()。 _nop_()。 _nop_()。 for(i=8。 //右移 1 位 } DQ=1。 //5 us DQ=valamp。 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 45 _nop_()。i) { DQ=1。 } DQ=1。 delay(6)。 _nop_()。w3=1。L1=1。L2=1。L3=1。L4=1。j4。t0。 uchar table_dm1[]={0xbf,0x86,0xdb,0xcf, //共陰 LED 段碼表 0 1 2 3 4 5 6 7 8 9 不亮 0xe6,0xed,0xfd,0x87, 0xff,0xef}。 uchar tt=0。 uchar r。 //溫度加 sbit dec=P1^6。 //數(shù)碼管 3 sbit L4=P2^3。延時(shí)函數(shù)用 define dm P0 //段碼輸出口 define uchar unsigned char define uint unsigned int sbit DQ=P1^7。 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 39 謝辭 值此之際,向在我畢業(yè)設(shè)計(jì)期間給予我諄諄教誨的 李杰 老師表示衷心的感謝! 感謝老師給了我很大的幫助,同時(shí)也離不開很多同學(xué) 的 熱心幫助,是他們在我遇到難題的時(shí)候給了我啟發(fā)。 展望 系統(tǒng)硬件 系統(tǒng)硬件使用 51單片機(jī)以及一些外圍電路,其中 51 單片機(jī)的外圍接口資源占用較少,有明顯的資源浪費(fèi)現(xiàn)象,還需要進(jìn)行進(jìn)一步的改進(jìn)以及功能的提升和拓展。以 4 位數(shù)碼管為顯示器件,利用單片機(jī)的 P0口和上拉電阻來驅(qū)動 4位數(shù)碼管的顯示;利用單片機(jī)的 來驅(qū)動溫度傳感西南石油大學(xué)本科畢業(yè)設(shè)計(jì) 38 器 DS18B20 測溫;報(bào)警電路利用三極管放大作用驅(qū)動報(bào)警器報(bào)警;按鍵是利用單片機(jī)的 P1 口和上拉電阻來驅(qū)動工作 軟件方面 本次設(shè)計(jì)利用 Protues 軟件對系統(tǒng)進(jìn)行仿真,利用 Keil C51 軟件對系統(tǒng)進(jìn)行編程。在整個設(shè)計(jì)過程中,由于難度的原因,系統(tǒng)實(shí)現(xiàn)的功能有限,與市場上同類產(chǎn)品存在相當(dāng)?shù)牟罹啵辉诰幊谭矫?,雖然采用 C語言編程,但是對其的理解不夠透徹,還存在很大的提升空間。 本 課題 所設(shè) 計(jì)的數(shù)字溫度計(jì)包括硬件組成和軟件的設(shè)計(jì)。如果有,應(yīng)立即關(guān)斷電源,待故障排除后,方可重新接通電源。特別是注意 各個部分的 電源是否接錯,電源與地是否有短接, ATC89C52和 4位數(shù)碼管顯示管 的引腳是否接錯,輕輕撥一撥元器件,觀察焊點(diǎn)是否牢固等 。 圖 圖 下限溫度報(bào)警值 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 35 5 系統(tǒng)調(diào)試和分析 系統(tǒng)調(diào)試 首先檢查電路的焊接是否正確及電路中有沒有虛焊等問題,然 后用萬用表測試 電路板上的各個正極和負(fù)極是否全部都正確的接在了相應(yīng)的正極公共端和負(fù)極公共端上和檢查各元件的引腳是否有接錯 。當(dāng)再次按下 K1 鍵時(shí),進(jìn)入溫度報(bào)警下線調(diào)節(jié),此時(shí)顯示軟件設(shè)置的溫度報(bào)警下線,按 K2或 K3 分別對報(bào)警溫度進(jìn)行加一或減一。仿真圖如圖 。對于這樣的仿真實(shí)驗(yàn).從某種意義上講,是彌補(bǔ)了.實(shí)驗(yàn)和工程應(yīng)用閹脫節(jié)的矛盾和現(xiàn)象。 3. 提供軟件調(diào)試功能,同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如 Keil 等軟件。在編譯方面,它也支持 IAR、 Keil 和 MPLAB 等多種編譯器。它是目前最好的仿真單片機(jī)及外圍器件的工具。對于一些必須滿足一定條件 (如按鍵被按下等 )才能被執(zhí)行的、難以用單步執(zhí)行方式進(jìn)行西南石油大學(xué)本科畢業(yè)設(shè)計(jì) 32 調(diào)試的程序行,可采用斷點(diǎn)設(shè)置的方法處理 (DebugInsert/Remove Breakpoint 或DebugBreakpoints? 等 )。工程設(shè)置后按 F7 鍵 (或點(diǎn)擊編譯工具欄上相應(yīng)圖標(biāo) )進(jìn)行編譯 /匯編、連接以及產(chǎn)生目標(biāo)文件 。首先選擇菜單 FileNew? ,在源程序編輯器中輸入?yún)R編語言或 C 語言源 程序 (或選擇FileOpen? ,直接打開已用其它編輯器編輯好的源程序文檔 )并保存,注意保存時(shí)必須在文件名后加上擴(kuò)展名 .asm(.a51)或 .c;然后選擇菜單 ProjectNew Project? ,建立新工程并保存 (保存時(shí)無需加擴(kuò)展名,也可加上擴(kuò)展名 .uv2);工程保存后會立即彈出一個設(shè)備選擇對話框,選擇 CPU 后點(diǎn)確定返回主界面。 Keil 提供包括 C 編譯器、宏匯編、連接器、庫管理和一個功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,由以下幾部分組成:基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 31 μVision IDE 集成開發(fā)環(huán)境 C51 編譯器、 A51匯編器、 LIB51 庫管理器、 BL51連接 /定位器、 OH51 目標(biāo)文件生成器以及 Monitor5 RTX51 實(shí)時(shí)操作系統(tǒng) [10]。 Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全 Windows 界面。 圖 顯示數(shù)據(jù)刷新子程序流程圖 報(bào)警子程序 設(shè)置報(bào)警標(biāo)志位位 beep,當(dāng)溫度大于設(shè)置的高限報(bào)警值或低于設(shè)置的低限報(bào)警值是,beep=1 報(bào)警;當(dāng)溫度值在正常范圍內(nèi)時(shí), beep= 所示: 圖 報(bào)警流程圖 西南石油大學(xué)本科畢業(yè)設(shè)計(jì) 30 按鍵掃描處理子程序 按鍵采用掃描查詢方式,設(shè)置標(biāo)志位,當(dāng)標(biāo)志 位為 1 時(shí),顯示設(shè)置溫度,否則顯示當(dāng)前溫度。其程序流程圖如圖 : 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 27 圖 讀出溫度子程序流程圖 溫度轉(zhuǎn)換命令子程序 溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用 12 位分辨率時(shí)轉(zhuǎn)換時(shí)間約為 750ms,在本程序設(shè)計(jì)中采用 1s 顯示程序延時(shí)法等待轉(zhuǎn)換的完成。 西南石油大學(xué)本科畢業(yè)設(shè)計(jì) 24 表 38 9芯 RS232C的引腳功能 串 口電路 設(shè)計(jì) 單片機(jī)與上位機(jī)( PC 機(jī))的接口電路如圖 所示 : 圖 接口電路 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 25 系統(tǒng)的總體電路圖如圖 所示: 圖 總體電路圖 4 系統(tǒng)軟件設(shè)計(jì) 各模塊的程序設(shè)計(jì) 系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算 溫度子程序,顯示數(shù)據(jù)刷新子程序和按鍵掃描處理子程序等。 RS232C 提供的兩個信道中 , 輔助串行信道提供數(shù)據(jù)控制和第二信道 , 但其傳輸速率比主信道要低得多。 RS 232C 總線標(biāo)準(zhǔn)規(guī)定了 21個信號 , 有 25條引腳線 , 常采用 25芯 D型插頭座 , 提供一個主信道和一個輔助信道 , 在多數(shù)情況下主要使用主信道。 驅(qū)動器允許有 2500 pF 的電容負(fù)載 , 通信距離將受此電容限制。 RS232 接口的電平轉(zhuǎn)換 RS232C標(biāo)準(zhǔn)是在 TTL電路之前研制的 , 它的電平不是 +5 V和地 , 而是采用負(fù)邏輯 , 其邏輯電平為 : 邏輯“ 0”:+3 V ~ +15 V 邏輯“ 1”: 3 V~ 15 V 因此 , RS232C 不能和計(jì)算機(jī)的 TTL 電平直接相連 , 使用時(shí)必須加上適當(dāng)?shù)碾娖睫D(zhuǎn)換電路芯片 , 否則 將使 TTL 電路燒壞。 MAX232 的原理電路圖如圖 所示: 圖 MAX 電路原理圖 西南石油大學(xué)本科畢業(yè)設(shè)計(jì) 22 MAX232 的 主要特點(diǎn): 符合所有的 RS232C 技術(shù)標(biāo)準(zhǔn) 只需要單一 +5V 電源供電 片載電荷泵具有升壓、電壓極性反轉(zhuǎn)能 力,能夠產(chǎn)生 +10V 和 10V 電壓V+、 V 功耗低,典型供電電流 5mA 內(nèi)部集成 2 個 RS232C 驅(qū)動器 內(nèi)部集成兩個 RS232C 接收器 RS232 接口簡介 RS232C 是使用最早、 應(yīng)用最多的一種異步串行通信總線標(biāo)準(zhǔn) , 它是美國電子工業(yè)協(xié)會 EIA(Electronic Industry Association)于 1962 年公布、 1969 年最后修訂而成的。 8腳( R2IN)、 9 腳( R2OUT)、 10腳( T2IN)、 7腳( T2OUT)為第二數(shù)據(jù)通道。功能是產(chǎn)生 +12v 和 12v 兩個電源,提供給 RS232 串口電平的需要。四位數(shù)碼管的顯示電路如圖 所示,從左到右依次是百位,十位,個位,十分位。另外需要一個與門實(shí)現(xiàn)與中斷端口的連接。這種拷貝操作在 DS18B20 上電時(shí)自動執(zhí)行,這樣一上電暫存器里馬上存在有效的數(shù)據(jù)了。溫度轉(zhuǎn)換命令被執(zhí)行,而后DS18B20 保持等待狀態(tài)。 ( 8) Copy Scratchpad[48H] 這個命令把暫存 器的內(nèi)容拷貝到 DS18B20 的 E2 ROM 存儲器里,即把溫度報(bào)警觸發(fā)器字節(jié)存入非易失性存儲器里。可以在任何時(shí)刻發(fā)出復(fù)位命令來中止寫入。然而,只有在最近一次測溫后遇到符合報(bào)警條件的情況, DS18B20 才會響應(yīng)這條命令??偩€上發(fā)生數(shù)據(jù)沖突(漏極開路連在一起形成“與”的效果)。所有和 64 位 ROM 序列不匹配的從機(jī)都將等待復(fù)位脈沖。只有在總線上存在單只 DS18B20 的時(shí)候才能用這個命令。每個讀周期最短的持續(xù)期為 60us,各個讀周期之間也必須有 1us 以上的高電平恢復(fù)期。在 15us 之內(nèi)將所需寫的位送到數(shù)據(jù)線上,在 15us 到 60us 之間對數(shù) 據(jù)線進(jìn)行采樣,如果采樣為高電平,西南石油大學(xué)本科畢業(yè)設(shè)計(jì) 16 就寫 1,如果為低電平,寫 0 就發(fā)生。 表 37 DS18B20暫存寄存器分布 寄存器內(nèi)容 字節(jié)地址 溫度值低位 ( LS Byte) 0 溫度值高位 ( MS Byte) 1 高溫限值( TH) 2 低溫限值( TL) 3 配置寄存器 4 保留 5 保留 6 保留 7 CRC校驗(yàn)值 8 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì) 15 DS18B20 的工作時(shí)序 DS18B20 的一線工作協(xié)議流程是:初始化→ ROM 操作指令→存儲器操作指令→數(shù)據(jù)傳輸。 R1 和 R0 用來設(shè)置分辨率,如下表 36所示( DS18B20 出廠時(shí)被設(shè)置為 12 位) [5]。 表 34 DS18B20溫度值格式表 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 LS Byte 23 22 21 20 2 1? 2 2? 23? 24? bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 MS Byte S S S S S 26 25 24 西南石油大學(xué)本科畢業(yè)設(shè)計(jì) 14 ( 2) 高低溫報(bào)警觸發(fā)器 TH和 TL DS18B20溫度傳感器的內(nèi)部存儲 器包括一個高速暫存 RAM和一個非易失性的可電擦除的 EEPRAM,后者存放高溫度和低溫度觸發(fā)器 TH、 TL 和結(jié)構(gòu)寄存器。 DS18B20 中溫度傳感器完 成對溫度的側(cè)量,用 16位符號擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供, 以 ℃ /LSB 形式表達(dá),其中 S為符號位。 DS18B20 溫度值格式表 44如下所示。當(dāng)工作 于寄生電源時(shí),此引腳必須接地。 I/O C VDD 圖 DS18B20的內(nèi)部結(jié)構(gòu) 圖 DS18B20的管腳排列 64 位ROM和單線接 口 高速緩存 存儲器 存儲器和控制器 8 位 CRC 生成器 溫度傳感器 低溫觸發(fā)器 TL 高溫觸發(fā)器 TH
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1