




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 PAGE - 41 - PAGE 1論文題目:基于MCS51的多路溫度檢測終端設計與實現專 業:電子與信息工程學 生: 張澤鑫 簽名: 指導教師: 倪云峰 簽名: 摘 要 溫度是工業生產過程中保證產品質量的重要可控參數。因此,在工農業生產和科學研究中溫度的檢測與控制在現代經濟與社會中越來越受到重視。傳統的監測方法都是單點測量,同時有溫度傳遞不及時、精度不夠的缺點,不利于工業控制者根據溫度變化及時做出決定,因此多路溫度檢測終端的設計成了一項重要的研究課題。 本文設計了一種基于單片機的具有多路采集通道的高精度的數字溫度檢測系統。 硬件上,CPU采用STC89C52為主控芯片,配置DS18B20溫
2、度傳感器作為信號采集裝置,利用LCD1602對四路采集的溫度信號進行顯示。 軟件上運用C語言的編程,用protues仿真和硬件電路的設計,實現了實時溫度檢測,并能夠方便設置溫度上下限,實現報警功能,另外還配備了單片機與PC機的通信功能。 文中,終了進行了測試與實驗,實驗達到了預期的結果。【關鍵詞】溫度測量;單總線;數字溫度傳感器;單片機【論文類型】設計型Title:The Terminal design and implementation of multi-channel temperature detection based on MCS-51Major:Electronic inform
3、ation engineering Name:Zhang Zexin Signature: Supervisor:Ni Yunfeng Signature: ABSTRACTDuring the industry production process, the temperature is the important parameter of ensuring the quality of the products. Therefore, the detection and control of temperature in industrial and agricultural produc
4、tion and scientific research have playing a more and more important role. Traditional monitoring methods are single point measurement, meanwhile the temperature transfer is not timely and accurate enough .These are not conducive to industrial control according to the temperature change in a timely d
5、ecision. So it has become an important research topic in the design of multi-channel temperature detection terminal.This paper has designed a multi-channel acquisition channel digital high precision temperature detection system based on single chip microcomputer.On the aspect of hardware, the STC89c
6、52 is used as the main control chip. It equipped with the DS18B20 temperature sensor, which acts as signal acquisition device. The temperature signal of four ways acquisitions are displayed by the LCD1602.On the aspect of software, C-programming language used by Protues simulation and hardware circu
7、it design to achieve a real-time temperature detection. There is a ability to easily set the temperature limit, and the alarm function. Meanwhile it can also communicate with the PC.In this paper, the result of tested has achieved the goal as expected.【Key words】 temperature measure;single bus;digit
8、al thermometer;single chip processor【Type of Thesis】 Design mode目 錄 TOC o 1-3 h z u HYPERLINK l _Toc390673726 1 基礎理論 PAGEREF _Toc390673726 h - 1 - HYPERLINK l _Toc390673727 1.1 概述 PAGEREF _Toc390673727 h - 1 - HYPERLINK l _Toc390673728 2.1 單總線簡介 PAGEREF _Toc390673728 h - 3 - HYPERLINK l _Toc39067372
9、9 2.1.1 概述 PAGEREF _Toc390673729 h - 3 - HYPERLINK l _Toc390673730 2.1.2單總線的工作原理 PAGEREF _Toc390673730 h - 3 - HYPERLINK l _Toc390673731 2.1.3 單總線器件信號傳遞方式 PAGEREF _Toc390673731 h - 4 - HYPERLINK l _Toc390673732 1.3 MCS51單片機 PAGEREF _Toc390673732 h - 7 - HYPERLINK l _Toc390673733 1.3.1 MCS51單片機概述 PAG
10、EREF _Toc390673733 h - 7 - HYPERLINK l _Toc390673734 1.3.2 MCS-51單片機的結構 PAGEREF _Toc390673734 h - 7 - HYPERLINK l _Toc390673735 1.3.3 指令系統 PAGEREF _Toc390673735 h - 9 - HYPERLINK l _Toc390673736 1.3.4 中斷 PAGEREF _Toc390673736 h - 10 - HYPERLINK l _Toc390673737 1.3.5定時器 PAGEREF _Toc390673737 h - 10 -
11、 HYPERLINK l _Toc390673738 2 硬件設計方案 PAGEREF _Toc390673738 h - 11 - HYPERLINK l _Toc390673739 2.1系統綜述 PAGEREF _Toc390673739 h - 11 - HYPERLINK l _Toc390673740 2.2 溫度采集與測量系統 PAGEREF _Toc390673740 h - 12 - HYPERLINK l _Toc390673741 2.2.1 DS18B20的特性 PAGEREF _Toc390673741 h - 12 - HYPERLINK l _Toc3906737
12、42 2.1.2 DS18B20引腳排列 PAGEREF _Toc390673742 h - 13 - HYPERLINK l _Toc390673743 2.2.3 DS18B20 的硬件結構 PAGEREF _Toc390673743 h - 13 - HYPERLINK l _Toc390673744 2.2.4 DS18B20的供電方式 PAGEREF _Toc390673744 h - 14 - HYPERLINK l _Toc390673745 2.2.5 DS18B20的ROM指令 PAGEREF _Toc390673745 h - 16 - HYPERLINK l _Toc39
13、0673746 2.2.6 DS18B20的測溫原理 PAGEREF _Toc390673746 h - 18 - HYPERLINK l _Toc390673747 2.3 顯示系統 PAGEREF _Toc390673747 h - 19 - HYPERLINK l _Toc390673748 2.3.1 LCM1602顯示模塊 PAGEREF _Toc390673748 h - 19 - HYPERLINK l _Toc390673749 2.2.3 LCM1602管腳分布 PAGEREF _Toc390673749 h - 20 - HYPERLINK l _Toc390673750
14、2.4 報警系統及輸入設備 PAGEREF _Toc390673750 h - 21 - HYPERLINK l _Toc390673751 2.5 最小系統外圍電路 PAGEREF _Toc390673751 h - 22 - HYPERLINK l _Toc390673752 2.5.1 PC機與單片機的串行通信接口電路 PAGEREF _Toc390673752 h - 22 - HYPERLINK l _Toc390673753 2.5.2 晶振電路以及復位電路 PAGEREF _Toc390673753 h - 22 - HYPERLINK l _Toc390673754 3 軟件系
15、統的設計 PAGEREF _Toc390673754 h - 24 - HYPERLINK l _Toc390673755 3.1 主程序 PAGEREF _Toc390673755 h - 24 - HYPERLINK l _Toc390673756 3. 2 DS18B20 相關程序 PAGEREF _Toc390673756 h - 25 - HYPERLINK l _Toc390673757 3.2.1 查詢DS18B20的ROM PAGEREF _Toc390673757 h - 26 - HYPERLINK l _Toc390673758 3.2.2 DS18B20 初始化程序 P
16、AGEREF _Toc390673758 h - 27 - HYPERLINK l _Toc390673759 3.2.3 溫度采集 PAGEREF _Toc390673759 h - 27 - HYPERLINK l _Toc390673760 3.3 LCM1602 相關程序 PAGEREF _Toc390673760 h - 29 - HYPERLINK l _Toc390673761 3.3.1 LCM1602 初始化程序 PAGEREF _Toc390673761 h - 29 - HYPERLINK l _Toc390673762 3.3.2 顯示子程序 PAGEREF _Toc3
17、90673762 h - 31 - HYPERLINK l _Toc390673763 3.4 報警系統和鍵盤輸入系統相關程序 PAGEREF _Toc390673763 h - 32 - HYPERLINK l _Toc390673764 3.4.1 報警系統 PAGEREF _Toc390673764 h - 32 - HYPERLINK l _Toc390673765 3.4.2 鍵盤輸入 PAGEREF _Toc390673765 h - 32 - HYPERLINK l _Toc390673766 4 實驗結果總結 PAGEREF _Toc390673766 h - 34 - HYP
18、ERLINK l _Toc390673767 5總結與展望 PAGEREF _Toc390673767 h - 37 - HYPERLINK l _Toc390673768 5.1 總結 PAGEREF _Toc390673768 h - 37 - HYPERLINK l _Toc390673769 5.2 展望 PAGEREF _Toc390673769 h - 37 - HYPERLINK l _Toc390673770 致謝 PAGEREF _Toc390673770 h - 39 - HYPERLINK l _Toc390673771 參考文獻 PAGEREF _Toc39067377
19、1 h - 40 -1 基礎理論1.1 概述溫度是表征物體冷熱程度的物理量,是工業生產和科學實驗中一個非常重要的參數。溫度一直與人類的活動息息相關。無論是日常生活中,還是工農業控制過程中,溫度都是重要的測控對象之一,準確的溫度測量和實時的溫度控制對人類的生存發展有著只管重要的作用。隨著社會經濟迅猛發展,電子技術在國民經濟的建設中占據了相當重要的地位。無論是人民生活,經濟建設,還是國防建設,科學研究都有緊密的關系。加強電子科學技術的研究,對于提高產品質量,改進工藝,實現標準化、系列化、自動化;對于保障安全生產、提高生產效率,降低能源消耗;對于企業生產自動化、科學化、提高科研水平,增加經濟效益都具
20、有非常重要的作用。利用電子技術中對溫度進行測量,在社會經濟發展的各個領域中都十分重要。現如今,用溫度傳感器來測量實際設備中的溫度也變得越來越常見。它大體經過了三個發展的階段:模擬集成溫度傳感器階段、模擬集成溫度控制器階段和智能溫度傳感器階段。模擬集成溫度傳感器是采用硅半導體集成工藝制成,因此亦稱硅傳感器或單片集成溫度傳感器。這種傳感器具有功能單一(僅測量溫度)、測溫誤差小、價格低、響應速度快、傳輸距離遠、體積小、微功耗等,適合遠距離測溫、控溫,不需要進行非線性校準,外圍電路簡單。它是目前在國內外應用最為普遍的一種集成傳感器,典型產品有AD590、AD592、TMP17、LM135等;模擬集成溫
21、度控制器主要包括溫控開關、可編程溫度控制器,典型產品有LM56、AD22105和MAX6509。某些增強型集成溫度控制器(例如TC652/653)中還包含了A/D轉換器以及固化好的程序,這與智能溫度傳感器有某些相似之處。但它自成系統,工作時并不受微處理器的控制。智能溫度傳感器(亦稱數字溫度傳感器)是在20世紀90年代中期問世的。它是微電子技術、計算機技術和自動測試技術(ATE)的結晶。智能溫度傳感器內部都包含溫度傳感器、A/D轉換器、信號處理器、存儲器(或寄存器)和接口電路。有的產品還帶多路選擇器、中央控制器(CPU)、隨機存取存儲器(RAM)和只讀存儲器(ROM)。智能溫度傳感器的特點是能輸
22、出溫度數據及相關的溫度控制量,適配各種微控制器(MCU);并且它是在硬件的基礎上通過軟件來實現測試功能的,其智能化程度也取決于軟件的開發水平。1.2 國內外現狀進入21世紀后,溫度傳感器正朝著高精度、多功能、總線標準化、高可靠性及安全性、開發虛擬傳感器和網絡傳感器、研制單片測溫系統等高科技的方向迅速發展。目前市場主要存在單點和多點兩種溫度測量儀表。對于單點溫測儀表,主要采用傳統的模擬集成溫度傳感器,其中又以熱電阻、熱電偶等傳感器的測量精度高,測量范圍大,而得到了普遍的應用。此種產品測溫范圍大都在-200800之間,分辨率12位,最小分辨溫度在0.0010.01之間。自帶LED顯示模塊,顯示4位
23、到16位不等。有的儀表還具有存儲功能,可存儲幾百到幾千組數據。該類儀表可很好的滿足單個用戶單點測量的需要。多點溫度測量儀表,相對與單點的測量精度有一定的差距,雖然實現了多路溫度的測控,但價格昂貴。針對目前市場的現狀,本課題提出了一種可滿足要求、可擴展的并且性價比高的基于51單片機的多路溫度測控系統。該系統采用DS18B20數字溫度傳感器作為溫度采集器件,用STC89C52單片機作為主控芯片,通過1-wire總線外掛多個(至少三個)DS18B20實現多路溫度采集,最后通過LCD1602液晶屏顯示出來。功能以及技術指標:用1-wire總線協議實現最基本的4路溫度采集功能;溫度測量范圍:-55+12
24、5 ;各路溫度的精度要求在1;采用LCD顯示,同時顯示四路DS18B20的溫度;用戶可以通過按鍵輸入各路溫度的報警上限和下限;當系統檢測到實際溫度超過用戶設置的上限或者下限之后報警;應用1-wire通信協議來完成對四路DS18b20的控制;2.1 單總線簡介2.1.1 概述 目前常用的PC機與外設之間進行數據傳輸的串行總線主要有I2C總線、SPI總線和SCI總線。其中I2C總線以同步串行2線方式進行通信(一條時鐘線,一條數據線),SPI總線則以同步串行3線方式進行通信(一條時鐘線,一條數據輸入線,一條數據輸出線),而SCI總線是以異步方式進行通信(一條數據輸入線,一條數據輸出線)。這些總線至少
25、需要兩條或兩條以上的信號線。近年來,美國的達拉斯半導體公司(DALLAS SEMICONDUCTOR)推出了一項特有的單總線(1-Wire Bus)技術。該技術與上述總線不同,它采用單根信號線,既可傳輸時鐘,又能傳輸數據,而且數據傳輸是雙向的,因而這種單總線技術具有線路簡單,硬件開銷少,成本低廉,便于總線擴展和維護等優點。單總線適用于單主機系統,能夠控制一個或多個從機設備。主機可以是微控制器,從機可以是單總線器件,它們之間的數據交換只通過一條信號線。當只有一個從機設備時,系統可按單節點系統操作;當有多個從設備時,系統則按多節點系統操作。圖1-1所示是單總線多節點系統的示意圖。圖1-1 單主機多
26、節點系統示意圖2.1.2單總線的工作原理單總線即只有一根數據線,系統中的數據交換、控制都由這根線完成。設備(主機或從機)通過一個漏極開路或三態端口連至該數據線,以允許設備在不發送數據時能夠釋放總線,而讓其它設備使用總線,其內部等效電路如圖1-2所示。圖1-2 單總線的硬件接口示意圖單總線通常要求外接一個約為4.7k的上拉電阻,這樣,當總線閑置時,其狀態為高電平。主機和從機之間的通信可通過3個步驟完成:分別為初始化1-wire器件、識別1-wire器件和交換數據。由于它們是主從結構,只有主機呼叫從機時,從機才能應答,因此主機訪問1-wire器件都必須嚴格遵循單總線命令序列,即初始化、ROM命令、
27、功能命令。如果出現序列混亂,1-wire器件將不響應主機(搜索ROM命令,報警搜索命令除外)。表1-1為ROM命令的說明,而功能命令則根據具體1-wire器件所支持的功能來確定。表1-1 ROM命令說明ROM命令說明搜索ROM(F0h)識別單總線上所有的1-wire器件的ROM編碼讀ROM(33h)(僅適合單節點)直接讀1-wire器件的序列號匹配ROM(55h)尋找與指定序列號相匹配的1-wire器件跳躍ROM(CCh)(僅適合單節點)使用該命令可直接訪問總線上的從機設備報警搜索ROM(Ech)(僅少數器件支持)搜索有報警的從機設備2.1.3 單總線器件信號傳遞方式 單總線通信協議定義了如下
28、幾種類型,即復位脈沖、應答脈沖、寫0、寫1、讀0和讀1,除了應答脈沖外,所有的信號都由主機發出同步信號,并且發送的所有的命令和數據都是字節的低位在前。 單總線通信協議中不同類型的信號都采用一種類似脈寬調制的波形表示,邏輯0用較長的低電平持續周期表示,邏輯1用較長的高電平持續周期表示。在單總線通信協議中,讀寫時隙的概念十分重要。當系統主機向從設備輸出數據時產生寫時隙,當主機設備讀取數據時產生讀時隙,每一個時隙總線只能傳輸一位數據。無論是在讀時隙還是寫時隙,它們都以主機驅動數據線位低電平開始,數據線的下降沿是從設備觸發其內部的延時電路,使之與主機同步。在寫時隙內,該延遲電路決定從設備采樣數據線的時
29、間窗口。單總線通信協議中存在兩種寫時隙:寫1和寫0。主機采用寫1時隙向從機寫入1,而采用寫0時隙向從機寫入0。所有寫時隙至少要60us,且在兩次獨立的寫時隙之間至少需要1us的恢復時間。兩種寫時隙均起始于主機拉低數據總線。產生寫1時隙的方式:主機拉低總線后,接著必須在15us之內釋放總線,由上拉電阻將總線拉至高電平;產生寫0時隙的方式:為在主機拉低后,只需要在整個時隙間保持低電平即可(至少60us)。在寫時隙開始后15us60us期間,單總線器件采樣總電平狀態。如果在此期間采樣值為高電平,則邏輯1被寫入器件;如果為0,寫入邏輯0。 圖1-3給出了寫時隙(包括1和0)時序的圖形解釋。圖1-3 單
30、總線時序中寫時隙時序圖 在圖1-3中,黑色實線代表系統主機拉低總線,黑色虛線代表上拉電阻將總線拉高。對于讀時隙,單總線器件僅在主機發出讀時隙時,才向主機傳輸數據。所有主機發出讀數據命令后,必須馬上產生讀時隙,以便從機能夠傳輸數據。所有讀時隙至少需要60us,且在兩次獨立的讀時隙之間至少需要1us的恢復時間。每個讀時隙都由主機發起,至少拉低總線1us。在主機發出讀時隙之后,單總線器件才開始在總線上發送0或1。若從機發送1,則保持總線為高電平;若發出0,則拉低總線。 當發送0時,從機在讀時隙結束后釋放總線,由上拉電阻將總線拉回至空閑高電平狀態。從機發出的數據在起始時隙之后,保持有效時間15us,因
31、此主機在讀時隙期間必須釋放總線,并且在時隙起始后的15us之內進入采樣總線狀態。 圖1-4所示給出了讀時隙(包括讀0或讀1)時序的圖形解釋。圖1-4 單總線協議中寫時序時隙圖在圖1-4所示中,黑色實線代表系統主機拉低總線,灰色實線代表總局拉低總線,而黑色的虛線則代表上拉電阻總線拉高。單總線上的所有通信都是以初始化序列開始,初始化序列包括主機發出的復位脈沖及從機的應答脈沖,這一過程如圖1-5所示。圖1-5 單總線協議中寫時序時隙圖在圖1-5中,黑色實線代表系統主機拉低總線,灰色實線代表從機拉低總線,而黑色的虛線則代表上拉電阻極被那個總線拉高。 系統主設備發送端發出的復位脈沖式一個480us960
32、us的低電平,然后釋放總線進入接受狀態。此時系統總線通過4.7K的上拉電阻接至VCC高電平,時間約為15us60us,這種在接收端的設備就開始檢測I/O引腳上的下降沿以及監視在脈沖的到來。主設備處于這種狀態下的時間至少為480us。 從設備在接收到系統主設備發出的復位脈沖之后,向總線發出一個應答脈沖,表示從設備已準備好,可根據各種命令發送或接受數據。通常情況下,器件等待15us60us即可發送應答脈沖(該脈沖是一個60us240us的低電平信號,它由從機強迫將總線拉低)。復位脈沖是設備以廣播方式發出的,因而總線上所有的從設備同時發出應答脈沖。一旦器件檢測到應答脈沖后,主設備就認為總線上已連接了
33、從設備,接著主設備將發送有關的ROM功能命令。如果主設備未能檢測到應答脈沖,則認為總線上沒有掛接單總線從設備。1.3 MCS51單片機 1.3.1 MCS51單片機概述MCS-51單片機是一個40引腳的雙列直插式集成電路。主要包含以下資源:1)8位CPU,片內振蕩器;2)4KB/8KB片內程序存儲器(51系列有4KB,52系列有8KB);3)128B/256B片內數據存儲器(51系列有128B,52系列有256B);4)2/3個16位定時/計數器(51系列有2個,52系列有3個);5)32個可編程的I/O口線(4個8位并行I/O端口);6)1個可編程全雙工串行端口7)5/6個中斷源,2級中斷優
34、先級(51系列有5個,52系列有6個);8)可尋址64KB片外數據存儲器,64KB片外程序存儲器空間的控制電路;9)有強大的位處理功能。1.3.2 MCS-51單片機的結構圖1-6 單片機的結構單片機內部結構如圖1-6所示。由CPU、存儲器、并行I/O接口、中斷系統、定時/計數器及串行接口六部分組成。所有功能部件均與內部總線連接在一起。1)中央處理器(CPU)它由運算器、控制器及微處理器(又叫布爾處理器)組成,是整個單片機的核心,能處理8位二進制數據或代碼。2)存儲器MCS-51系列單片機的存儲器包括數據存儲器(RAM)和程序存儲器(ROM)。數據存儲器是通用存儲器,用于存放運算中間結果或臨時
35、數據。51/52片內有128/256B個8位數據存儲單元和特殊功能寄存器(SFR,21/26個)。當片內數據存儲器不夠使用時,可片外擴展。對外有64KB數據存儲器的尋址能力。程序存儲器用于存放用戶程序和常數。51/52片內有4KB/8KB個掩模ROM。當片內程序存儲器不夠使用時,可片外擴展。對外有64KB程序存儲器的尋址能力。3)接口電路單片機輸出的控制信號和外部采集的輸入信號,同時通過接口電路進行傳輸的,MCS-51單片機共有4個8位并行輸入/輸出接口,稱為P0,P1,P2,P3 口。共有32根I/O口線。4)時鐘振蕩電路51/52內置有一個振蕩器和時鐘電路,用于產生單片機運行的脈沖時序。M
36、CS-51的外部引腳及功能MCS-51單片機油40腳的DIP(雙列直插式封裝結構),還有44腳PLL封裝。這里以40腳的DIP介紹單片機的引腳及功能。單片機的40個引腳可分為I/O口線、電源與地、時鐘振蕩電路引腳及控制信號四大部分。分別為I/O口線32根(4個8位I/O端口)、電源與地(2個)、時鐘振蕩電路引腳(2個)及控制信號(4個)。5)I/O端口4個I/O端口分別為P0、P1、P2和P3口。P0口:一是作為普通I/O端口使用,是漏極開路的8位準雙向I/O口,每一位可驅動8個LSTTL負載。二是在訪問片外存儲器時,分時提供地址低8位和8位雙向數據總線。P1口:僅作為I/O口使用,是自帶上拉
37、電阻的8位準雙向I/O端口,每一位可驅動4個LSTTL負載。P2口:一是可作為普通I/O端口使用,是自帶上拉電阻的8位準雙向I/O口,每一位可驅動4個LSTTL負載。二是在訪問片外存儲器時,作為高8位地址線使用。P3口:是自帶上拉電阻的8位準雙向I/O端口,每一位可驅動4個LSTTL負載。6)控制引腳ALE/PROG:地址鎖存使能信號輸出端。存取片外存儲器時,用于鎖存低8位地址。PROG是對于EPROM型單片機,在EPROM編程期間,此引腳用于輸入編程脈沖。PSEN:地址鎖存使能信號輸出端,是片外程序存儲器的讀選通信號。EA/Vpp:片內程序存儲器屏蔽控制端。當EA端保持低電平是,將屏蔽片內的
38、程序存儲器,只訪問片外的程序存儲器。Vpp為編程電壓端。對于EPROM型單片機,在EPROM編程期間,此引腳用于施加21V的編程電壓。RST/Vpd:復位輸入信號端,高電平有效。備用電源Vpd功能。電源引腳Vcc:主電源正端,接+5V。Vss:主電源負端,接地。晶振引腳XTAL1:片內高增益反向放大器的輸入端。XTAL2:片內高增益反向放大器的輸出端。1.3.3 指令系統計算機的指令系統是該計算機所能執行的全部指令的集合,指令系統中指令的數量及功能直接決定這計算機的功能,MCS-51系列單片機的指令系統十分豐富,它不但運行速度快,而且編程效率高,在完成同樣的任務時,所編程序的字節數一般比其他單
39、片機用的要少,由于MCS-51系列單片機的指令系統具有獨特的優點,這類單片機獲得了廣泛的應用。1)尋址方式尋址就是尋找指令所需的操作數,MCS-51系列單片機有七種尋址方式,分別為:立即尋址、直接尋址、寄存器尋址、寄存器間接尋址、變址尋址、相對尋址和位尋址方式。2)指令類型MCS-51系列單片機中包括數據傳送指令 、算術運算、邏輯運算及移位、控制轉移及位操作五類指令。(1)數據傳送指令把“源操作數”中的數據傳送到“目的操作數”中去,而“源操作數”中的內容部變。這類指令在程序中占有較大的比重,是一種最基本、最常用的指令。(2)算術和邏輯運算指令算術和邏輯運算指令中有加、減、乘、除四則運算和與、或
40、、異或邏輯等算術和邏輯運算指令,這些指令可分為8類,分別是:加法指令、減法指令、比較指令、乘法指令、除法指令、與運算指令、或運算指令、異或運算指令。這些指令中既有對字節進行操作的指令也有對字操作的指令。1.3.4 中斷MCS-51系列單片機的中斷系統中有5個中斷源,兩個外中斷源由INT0、INT1輸入,兩個片內定時期/計數器溢出中斷源,一個片內串行口中斷源。提供兩個優先級,能實現二級中斷服務程序嵌套。每個中斷源都可以設置為高優先級中斷或低優先級的中斷,允許向CPU請求中斷。1.3.5定時器在MCS-51系列單片機中,有兩個定時/計數器T1和T0,定時器T0由TH0和TL0構成,T1由TH1、T
41、L1構成,他們實質上似是兩個獨立的16位加法計數器,TH0和TL0構成T0的計數單元,TH1和TL1構成T1的計數單元。TMOD是定時器/計數器的工作方式寄存器,由它確定定時器/計數器的工作方式和功能;TCON是控制寄存器,用于控制T0、T1的啟動、計數和停止以及設置溢出標志狀態。2 硬件設計方案本章是在前一章的基礎上對基于1-wire總線的多點采集溫度系統進行了硬件的設計,主要分為51單片機的最小系統電路、溫度采集電路、LCD顯示電路、上下限設置電路和報警電路。2.1系統綜述本設計用STC89C52為主控芯片,用1-wire總線協議將4個DS18B20通過一根總線連在單片機的I/O口(P2.
42、2)。LCD1602液晶屏的數據線接在單片機的P0口,在分別搭接報警電路和鍵盤電路。本系統的框圖如圖2-1所示。STC89C51單片機系統LCD1602顯示器DS18B20DS18B20DS18B20DS18B20報警電路鍵盤電路 圖2-1 系統框圖 本系統具體模塊接線如表2-1 所示。表2-1 本系統接線1602數據端口P0口報警系統LED引腳P1口1602-RSP2.4SETP3.21602-RWP2.5ADDP3.31602-REP2.6SUBP3.4蜂鳴器P3.6OKP3.5DQP2.2本設計總體電路圖如下圖2-2 所示:圖2-2 硬件硬件連線圖2.2 溫度采集與測量系統DS18B20
43、數字溫度計可以讀出精度為9位的溫度值。數據經過單線接口送入DS18B20或從DS18B20送出,因此從中央處理器到DS18B20可以存在于同一條線。讀、寫和完成溫度變換所需的電源可以由數據線本身提供,而不需要外部電源。因為每一個DS18B20有唯一的系列號(silicon serial number),因此多個DS18B20可以存在于同一條單總線上。這允許在許多不同的地方放置溫度靈敏器件。此特性的應用范圍包括HVAC環境控制,建筑物、設備或機械內的溫度檢測,以及過程監視和控制中的溫度檢測。2.2.1 DS18B20的特性1)獨特的單線接口,只需1個接口引腳即可通信;2)多點(multidrop
44、)能力使分布式溫度檢測應用得以簡化;3)不需要外部器件,可用數據線供電;4)不需備份電源;5)測量范圍從-55至+125,增量值為0.5;6)以9位數字值的方式讀出溫度,以1秒(典型值)內把溫度變換為數字;7)用戶可定義的,非易失性的溫度告警設置;8)告警搜索命令識別和尋址溫度在編定的極限之外的器件(溫度告警情況);9)應用范圍包括恒溫控制,工業系統,消費類產品,溫度計或者任何熱敏系統。2.1.2 DS18B20引腳排列圖2-3 DS18B20的引腳圖引腳說明GND 地DQ 數字輸入輸出VDD 可選的VDDNC 空引腳DNC 不連接2.2.3 DS18B20 的硬件結構DS18B20 數字溫度
45、傳感器的內部結構如圖2-4所示。圖2-4 DS18B20 數字溫度傳感器的內部結構它由4個主要的數據部件組成:1)64位激光ROM。64位激光ROM從高位到低位依次由8位CRC,48位列號和8位家族代碼(28H)組成;2)溫度靈敏元件;3)非易失性溫度報警觸發器TH與TL。可通過軟件寫入用戶報警上下限值;4)配置寄存器。配置寄存器為中間結果暫存器中的字節。配置寄存器可以設置DS18B20溫度轉換的精度。可以設置成精度為9位、10位、11位、12位。上電缺省的分辨率為12位精度。用戶可根據需要改寫配置寄存器以獲得合適的分辨率。DS18B20溫度傳感器的內部存儲器結構如圖2-3所示。圖2-5 便箋
46、式存儲器映象DS18B20溫度傳感器的內部存儲器包括一個中間結果寄存器和一個非易失性的電可擦除E2PROM,后者存放高溫報警TH、低溫度報警TL和配置寄存器的值。暫存器包含了8個連續字節,前兩個字節是測得的數字溫度數值,第一個字節的溫度是溫度的低8位,第二個字節是溫度的高8位。第三個和第四個字節是TH,TL,第五個字節是配置寄存器,這三個字節的值可以保存在電可擦除的只讀寄存器(E2PROM)中,掉電后數據不丟失,上電復位時數據從E2PROM載入中間結果暫存器。第六,七,八字節內容保留。第九字節是循環冗余檢驗CRC字節。2.2.4 DS18B20的供電方式DS18B20的電源供電方式有2種:外部
47、供電方式和寄生電源方式。工作于寄生電源方式時,VDD和GND均接地,它在需要遠程溫度探測和空間受限的場合特別有用,原理是當1-Wire總線的信號線DQ為高電平時,竊取信號能量給DS18B20供電,同時一部分能量給內部電容充電,當DQ為低電平時釋放能量為DS18B20供電。但寄生電源方式需要強上拉電阻,軟件控制變得復雜(特別是在完成溫度轉換和拷貝數據到E2PROM時),同時芯片的性能也有所降低。因此,在條件允許的場合,盡量采用外供電方式。1)DS18B20寄生電源供電方式:在寄生電源供電方式下,DS18B20從單線信號線上汲取能量:在信號線DQ處于高電平期間把能量儲存在內部電容里,在信號線處于低
48、電平期間消耗電容上的電能工作,直到高電平到來再給寄生電源(電容)充電。獨特的寄生電源方式有三個好處:(1)進行遠距離測溫時,無需本地電源;(2)可以在沒有常規電源的條件下讀取ROM;(3)電路更加簡潔,僅用一根I/O口實現測溫。要想使DS18B20進行精確的溫度轉換,I/O線必須保證在溫度轉換期間提供足夠的能量,由于每個DS18B20在溫度轉換期間工作電流達到1mA,當幾個溫度傳感器掛在同一根I/O線上進行多點測溫時,只靠4.7K上拉電阻就無法提供足夠的能量,會造成無法轉換溫度或溫度誤差極大。因此,該電路只適應于單一溫度傳感器測溫情況下使用,不適宜采用電池供電系統中。并且工作電源VCC必須保證
49、在5V,當電源電壓下降時,寄生電源能夠汲取的能量也降低,會使溫度誤差變大。2)DS18B20寄生電源強上拉供電方式:為了使DS18B20在動態轉換周期中獲得足夠的電流供應,當進行溫度轉換或拷貝到存儲器操作時,用MOSFET把I/O線直接拉到VCC就可提供足夠的電流,在發出任何涉及到拷貝到存儲器或啟動溫度轉換的指令后,必須在最多10S內把I/O線轉換到強上拉狀態。在強上拉方式下可以解決電流供應不足的題,因此也適合于多點測溫應用,缺點就是要多占用一根I/O口線進行強上拉切換。3)DS18B20的外部電源供電方式:如下面圖1-4所示,在外部電源供電方式下,DS18B20工作電源由VDD引腳接入,其V
50、DD端用35.5V電源供電,此時I/O線不需要強上拉,不存在電源電流不足的問題,可以保證轉換精度,同時在總線上理論可以掛接任意多個DS18B20傳感器,組成多點測溫系統。注意:在外部供電的方式下,DS18B20的GND引腳不能懸空,否則不能轉換溫度,讀取的溫度總是85。 圖2-6 DS18B20寄生電源供電方式圖2-7 DS18B20溫度轉換期間的強上拉供電(寄生電源方式)圖2-8 DS18B20外部電源供電方式2.2.5 DS18B20的ROM指令為了不引起邏輯的沖突,所有從器件的1-wire總線接口都是漏極開路的基本操作分為復位、讀和寫三種,其中所有的讀寫操作均為低位在前高位在后。復位、讀
51、和寫是1-wire總線通信的基礎,由于操作時序已在前面介紹單總線協議的章節有所介紹,因此在此值介紹ROM功能指令。在DS18B20內部光刻了一個長度為64bit的ROM編碼,這個編碼是器件的身份識別標志。當總線上掛接這多個DS18B20時可以通過ROM編碼對特定器件進行操作。ROM功能命令是針對器件的ROM編碼進行操作的命令,共有10個,長度均為8bit(1byte)。(1)讀ROM(33H)當掛接在總線上的1-wire總線器件接收到此命令時,會在主機讀操作的配合下將自身的ROM編碼按由低到高位的順序依次發給主機。總線掛接有多個DS18B20時,此命令會使所有器件同時向主機傳送自身的ROM編碼
52、,這將導致數據沖突。(2)匹配ROM(55H)主機在發送完此指令后,必須緊接著發送一個64bit的ROM編碼,與此ROM編碼匹配的從器件會響應主機的后續命令,而其他從器件處于等待狀態。該命令主要用于選擇總線上的特定器件進行訪問。(3)跳過ROM(CCH)發送這個命令后,主機不必提供ROM編碼即可對從器件進行訪問。與讀ROM命令類似,該命令同樣只適用于單節點的1-wire總線系統,當總線上有多個器件掛接時會引起數據沖突。(4)查找ROM(F0H)當主機不知道總線上器件的ROM編碼時,可以使用此命令并配合特定的算法查找出來總線上的器件的數量和各個從器件的ROM編碼。(5)報警查找(ECH)此命令用
53、于查找出總線上滿足報警條件的DS18B20,通過報警查找命令并配合特定的算法,可以查找出總線上滿足報警條件的器件數目和各個器件的ROM編碼。(6)啟動溫度轉換(44H)該命令發送完成后,主機可以通過調用ReadOneChar()函數盤算溫度轉換是否完成,若其返回值為0則表示轉換正在進行,若返回為1則表示轉換完成。(7)讀RAM(BEH)給命令發送完成后,主機可以通過調用ReadOneChar ()函數將DS18B20中的內容從低位拉到高位一次讀出。(8)寫RAM(4EH)給命令發送出后,主機隨后寫入1-wire總線的3字符將依次被存儲到DS18B20的報警上限、報警下限和配置寄存器中。(9)復
54、制RAM(48H)該命令會將DS18B20的報警上限和配置寄存器中的內容復制到EEPROM中。該命令發出去后,主機可以通過調用ReadOneChar()函數判斷復制操作是否完成,ReadOneChar()的返回值為1,則表示復制操作完成。(10)回讀EEPROM(B8H)該命令會將存儲在EEPROM中的報警上限、報警下限和配置寄存器的內容回讀到RAM中,主機可以通過調用ReadOneChar()函數判斷回讀操作是否完成,若返回值為1則表示回讀操作完成。DS18B20在上電時會自動進行一次回讀操作。為了方便查看,我將常用指令畫作表格如表2-2: 表2-2 DS18B20常用指令指令約定代碼 操作
55、說明溫度轉換 44H 啟動DS18B20進行溫度轉換 讀暫存器 BEH 讀暫存器9個字節內容 寫暫存器 4EH 將數據寫入暫存器的TH、TL字節 復制暫存器 48H 把暫存器的TH、TL字節寫到E2RAM中 重新調E2RAM B8H 把E2RAM中的TH、TL字節寫到暫存器TH、TL字節 讀電源供電方式B4H啟動DS18B20發送電源供電方式的信號給主CPU 2.2.6 DS18B20的測溫原理DS18B20的測溫原理如圖2-7所示。圖中低溫度系數晶振的振蕩頻率受溫度的影響很小,用于產生固定頻率的脈沖信號送給減法計數器1;高溫度系數晶振隨溫度變化其振蕩頻率明顯改變,所產生的信號作為減法計數器2
56、的脈沖輸入。圖中還隱含著記數門,當記數門打開時,DS18B20就對低溫度系數振蕩器產生的時鐘脈沖進行記數,進而完成溫度測量。記數門的開啟時間由高溫度系數振蕩器來決定,每次測量前首先將-55所對應的一個基數分別置入減法計數器溫度寄存器中,減法計數器1和溫度寄存器被預置在-55所對應的一個基數值。減法計數器1對低溫度系數晶振產生的脈沖信號進行減法記數,當減法計數器1的預置值減到0時,溫度寄存器的值將加1,減法計數器1的預置值將重新被裝入,減法計數器1重新開始對低溫度系數晶振產生的脈沖信號進行記數,如此循環直到減法計數器2記數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值就是所測溫度值。圖2
57、-8中的斜率累加器用于補償和修正測溫過程中的非線性誤差,其輸出用于修正減法計數器的預置值,只要記數門仍未關閉就重復上述過程,直到溫度寄存器值達到被測溫度值。圖2-8 DS18B20的測溫原理2.3 顯示系統2.3.1 LCM1602顯示模塊LCD1602液晶顯示器由5V供電,可以顯示2行,每行可顯示16個字符。LCD1602共有16個端口,其中有5個端口與電源連接,8個端口與單片機直接進行數據通信,另有3個是LCD1602的控制端。單片機通過數據通信端可以向LCD1602執行讀寫操作。 LCD1602實物圖如圖2-9和圖2-10所示:圖2-9 LCM1602模塊的背面實物圖圖2-10 LCM1
58、602模塊的正面實物圖LCM1602字符型液晶顯示模塊的基本特點: 液晶顯示屏是以若干個5X8或5X11點陣塊組成的顯示字符群。每個點陣塊為一個字符位,字符間距和行距都為一個點的寬度。 主控制驅動電路為HD44780(HITACHI)以及其他公司全兼容電。具有字符發生器ROM可顯示192種字符(160個5X7點陣字符和32個5X10點字符)。 具有64個字節的自定義字符RAM,可自定義8個5X8點陣字符或4個5X11點陣字符。 具有80個字節的RAM。 標準的接口特性,適配M6800系列MPU的操作時序。 模塊結構緊湊、輕巧、裝配容易。 單+5V電源供電(寬溫型需要一個-7V的驅動電源)。 低
59、功耗、長壽命、高可靠性。2.2.3 LCM1602管腳分布LCM1602 液晶顯示模塊的管腳分布資料如下表2-3所示:表2-3 LCM1602 引腳引腳號符號狀態功能1Vss電源地2Vdd+5V邏輯電源3V0液晶驅動電源4RS輸入寄存器選擇 1:數據 0:選擇5R/W輸入 讀寫操作選擇 1:讀 0:寫6E輸入使能信號7DB0三態數據總線(LSB)8DB1三態數據總線9DB2三態數據總線10DB3三態數據總線11DB4三態數據總線12DB5三態數據總線13DB6三態數據總線14DB7三態數據總線(MSB)15BLA背光電源正極16BLK背光電源負極2.4 報警系統及輸入設備本設計的報警系統分為聲
60、音報警和燈光報警兩部分組成,其中聲音報警時又一個蜂鳴器焊接成的報警電路,而燈光報警是由4紅(上限)4綠(下限)八個LED燈組成。輸入部分有四個獨立按鍵(button)組成,分別命名為“SET”、 “ADD”、 “SUB”、和“OK”。該部分電路是通過按鍵可以設置溫度上限和溫度下限,紅色LED和黑色LED分別用于各路上限和下限的報警。蜂鳴器在其中有一路打到報警條件時候就開始報警。2.5 最小系統外圍電路2.5.1 PC機與單片機的串行通信接口電路在設計硬件接口電路時,應充分考慮到電路的電氣特性、邏輯電平以及驅動能力的匹配問題,若匹配得不好,將會導致通信失敗。 本文采用MAX232作為PC機與單片
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工業廢棄物處理技術探索
- 工業大數據驅動制造業升級的引擎
- 工業安全管理的智能化發展
- 工業機器人技術及其優勢
- 工業機器人技術的現狀與趨勢
- 工業污染防治技術與設備介紹
- 工業自動化中的質量控制與檢測技術
- 工業級機房設計與環境控制技術
- 工業自動化與智能工藝技術發展
- 工業遺址保護與城市空間的整合
- 《工程招投標與合同管理》參考試題庫(含答案)
- 2025湖南省建筑安全員《B證》考試題庫及答案
- 4D廚房管理培訓課件
- 2025年教師招聘教師資格面試逐字稿初中體育教師招聘面試《途中跑》試講稿(逐字稿)
- 英語新閩教版小學四年級下冊全冊教案
- 北斗創新設計導航知到智慧樹章節測試課后答案2024年秋山東大學
- 數據結構(本)-002-國開機考復習資料
- 核醫學檢查技術知到智慧樹章節測試課后答案2024年秋山東第一醫科大學
- 【MOOC】經濟法學-西南政法大學 中國大學慕課MOOC答案
- 法務崗位招聘筆試題與參考答案(某大型國企)2025年
- 2025年初級社會工作者綜合能力全國考試題庫(含答案)
評論
0/150
提交評論