【正文】
將變的十分有效。Keil是美國(guó)Keil Software公司開發(fā)的,是目前世界上最好的51單片機(jī)的匯編和C語言的開發(fā)工具。一次在仿真和程序調(diào)試時(shí),關(guān)心的不再是某些語句執(zhí)行時(shí)單片機(jī)寄存器和存儲(chǔ)器內(nèi)容的改變,而是從工程師的角度直接看程序運(yùn)行和電路工作的過程和結(jié)果。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析各種模擬和數(shù)字電路,并且對(duì)PC機(jī)的硬件配置要求不高。原版的Keil C編譯器會(huì)忽略編碼為0xFD的字符,當(dāng)編寫中文顯示程序時(shí)會(huì)出現(xiàn)問題,應(yīng)安裝針對(duì)這一問題的專用補(bǔ)丁,許多Keil C安裝包都含有該補(bǔ)丁程序,安裝時(shí)間可根據(jù)幫助文件安裝該補(bǔ)丁。 uVision 上機(jī)注意事項(xiàng)C51源程序汗?jié)h字注釋內(nèi)容時(shí),刪除、插入漢字會(huì)出現(xiàn)亂碼。利用uVision 3的構(gòu)造功能對(duì)項(xiàng)目中的源程序文件進(jìn)行編譯鏈接,生成絕對(duì)目標(biāo)代碼和可選的HEX格式的可執(zhí)行文件,如果出現(xiàn)編譯鏈接錯(cuò)誤則返回上一步,修改源程序中的錯(cuò)誤后重新構(gòu)造整個(gè)項(xiàng)目。利用uVision 3的文件編譯器編寫C語言(或者匯編語言)源程序文件,并將文件添加到項(xiàng)目中去。但在學(xué)習(xí)中,使用最多的還是Keil u Vision3。有經(jīng)驗(yàn)的程序員用匯編語言可以寫出高效率的程序,但每種語言都有自己個(gè)子的特點(diǎn)。有位尋址功能,適于布爾處理的位處理機(jī)制。中斷結(jié)構(gòu):具有5個(gè)中斷源,2個(gè)優(yōu)先級(jí)。外部程序存儲(chǔ)器尋址空間為64KB。32條I/O口線。128字節(jié)的數(shù)據(jù)存儲(chǔ)器RAM(128個(gè)8位淹沒RAM)。 51單片機(jī)的結(jié)構(gòu) 基本結(jié)構(gòu)8位CPU,片內(nèi)振蕩器。INTEL公司后來將MCS51的核心技術(shù)授權(quán)給了其他公司,現(xiàn)在生產(chǎn)8051內(nèi)核單片機(jī)的公司,主要有ATMEL、WINBOND、NXP、NC?。模遥粒牵希蔚取CS51是由美國(guó)INTEL公司20世紀(jì)80年代生產(chǎn)的一系列8位單片機(jī)的總稱,此系列單片機(jī)包括很多型號(hào),如:8038058758038052等,其中8051是最早最典型的產(chǎn)品。關(guān)鍵詞: STC89C52單片機(jī);DS18B20;顯示電路AbstractAlong with the puter measurement and control technology of the rapid development and wide application, based on singlechip temperature gathering and control system development and application greatly improve the production of temperature in life level of control. This design STC89C52 describes a kind of mainly by MCU control unit, for temperature sensor DS18B20 temperature control system. The control system can realtime storage temperature data and record related to the current time. System design related hardware circuit and related applications. STC89C52 microcontroller hardware circuit include temperature detection circuit smallest system, and realtime clock circuit, LCD display circuit, munication module circuit, etc. System programming mainly include main program, read temperature subroutine, the calculation of temperature subroutines, key processing procedures, LCD display procedures and data storage procedures, etc. Keywords :STC89C52 microcontroller;DS18B20;display circuit第1章 51單片機(jī)結(jié)構(gòu)和原理單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī),也稱為微控制器(Micro Controller Unit),,它把微型計(jì)算機(jī)的宮格功能部件(中央處理器CPU、隨機(jī)存取存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、輸入輸出I/O接口、定時(shí)器/計(jì)數(shù)器以及串行通信接口等)集成在一塊芯片上,構(gòu)成一個(gè)完整的微型計(jì)算機(jī),故又稱為單片微型計(jì)算機(jī)。硬件電路主要包括STC89C51單片機(jī)最小系統(tǒng),測(cè)溫電路、實(shí)時(shí)時(shí)鐘電路、LED顯示以及通訊模塊電路等。該控制系統(tǒng)可以實(shí)時(shí)存儲(chǔ)相關(guān)的溫度數(shù)據(jù)。摘 要隨著微機(jī)測(cè)量和控制技術(shù)的迅速發(fā)展與廣泛應(yīng)用,以單片機(jī)為核心的溫度采集與控制系統(tǒng)的研發(fā)與應(yīng)用在很大程度上提高了生產(chǎn)生活中對(duì)溫度的控制水平。本設(shè)計(jì)論述了一種以STC89C52單片機(jī)為主控制單元。系統(tǒng)設(shè)計(jì)了相關(guān)的硬件電路和相關(guān)應(yīng)用程序。系統(tǒng)程序主要包括主程序,讀出溫度子程序,計(jì)算溫度子程序、按鍵處理程序、LCD顯示程序以及數(shù)據(jù)存儲(chǔ)程序等。除工業(yè)領(lǐng)域外,單片機(jī)還廣泛應(yīng)用于各種民用電子、電器之中。該系列其他單片機(jī)都是在8051的基礎(chǔ)上進(jìn)行功能的增、減改變而來的,所以人們習(xí)慣用8051來稱呼MCS-8051系列單片機(jī),而其中的8031在20世紀(jì)80年代末90年代初是我國(guó)最流行的單片機(jī)之一。隨著技術(shù)的發(fā)展,各種高性能的16位、32位MCU不斷出現(xiàn),但以8051、PIC、AVG以及MC68HC等系列為典型代表的8位MCU,由于成本低、開發(fā)工具完善、易學(xué)易用等特點(diǎn),仍具有強(qiáng)大的生命力和極高的實(shí)使用價(jià)值。4KB程序存儲(chǔ)器ROM(4096個(gè)8位淹沒ROM)。21個(gè)特殊功能寄存器。外部數(shù)據(jù)存儲(chǔ)器尋址空間為64KB。2個(gè)16位的可編程定時(shí)/計(jì)數(shù)器。一個(gè)全雙工串行通信口。 8051單片機(jī)引腳圖圖11 at89c51單片機(jī)第2章 相關(guān)編程與仿真軟件的介紹常用的單片機(jī)語言有很多,如:匯編、C語言、BASIC、C++等,對(duì)51單片機(jī)而言,使用最為廣泛的還是匯編語言和C語言。 從標(biāo)準(zhǔn)C轉(zhuǎn)向Keil CC51是專門為51系列單片機(jī)設(shè)計(jì)的,根據(jù)51單片機(jī)自身的特點(diǎn)進(jìn)行了若干擴(kuò)展,與ANSIC在語法和庫(kù)函數(shù)方面存在稍許差別,但絕大部分是兼容的。 Keil C上機(jī)的基本方法 uVision 3中編程的基本步驟 在uVision 3集成開發(fā)環(huán)境中創(chuàng)建一個(gè)新項(xiàng)目(Project),并為該項(xiàng)目選定合適的單片機(jī)型號(hào)。通過uVision 3的各種選項(xiàng),配置Cx51編譯器、Ax51宏編譯器、BL51/Lx51連接定位器以Debug 調(diào)試器的功能。將沒有錯(cuò)誤的絕對(duì)目標(biāo)代碼裝入uVision 3調(diào)試器進(jìn)行仿真調(diào)試,調(diào)試成功后用編程器將可執(zhí)行文件寫入到單片機(jī)應(yīng)用系統(tǒng)的程序存儲(chǔ)器或者單片機(jī)內(nèi)部的Flash ROM中。解決方法為:選擇Edit|Configuration 菜單項(xiàng),彈出界面,將C源程序文本字體選擇為DotumChe , 此字體可避免出現(xiàn)漢字亂碼現(xiàn)象。 Proteus簡(jiǎn)介Proteus是英國(guó)Labcenter公司開發(fā)的嵌入式系統(tǒng)仿真軟件,組合了高級(jí)原理圖設(shè)計(jì)工具ISIS、混合模式SPICE仿真、PCB設(shè)計(jì)以及自動(dòng)布線而形成了一個(gè)完整的電子設(shè)計(jì)系統(tǒng)。 Proteus 與Keil C 的聯(lián)合仿真 目前,單片機(jī)仿真軟件很多,Proteus ISIS 與其他單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī)CPU的工作情況,也能夠仿真單片機(jī)外圍電路或沒有單片機(jī)參與的其他電路的工作情況。同事,當(dāng)原理圖調(diào)試成功后,利用Proteus ARES軟件,很容易獲得PCB圖,為今后的制造提供了方便。它支持匯編、C語言以及混合編程,同時(shí)具備功能強(qiáng)大的軟件仿真,在軟件模擬仿真方式下不需要任何單片機(jī)硬件即可完成用戶程序仿真調(diào)試;雖然Keil也提供了硬件仿真(用Monitor51協(xié)議,需要硬件支持)功能,但我們?cè)诶盟挠布抡婀δ艿臅r(shí)候,它會(huì)受到一定的限制。,刪除LED設(shè)計(jì)頁中的ULA2003A驅(qū)動(dòng)部分,在LED設(shè)計(jì)頁新建一個(gè)子電路LED_DRIVER,為該子電路見撒謊那個(gè)輸入/輸出端子。按Ctrl+C計(jì)入子電路所在的設(shè)計(jì)頁,原ULA2003驅(qū)動(dòng)部分加上相應(yīng)的端子。用BUTTON元件繪出鍵盤的部分,并為行掃描線和列掃描線上的端子命名,此處不采用Proteus中現(xiàn)成的鍵盤模型是為了是讀者更透徹的理解鍵盤的設(shè)計(jì)和按鍵識(shí)別的原理,但在商業(yè)產(chǎn)品的開發(fā)中可購(gòu)買現(xiàn)成的鍵盤模塊。 本設(shè)計(jì)是接口技術(shù)、應(yīng)用系統(tǒng)設(shè)計(jì)、Proteus仿真的結(jié)合,介紹存儲(chǔ)系統(tǒng)、數(shù)據(jù)采集、串口通信等知識(shí)及其在PID溫控器設(shè)計(jì)中的應(yīng)用于仿真,從個(gè)子系統(tǒng)開始,設(shè)計(jì)并逐步完善,直至整個(gè)應(yīng)用系統(tǒng)的實(shí)現(xiàn)。要是為低電平選中6264,則C、B、A的輸出應(yīng)為011,由此可以計(jì)算出6264的二進(jìn)制地址范圍為0110 0000 0000 0000 ~0111 1111 1111 1111,寫成十六進(jìn)制為0x6000~0x7fff,2764的地址范圍為0x0000~