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

正文內(nèi)容

基于單片機(jī)數(shù)字溫度計(jì)-在線瀏覽

2025-08-14 19:35本頁(yè)面
  

【正文】 之一是采用了單總數(shù)的數(shù)據(jù)傳輸,由數(shù)字溫度計(jì) DS18B20 和微控制器 AT89C52 構(gòu)成溫度測(cè)量裝置,它直接輸出溫度的數(shù)字信號(hào),可直接和計(jì)算機(jī)連接。采用 51 單片機(jī)控制軟件編程的自由度大,而且體積小,硬件實(shí)現(xiàn)簡(jiǎn)單,安裝方便。 從以上兩總方案,容易看出方案一的溫測(cè)裝置可測(cè)溫度范圍廣,體積小,但是單線性誤差大。顯示電路可以采用兩種方案:第一種是通過(guò)單片機(jī)控制譯碼器將譯碼器輸出的數(shù)據(jù)送給數(shù)碼管進(jìn)行顯示,但是要單獨(dú)增加一個(gè)顯示電路,使設(shè)計(jì)比較復(fù)雜。 方案論證在日常生活及工農(nóng)業(yè)生產(chǎn)中經(jīng)常要檢測(cè)溫度,傳統(tǒng)的方式是采用熱電偶或熱電阻。近年來(lái)隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正不斷走向深入。根據(jù)題目的要求,本次設(shè)計(jì)采用由 AT89C51 單片機(jī)及 DS18B20 溫度傳感器組成數(shù)據(jù)采集電路,加上顯示電路和控制電路等,根據(jù)溫度數(shù)據(jù)測(cè)量,通過(guò)控制電路對(duì)溫度進(jìn)行控制。主控電路時(shí)鐘電路復(fù)位電路顯示電路單片機(jī) 測(cè)溫電路電源電路圖 22 方案二框圖第 5 頁(yè)A/D 轉(zhuǎn)換器將溫度傳感器采集的溫度模擬信號(hào)轉(zhuǎn)化成數(shù)字信號(hào),送入單片機(jī)的 I/O數(shù)據(jù)接口,然后通過(guò)單片機(jī)讀回 I/O 數(shù)據(jù)進(jìn)行溫度的判斷,最后將數(shù)據(jù)送入顯示譯碼單元。第 6 頁(yè)第 3 章 硬件設(shè)計(jì) 主控芯片介紹單片機(jī) AT89C2051 具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿(mǎn)足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。AT89C51 是一個(gè)低功耗高性能單片機(jī),40 個(gè)引腳,32 個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含 2 個(gè)外中斷口,2 個(gè) 16 位可編程定時(shí)計(jì)數(shù)器,2 個(gè)全雙工串行通信口,AT89C51 可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。31AT89C51 主要功能特性:圖 31 AT89C51 單片機(jī)的管腳圖第 7 頁(yè)表 31AT89C51 單片機(jī)的管腳功能。GND:接地。當(dāng) P1 口的管腳第一次寫(xiě) 1 時(shí),被定義為高阻輸入。在 FIASH 編程時(shí),P0 口作為原碼輸入口,當(dāng) FIASH 進(jìn)行校驗(yàn)時(shí),P0 輸出原碼,此時(shí) P0 外部必須被拉高。P1 口管腳寫(xiě)入 1 后,被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。P2 口:P2 口為一個(gè)內(nèi)部上拉電阻的 8 位雙向 I/O 口,P2 口緩沖器可接收,輸出 4 個(gè)TTL 門(mén)電流,當(dāng) P2 口被寫(xiě)“1” 時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。這是由于內(nèi)部上拉的緣故。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2 口輸出其特殊功能寄存器的內(nèi)容。P3 口:P3 口是 8 個(gè)帶內(nèi)部上拉電阻的雙向 I/O 口,可接收輸出 4 個(gè) TTL 門(mén)電流。作為輸入,由于外部下拉為低電平,P3 口將輸出電流(ILL)這是由于上拉的緣故。RST:復(fù)位輸入。ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在平時(shí),ALE 端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的 1/6。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè) ALE 脈沖。此時(shí), ALE 只有在執(zhí)行MOVX,MOVC 指令是 ALE 才起作用。如果微處理器在外部執(zhí)行狀態(tài) ALE 禁止,置位無(wú)效。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN 有效。/EA/VPP:當(dāng)/EA 保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000HFFFFH) ,不管是否有內(nèi)部程序存儲(chǔ)器。在 FLASH 編程期間,此引腳也用于施加 12V 編程電源(VPP) 。XTAL2:來(lái)自反向振蕩器的輸出。一般電路正常工作需要供電電源為 5V177。復(fù)位是單片機(jī)的初始化操作,其目的是使 CPU 及各專(zhuān)用寄存器處于一個(gè)確定的初始狀態(tài)。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)單片機(jī)系統(tǒng)在運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需要復(fù)位以使其恢復(fù)正常工作狀態(tài)。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種,本系統(tǒng)設(shè)計(jì)采用上電復(fù)位,如圖 23 所示。 時(shí)鐘電路單片機(jī)的時(shí)鐘信號(hào)用來(lái)提供單片機(jī)內(nèi)各種微操作的時(shí)間基準(zhǔn),時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。本系統(tǒng)設(shè)計(jì)采用內(nèi)部振蕩方式,如圖 24 所示。VCCC3R110KGNDRST圖 32 復(fù)位電路圖 33 時(shí)鐘電路第 10 頁(yè) 矩陣電路按照鍵盤(pán)與單片機(jī)的連接方式可分為獨(dú)立式鍵盤(pán)與矩陣式鍵盤(pán)。在鍵盤(pán)中按鍵較多時(shí),為了減少 I/O 口的占用,通常將按鍵排列成矩陣形式。這樣,一個(gè)端口就可以構(gòu)成 4x4=16 個(gè)按鍵,比之直接將端口線用于鍵盤(pán)多出了一倍,而且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成 20 的鍵盤(pán),而直接用端口線則只能多出一鍵。判斷鍵盤(pán)中有無(wú)鍵按下:將全部行線置低電平,然后檢測(cè)列線的狀態(tài)。若所有列線均為高電平,則按鍵中無(wú)鍵按下。其方法是:依次將行線置為低電平,即在置某根行線為低電平時(shí),其它線為高電平。若某列為低,則該列線與置為低電平的行線交叉處的按鍵就是閉合的按鍵。單片機(jī)應(yīng)用系統(tǒng)中最常用的顯示器有 LED 和 LCD 兩種。字符型液晶顯示模塊是一種專(zhuān)門(mén)用于顯示字母,數(shù)字,字符等點(diǎn)陣式 LCD,目前常用的有 16x1,16x2,20x2,40x2 行等模塊。這類(lèi)顯示器把 LCD 控制器,點(diǎn)陣驅(qū)動(dòng)器,字符存儲(chǔ)器,顯示體及少量的組容元件等集成一個(gè)液晶顯示模塊,鑒于字符型液晶顯示模塊目前在國(guó)際上已經(jīng)規(guī)范化,其電特性及接口特性是統(tǒng)一的。字符型液晶顯示模塊的控制器大多數(shù)為日立公司生產(chǎn)的 HD44780 及其兼容的控制器。每個(gè)點(diǎn)陣塊為一個(gè)字符位,字符間距和行距都為一個(gè)點(diǎn)的寬度。因此從程序員的角度來(lái)說(shuō),LCD 的顯示接口與編程是面向 HD44780 的,只要了解 HD44780 的編程結(jié)構(gòu)即可進(jìn)行 LCD 的顯示編程。(4)具有 64 字節(jié)的自定義字符 RAM,可以定義 8 個(gè) 5x8 點(diǎn)陣字符或 4 個(gè) 5x11 點(diǎn)陣字符。(6)標(biāo)準(zhǔn)接口,與 M68HC08 系列 MCU 容易接口。(8)單+5V 電源供電。(10)HD44780 的引腳與時(shí)序第 12 頁(yè)(11)HD44780 的外部接口信號(hào)一般有 16 條,與 MCU 的接口有 8 條數(shù)據(jù)線DB0~DB7 和 3 條控制線 RS,RW,E,HD44780 的引腳功能如表 32 所示。它具有體積小,接口方便,傳輸距離遠(yuǎn)等特點(diǎn)?!S18B20 工作原理溫度傳感器 DS18B20 將被測(cè)環(huán)境溫度轉(zhuǎn)化成帶符號(hào)的數(shù)字信號(hào)(以十六位補(bǔ)碼形式,占兩個(gè)字節(jié))在通過(guò)單片機(jī)發(fā)出命令送給顯示器。傳感器控制程序是按照DS18B20 的通信協(xié)議編制。 DS18B20 的性能特點(diǎn)(1) 采用單總線專(zhuān)用技術(shù),既可通過(guò)串行口線,也可通過(guò)其它 I/O 口線與微機(jī)接口,無(wú)須經(jīng)過(guò)其它變換電路,直接輸出被測(cè)溫度值(9 位二進(jìn)制數(shù),含符號(hào)位) ;(2) 測(cè)溫范圍為 55℃~+125℃,測(cè)量分辨率為 ℃;(3) 內(nèi)含 64 位經(jīng)過(guò)激光修正的只讀存儲(chǔ)器 ROM;(4) 適配各種單片機(jī)或系統(tǒng)機(jī);(5) 用戶(hù)可分別設(shè)定各路溫度的上、下限;(6) 內(nèi)含寄生電源。DS18B20 的管腳排列如圖 3-5 所示。不同的器件地址序列號(hào)不同。如果測(cè)得的溫度大于 0,這 5 位為 0,只要將測(cè)到的數(shù)值乘于 即可得到實(shí)際溫度;如果溫度小于 0,這 5 位為 1,測(cè)到的數(shù)值需要取反加 1 再乘于 才能得到實(shí)際溫度。無(wú)論是內(nèi)部寄生電源還是外部供電,I/O 口線要接 5KΩ 左右的上拉電阻。表 3-2 DS18B20 有六條控制命令CPU 對(duì) DS18B20 的訪問(wèn)流程是:先對(duì) DS18B20 初始化,再進(jìn)行 ROM 操作命令,最后才能對(duì)存儲(chǔ)器操作,數(shù)據(jù)操作。如主機(jī)控制 DS18B20 完成溫度轉(zhuǎn)換這一過(guò)程,根據(jù) DS18B20 的通訊協(xié)議,須經(jīng)三個(gè)步驟:每一次讀寫(xiě)之前都要對(duì) DS18B20 進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM 指令,最后發(fā)送 RAM 指令,這樣才能對(duì) DS18B20 進(jìn)行預(yù)定的操做。C,TL 為 —20176。C 或高于 110176。整機(jī)電路圖如圖 38 所示+ XTAL218XTAL119ALE301PSN29RST9P0./UAT89C52+5V 234567891RP110K+5VD71463D5124D31029D1807E6RW5S4VS1D2VE3LCD1LM016LDQ2VCGN1U3DS18B20+C130pC230p X1CRYSTAL310uFR10kGNDVCR2 VCCDQGND+5VGND圖 38 整機(jī)電路圖第 17 頁(yè)第 4 章 軟件設(shè)計(jì)整個(gè)系統(tǒng)的功能是由硬件電路配合軟件來(lái)實(shí)現(xiàn)的,當(dāng)硬件基本定型的時(shí)候軟件也基本定下拉了,從軟件的功能不同,可以分為兩的類(lèi):一是主程序,它是整個(gè)軟件的核心,專(zhuān)門(mén)用來(lái)協(xié)調(diào)各個(gè)執(zhí)行模塊和操作者的聯(lián)系。每一個(gè)執(zhí)行軟件就是一個(gè)小的執(zhí)行模塊,這里將每一個(gè)模塊一一列出來(lái),并為每個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義。首先要根據(jù)系統(tǒng)的總體功能選擇一種最合適的主程序結(jié)構(gòu),然后根據(jù)實(shí)時(shí)性的條件,合理安排監(jiān)控軟件和執(zhí)行軟件之間的調(diào)度關(guān)系。 //設(shè)置上下限報(bào)警溫度和分辨率 delay(100)。 temper_LCD()。alarm_LCD(TH,TL)。LCD_Print(0,0,TempBuffer0)。 scan_full()。 //調(diào)用鍵盤(pán)掃描程序key_mand(key_value)。DQ = 0。 //精確延時(shí) 大于 480usDQ = 1。x=DQ。等待 50us讀入 DQ 的狀態(tài)等待 200usDQ 置 1初始化結(jié)束DS18B20 初始化DQ 置 1D0 清零,發(fā)復(fù)位脈沖延時(shí) 600usDQ 置 1第 20 頁(yè)}/***********ds18b20 讀一個(gè)字節(jié)**************/unsigned char ReadOneChar(void){unsigned char i=0。for (i=8。i){DQ = 0。DQ = 1。delay_18B20(4)。}溫度測(cè)量的結(jié)果以二進(jìn)補(bǔ)碼形式來(lái)存放,分辨力 12 位的測(cè)量結(jié)果用帶 5 個(gè)符號(hào)的 16 位二進(jìn)制格式來(lái)表示,高低 8 位分別存儲(chǔ)在兩個(gè) RAM 單元中,前面 5 位 S 代表符號(hào)位,DS18B20 函數(shù)的作用就是完成這一過(guò)程的 第 21 頁(yè)N 圖 43DS18B20 寫(xiě)字節(jié)流程圖DS18B20 寫(xiě)函數(shù)void setds18b20(unsigned char TH,unsigned char TL,unsigned char RS){Init_DS18B20()。 //跳過(guò)讀序號(hào)列號(hào)的操作WriteOneChar(0x4E)。 //寫(xiě)入想設(shè)定的溫度報(bào)警上限WriteOneChar(TL)。 }8 位數(shù)據(jù)送完否?DS18B20 寫(xiě)入結(jié)束延時(shí) 15usDQ 置 1 設(shè)置為恢復(fù)狀態(tài)寫(xiě)入一位數(shù)據(jù)延時(shí) 15usDQ 清零,將 DQ 總線電平拉低設(shè)置串行位數(shù)為 8DS18B20 寫(xiě)開(kāi)始第 22 頁(yè)LCD 上電時(shí),都必須按照一定的時(shí)序?qū)?LCD 進(jìn)行初始化操作,主要任務(wù)是設(shè)置LCD 的工作方式,顯示狀態(tài),清屏,輸入方式,光標(biāo)位置等。LCD_Write(LCD_COMMAND,0x38)。LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR)。 //清屏LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE)。if(y==1)LCD_Write(LCD_COMMAND,0x80|(x0x40))。\039。str++。Print(str)。 //RS=0 表示選擇指令寄存器LcdRw=1。//RW=1 表示進(jìn)行讀操作LcdEn=1。 //在 EN 為下降沿的時(shí)候鎖存據(jù) while(DBPortamp。 _nop_()。_nop_()。} 開(kāi)始當(dāng) RS=1 時(shí),選擇數(shù)據(jù)寄存器把顯示數(shù)據(jù)送至 P0 口讀/寫(xiě)標(biāo)志位 R/W=0 時(shí),進(jìn)行寫(xiě)操作LCD 使能信號(hào) E 至高電平后再過(guò)兩個(gè)時(shí)鐘周期至低電平,產(chǎn)生一個(gè)下降沿信號(hào),使 LCD 寫(xiě)入顯示數(shù)據(jù)第 24 頁(yè) LcdEn=0。LcdRs=style。 _nop_()。 _nop_()。 _nop_()。 _nop_()。}//設(shè)置顯示模式************************************************************define LCD_SHOW //顯示開(kāi)define LCD_HIDE //顯示關(guān) define LCD_CURSOR //顯示光標(biāo)define LCD_NO_CURSOR //無(wú)光標(biāo) define LCD_FLASH //光標(biāo)閃動(dòng)define LCD_NO_FLASH //光標(biāo)不閃動(dòng)void LCD_SetDisplay(unsigned char DisplayMode){LCD_Write(LCD_COMMAND, 0x08|DisplayMode)。}第 26 頁(yè)最常見(jiàn)的矩陣式鍵盤(pán)按鍵識(shí)別方法是編程掃描,這里采用的是列
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1