摘 要:現代計算機技術的產業革命,將世界經濟從資本經濟帶入到知識經濟時代。在電子領域,從20世紀中的無線電時代也進入到21世紀以計算機技術為中心的智能化現代電子系統時代。隨著單片機(Microcontroller)的出現,計算機真正地走入尋常百姓家。目前,單片機憑借著體積小、功耗低、功能強、性能價格比高、易于推廣應用等顯著優點,在自動化裝置、智能儀器儀表、過程控制、通信、家用電器等許多領域得到日益廣泛的應用。單片機能大大地提高這些產品的智能性,給我們的生活帶來舒適和方便的同時,在工農業生產上也極大地提高了生產效率和產品質量。
關鍵詞:溫度監測;單片機;應用
現代電子系統的基本核心是嵌入式計算機系統(Embedded Computer System),單片機便是最典型、最廣泛、最普及的嵌入式系統。單片機全稱為單片微型計算機(Single Chip Microcomputer),又稱微控制器(Microcontroller Uint)或嵌入式控制器(Embedded Controller)。它是將計算機的基本部件微型化并集成到一塊芯片上的微型計算機,通常片內都含有CPU、ROM、RAM、并行I/O、串行I/O、定時器/計數器、中斷控制、系統時鐘及系統總線等。
在溫度監測領域,能夠獨立工作的溫度檢測和顯示系統已經應用于電站、石油化工、冶金、輕工、食品、醫藥和軍工等諸多領域。單片機配合溫度傳感器元件十分適合開發此類系統。我們選取美國ATMEL公司生產的AT89S52 八位微控制器配合Dallas公司生產的DS18B20數字式溫度傳感器完成智能數顯溫度計的開發工作。
本課題的開發過程經歷了總體設計、硬件電路的構思設計、軟件的編制和仿真調試等幾個階段。
總體設計的主要任務是明確該項目將要實現的具體功能及其特性指標。并依此進行單片機及周邊設備的選型,選取軟件設計所需的開發平臺和開發語言。
硬件電路的構思設計依據總體設計確定的功能特性要求,進一步確定單片機型號,所需周邊芯片,并設計出應用系統的電路原理圖。
在軟件的編制和仿真調試階段需要依據總體設計要求,在硬件電路的基礎上編制應用程序,經過返復測試和調試以完成本項目的開發工作。
對于一個單片機系統的開發,需要綜合運用計算機軟硬件等多門學科的相關知識。其中包括模擬電子電路、數字電路、電子電路制圖、計算機組成原理、接口技術、MCS-51指令系統的匯編語言。
本課題的開發,需要將軟件知識與硬件知識有機地加以結合。在軟件編制的過程中,靈活運用了微控制器的中斷機制。包括:中斷處理、中斷響應、中斷優先級設置。對數字式溫度傳感器DS18B20的控制,首先要對其進行初始化(復位)操作、然后通過單片機微控制器的相應端口進行數據讀取。在顯示輸出的過程中,需要對并行接口芯片8255A進行方式控制字的設置,并輸出轉換后的十進制溫度數值。
DS18B20采用了單總線(One-Wire Bus)技術,為了保證MCU與DS18B20的通訊時序,需要正確設置中斷優先級,將溫度采集中斷的優先級設置為最高,以防止被其它中斷嵌套打斷當前的采集工作。
一個單片機應用系統的硬件電路設計包含兩部分內容:系統擴展與系統的配置。
系統擴展即單片機內部的功能單元,如ROM、RAM、I/O、定時器/計數器、中斷系統等不能滿足應用系統的要求時,必須在片外進行擴展,選擇適當的芯片,設計相應的電路。系統的配置即按照系統功能要求配置外圍設備,如鍵盤、顯示器、打印機、A/D、D/A轉換器等,要設計合適的接口電路。
硬件結構應結合應用軟件方案一并考慮。硬件結構與軟件方案會產生相互影響,考慮的原則是:軟件能實現的功能盡可能由軟件實現,以簡化硬件結構。但必須注意,由軟件實現的硬件功能,一般響應時間比硬件實現長,且占用CPU時間。
單片機外圍電路較多時,必須考慮其驅動能力。驅動能力不足時,系統工作不可靠,可通過增設線驅動器增強驅動能力或減少芯片功耗來降低總線負載。
MCS-51的編程語言常用的有二種,一種是匯編語言,一種是C語言。本系統的程序開發選擇使用MCS-51匯編語言進行編寫。硬件系統將根據匯編程序的指令,控制相關功能器件完成對DS18B20的復位、采集、中斷管理、測量溫度值的計算及溫度值的顯示等功能。使用者只需打開電源就可以從觀察屏上看到關心的溫度變化情況并且可以很方便紀錄數據。
單片機開發中除必要的硬件外,同樣離不開軟件。不同的單片機甚至同一公司的單片機它們的開發工具不一定相同或不完全相同,這就要求在選擇單片機時,需考慮開發工具的因素,原則上是以最少的開發投資滿足某一項目的研制過程,最好是使用現有的開發工具或增加少量的輔助器材就可達到目的的。當然,開發工具是一次性投資,而形成產品卻是長遠的效益,這就需平衡產品和開發工具的經濟性和效益性。
Keil軟件是目前最流行開發MCS-51系列單片機的軟件,Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在內的完整開發方案,通過一個集成開發環境(μVision)將這些部份組合在一起。近年來各仿真機廠商紛紛宣布全面支持Keil軟件。
Keil C51是目前比較高效和靈活的8051開發平臺。它可以支持所有8051的衍生產品,也可以支持所有兼容的仿真器,同時支持其它第三方開發工具。因此,本課題的軟件開發選用Keil V7.06作為系統程序的開發/編譯工具。
從20年來單片機技術的發展歷程可以看出,單片機技術的發展以微控制器(MCU)技術及超大規模集成電路技術的發展為先導,以廣泛的應用領域拉動,表現出以下技術特點:
單片機長壽命。單片機產品如 8051、68HC05等年齡已有近二十歲,產量仍是上升的。一些成功上市的相對年輕的CPU核心,也會隨著I/O功能模塊的不斷豐富,有著相當長的生存周期。
8位、32位單片機共同發展。長期以來,單片機技術的發展是以8位機為主的。隨著移動通訊、網絡技術、多媒體技術等高科技產品進入家庭,32位單片機應用得到了長足、迅猛的發展。
單片機速度越來越快。為提高單片機抗干擾能力,降低噪聲,降低時鐘頻率而不犧牲運算速度是單片機技術發展之追求。
低電壓與低功耗。幾乎所有的單片機都有Wait、Stop等省電運行方式。允許使用的電源電壓范圍也越來越寬。一般單片機都能在3到6V范圍內工作,對電池供電的單片機不再需要對電源采取穩壓措施。低電壓供電的單片機電源下限已由2.7V降至2.2V、1.8V。0.9V供電的單片機已經問世。
低噪聲與高可靠性技術。為提高單片機系統的抗電磁干擾能力,使產品能適應惡劣的工作環境,滿足電磁兼容性方面更高標準的要求,各單片機商家在單片機內部電路中采取了一些新的技術措施。
溫度傳感器部件則不斷朝著高精度、低功耗和小型化發展。未來的溫度傳感器將在更小的封裝中集成更多的功能。
隨著單片機技術和各種外部設備元件的技術不斷發展,本系統也將可以向更高的集成度發展,甚至可以將微控制器和相關的功能模塊使用單一元件取代。在不影響系統功能的前題下,通過精簡元件的使用可以進一步降低系統的耗電量,同時,更少的元件也意味著將使系統具備更高的穩定性。
本系統的另一個發展方向將是進一步擴展功能,如本文開始所述,溫度檢測和顯示系統在軍工以及民用等領域都得到了十分廣泛的應用。每一種應用主要區別在接駁不同的外部設備,并在相應的軟件模塊上存在差異。因此,接駁不同的外部設備,同時開發相對應的外部設備接口程序可以進一步擴展本系統的應用領域,使其應用范圍從實驗室走入更具體的實際生產當中。