課程設(shè)計——基于單片機(jī)的10000s計時系統(tǒng)_第1頁
已閱讀1頁,還剩20頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  摘 要</b></p><p>  工程實踐教學(xué)環(huán)節(jié)是為了學(xué)生能夠更好地鞏固和實踐所學(xué)專業(yè)知識而設(shè)置的,在本次工程實踐中,我以嵌入式C語言課程中所學(xué)知識為基礎(chǔ),設(shè)計了10000s以內(nèi)的計時器電路并進(jìn)行仿真。本系統(tǒng)以MCS-51系列中的8051單片機(jī)為核心,基于Keil μVision程序設(shè)計平臺和Proteus硬件仿真平臺,能夠?qū)崿F(xiàn)10000s以內(nèi)的計時。該系

2、統(tǒng)通過12MHz晶振控制時間,T0計時器進(jìn)行計時,并通過6位數(shù)碼管顯示屏輸出進(jìn)行顯示。</p><p>  本系統(tǒng)的設(shè)計說明重點介紹了如下幾方面的內(nèi)容:</p><p>  1)10000s以內(nèi)的計時電路的基本功能,同時對程序及電路原理也進(jìn)行了簡要的闡述;</p><p>  2)介紹了系統(tǒng)的總體設(shè)計、給出了系統(tǒng)的整體結(jié)構(gòu)框圖,并對其進(jìn)行了功能模塊劃分及所采用的元器

3、件進(jìn)行了詳細(xì)說明;</p><p>  3)對系統(tǒng)各功能模塊的軟、硬件實現(xiàn)進(jìn)行了詳細(xì)的設(shè)計說明。</p><p>  關(guān)鍵詞:MCS-51 8051單片機(jī);計時器; 仿真</p><p><b>  目錄</b></p><p><b>  第一章 緒論1</b></p><p

4、><b>  1.1課題背景1</b></p><p><b>  1.2課題簡介2</b></p><p><b>  1.3設(shè)計目的2</b></p><p><b>  1.4設(shè)計任務(wù)2</b></p><p>  1.5 章節(jié)安排說明

5、3</p><p>  第二章 10000s計時系統(tǒng)簡介4</p><p>  2.1單片機(jī)概述4</p><p>  2.2單片機(jī)發(fā)展現(xiàn)狀6</p><p>  2.3 10000s計時系統(tǒng)程序簡介9</p><p>  2.4 10000s計時系統(tǒng)程序代碼9</p><p>  

6、第三章 系統(tǒng)總體設(shè)計及主要器件簡介12</p><p>  3.1 10000s計時系統(tǒng)組成結(jié)構(gòu)12</p><p>  3.2 10000s計時系統(tǒng)主要器件12</p><p>  第四章 10000s計時系統(tǒng)硬件設(shè)計14</p><p>  4.1 基于8051單片機(jī)的計時系統(tǒng)電路設(shè)計14</p><p>

7、;  4.2計時系統(tǒng)工作原理15</p><p><b>  參考文獻(xiàn)18</b></p><p><b>  第一章 緒論</b></p><p><b>  1.1課題背景</b></p><p>  目前,單片機(jī)正朝著高性能和多品種方向發(fā)展趨勢將是進(jìn)一步向著CMOS化

8、、低功耗、小體積、大容量、高性能、低價格和外圍電路內(nèi)裝化等幾個方面發(fā)展。</p><p>  單片機(jī)模塊中最常見的是數(shù)字鐘,數(shù)字鐘是一種用數(shù)字電路技術(shù)實現(xiàn)時、分、秒計時的裝置,與機(jī)械式時鐘相比具有更高的準(zhǔn)確性和直觀性,且無機(jī)械裝置,具有更長的使用壽命,因此得到了廣泛的使用。數(shù)字鐘是采用數(shù)字電路實現(xiàn)對時,分,秒進(jìn)行數(shù)字顯示的計時裝置,廣泛用于比賽,車站, 碼頭辦公室等公共場所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵?由于

9、數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴(kuò)展了鐘表原先的報時功能。單片機(jī)數(shù)字時鐘是以單片機(jī)為核心,在其基礎(chǔ)上設(shè)計出來的數(shù)字時鐘。在日常生活中最常見,應(yīng)用也最廣泛。近年來隨著計算機(jī)在社會領(lǐng)域的滲透和大規(guī)模集成電路的發(fā)展,單片機(jī)的應(yīng)用正在不斷地走向深入,由于它具有功能強(qiáng),體積小,功耗低,價格便宜,工作可靠,使用方便等特點,因此特別適合于與控制有

10、關(guān)的系統(tǒng),越來越廣泛地應(yīng)用于自動控制,智能化儀器,儀表,數(shù)據(jù)采集,軍工產(chǎn)品以及家用電器等各個領(lǐng)域,單片機(jī)往往是作為一個核心部件來使用,在根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點的軟件結(jié)合,以作完善。</p><p>  在電子技術(shù)飛速發(fā)展的今天,電子產(chǎn)品的人性化和智能化已經(jīng)非常成熟,其發(fā)展前景仍然不可估量。如今的人們需求的是一種能給自己帶來方便的電子產(chǎn)品,當(dāng)然最好是人性化和智能化的,如何能做到智能化呢?單片機(jī)的

11、引入就是一個很好的例子。單片機(jī)又稱單片微型計算機(jī),也稱為微控制器,是微型計算機(jī)的一個重要分支,單片機(jī)是20世紀(jì)70年代中期發(fā)展起來的一種大規(guī)模集成電路芯片,是集CPU,RAM,ROM,I/O接口和中斷系統(tǒng)于同一硅片上的器件。單片機(jī)的誕生標(biāo)志著計算機(jī)正式形成了通過計算機(jī)系統(tǒng)和嵌入式計算機(jī)系統(tǒng)兩個分支。目前單片機(jī)已滲透到我們生活的各個領(lǐng)域,幾乎很難找到哪個領(lǐng)域沒有單片機(jī)的蹤跡。單片機(jī)已在廣闊的計算機(jī)應(yīng)用領(lǐng)域中表現(xiàn)得淋漓盡致。因此,單片機(jī)已成

12、為電子類工作者必須掌握的專業(yè)技術(shù)之一。單片機(jī)就是一個微型中央處理器,通過編程即能完成很多智能化的工作 ,因此它的出現(xiàn)給電子技術(shù)智能化和微型化起到了很大的推動作用。</p><p><b>  1.2課題簡介</b></p><p>  在電子產(chǎn)品中,時間的控制與顯示是必不可少的,在人們?nèi)粘I钪?,到處都離不開時間,因此通過單片機(jī)進(jìn)行計時在生活中得到了普遍應(yīng)用。<

13、/p><p>  本次設(shè)計以嵌入式C語言課程中所學(xué)知識為基礎(chǔ),設(shè)計了10000s以內(nèi)的計時器電路并進(jìn)行仿真。本系統(tǒng)以MCS-51系列中的8051單片機(jī)為核心,基于Keil μVision程序設(shè)計平臺和Proteus硬件仿真平臺,能夠?qū)崿F(xiàn)10000s以內(nèi)的計時。該系統(tǒng)通過12MHz晶振控制時間,T0計時器進(jìn)行計時,并通過6位LED顯示屏輸出進(jìn)行顯示。設(shè)計中注重對單片機(jī)工作原理以及定時器計時原理,中斷控制及LED顯示原理

14、的理解,以便今后自己在單片機(jī)領(lǐng)域的學(xué)習(xí)和開發(fā)打下基礎(chǔ),提高自己的動手能力和設(shè)計能力,培養(yǎng)創(chuàng)新能力,豐富自己的理論知識,做到理論和實踐相結(jié)合。本次設(shè)計的重要意義還在于對單片機(jī)的內(nèi)部結(jié)構(gòu)和工作狀態(tài)做更進(jìn)一步的了解,同時還對單片機(jī)的接口技術(shù),中斷技術(shù),存儲方式和控制方式作更深層次的了解。此次設(shè)計更進(jìn)一步了解基本電路的設(shè)計流程,提高自己的設(shè)計理念,豐富自己的理論知識,鞏固所學(xué)知識,使自己的動手動腦能力有更進(jìn)一步提高,為自己今后的學(xué)習(xí)和工作打好基

15、礎(chǔ),為自己的專業(yè)技能打好基礎(chǔ)。</p><p><b>  1.3設(shè)計目的</b></p><p>  通過本次工程實踐,運(yùn)用嵌入式C語言課程所學(xué)知識及查閱相關(guān)資料,完成10000s以內(nèi)計時器程序及電路的設(shè)計,達(dá)到理論知識與實踐更好結(jié)合、提高綜合運(yùn)用所學(xué)知識和設(shè)計能力的目的。</p><p>  通過本次設(shè)計訓(xùn)練,可以使我們在基本思路和基本方法

16、上對基于MCS-51單片機(jī)的嵌入式系統(tǒng)設(shè)計有一個比較感性的認(rèn)識,并具備一定程度的設(shè)計能力。</p><p><b>  1.4設(shè)計任務(wù)</b></p><p>  在本次工程實踐中,主要完成如下方面的設(shè)計任務(wù):</p><p>  1)簡要綜述單片機(jī)技術(shù)發(fā)展的國內(nèi)外現(xiàn)狀及在定時器及中斷控制方面的應(yīng)用情況;</p><p>

17、;  2)掌握MCS-51系列某種產(chǎn)品(例如8051)的最小電路及外圍擴(kuò)展電路的設(shè)計方法;</p><p>  3)了解單片機(jī)定時器及中斷控制的功能及工作過程;</p><p>  4)完成主要功能模塊的硬件電路設(shè)計及必要的參數(shù)確定;</p><p>  5)用一種計算機(jī)繪圖軟件完成原理電路的繪制;</p><p>  6)完成系統(tǒng)設(shè)計說明書

18、(頁數(shù)不低于10頁)。</p><p>  1.5 章節(jié)安排說明</p><p>  整個設(shè)計總共分為四個章節(jié),第一章是前言部分,主要介紹了設(shè)計單片機(jī)10000s以內(nèi)計時系統(tǒng)的意義、目的及主要內(nèi)容;第二章簡要介紹了單片機(jī)發(fā)展的國內(nèi)外現(xiàn)狀、溫度巡檢系統(tǒng)在工業(yè)上的幾種具體應(yīng)用,并對計時器計時原理進(jìn)行了簡要的說明。第三章是系統(tǒng)的總體設(shè)計階段,這一部分主要介紹了系統(tǒng)的整體功能,繪制出系統(tǒng)的整體結(jié)構(gòu)

19、框圖。另外按照各部分實現(xiàn)的功能不同,將整個系統(tǒng)分成了三個功能塊,并對每一個功能塊所采用的元器件進(jìn)行了詳細(xì)介紹。第四章是系統(tǒng)詳細(xì)設(shè)計階段,對每一個功能塊的芯片圖進(jìn)行了詳細(xì)的說明,對每一個引腳的接線都進(jìn)行了詳細(xì)的設(shè)計,此外還編寫了主要功能模塊的基本程序,詳盡闡述了各模塊的工作過程。</p><p>  第二章 10000s計時系統(tǒng)簡介</p><p><b>  2.1單片機(jī)概述&l

20、t;/b></p><p>  單片機(jī)全稱單片微型計算機(jī),又稱為微控制器或嵌入式控制器。它是將計算機(jī)的基本部件微型化并集成到一塊芯片上的微型計算機(jī),通常內(nèi)還有CPU、ROM、RAM、并行I/O、定時器/計數(shù)器、中斷控制、系統(tǒng)時鐘及系統(tǒng)總線等。單片機(jī)有著體積小、功耗低、功能強(qiáng)、性能價格比高、易于推廣應(yīng)用等顯著優(yōu)點,在自動化裝置、智能儀器儀表、過程控制、通信、家用電器等許多領(lǐng)域得到日益廣泛的應(yīng)用。</p&

21、gt;<p>  2.1.1 單片機(jī)簡介</p><p>  單片機(jī)是一種集成電路芯片,采用超大規(guī)模技術(shù)把具有數(shù)據(jù)處理能力(如算術(shù)運(yùn)算、邏輯運(yùn)算、數(shù)據(jù)傳送、中斷處理)的微處理器(CPU),隨機(jī)存取數(shù)據(jù)存儲器(RAM),只讀程序存儲器(ROM),輸入輸出電路(I/O口),可能還包括定時計數(shù)器,串行通信(SCI),顯示驅(qū)動電路(LCD或LED驅(qū)動電路),脈寬調(diào)制電路(PWM),模擬多路轉(zhuǎn)換器及A/D轉(zhuǎn)換

22、器等電路集成到一塊單塊音芯片上,構(gòu)成一個最小然而完善的計算機(jī)系統(tǒng)。這些電路能在軟件的控制下準(zhǔn)確、迅速、高效地完成程序設(shè)計者事先規(guī)定的任務(wù)。</p><p>  由此來看,單片機(jī)有著微處理器所不具備的功能,它可單獨地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,這是單片機(jī)最大的特征。</p><p>  不同的單片機(jī)有著不同的硬件特征和軟件特征,即它們的技術(shù)特征均不盡相同,硬件特征取決于單片機(jī)芯片

23、的內(nèi)部結(jié)構(gòu),用戶要使用某種單片機(jī),必須了解該型產(chǎn)品是否滿足需要的功能和應(yīng)用系統(tǒng)所要求的特性指標(biāo)。這里的技術(shù)特征包括功能特性、控制特性和電氣特性等等,這些信息需要從生產(chǎn)廠商的技術(shù)手冊中得到。軟件特征是指指令系統(tǒng)特性和開發(fā)支持環(huán)境,指令特性即我們熟悉的單片機(jī)的尋址方式,數(shù)據(jù)處理和邏輯處理方式,輸入輸出特性及對電源的要求等等。開發(fā)支持的環(huán)境包括指令的兼容及可移植性,支持軟件(包含可支持開發(fā)應(yīng)用程序的軟件資源)及硬件資源。要利用某型號單片機(jī)開發(fā)

24、自己的應(yīng)用系統(tǒng),掌握其結(jié)構(gòu)特征和技術(shù)特征是必須的。</p><p>  單片機(jī)控制系統(tǒng)能夠取代以前利用復(fù)雜電子線路或數(shù)字電路構(gòu)成的控制系統(tǒng),可以軟件控制來實現(xiàn),并能夠?qū)崿F(xiàn)智能化,現(xiàn)在單片機(jī)控制范疇無所不在,例如通信產(chǎn)品、家用電器、智能儀器儀表、過程控制和專用控制裝置等等,單片機(jī)的應(yīng)用領(lǐng)域越來越廣泛。</p><p>  2.1.2單片機(jī)的特點</p><p>  單

25、片機(jī)與通用微機(jī)相比,在結(jié)構(gòu),指令設(shè)置上均用獨到之處,其主要特點如下:</p><p>  單片機(jī)的存儲器ROM和RAM是嚴(yán)格區(qū)分的,ROM稱為程序存儲器,只存放程序,固定常數(shù)以及數(shù)據(jù)表格,RAM則為數(shù)據(jù)存儲器,用作工作區(qū)以及存放用戶數(shù)據(jù),這樣的結(jié)構(gòu)主要是考慮到單片機(jī)用于控制系統(tǒng)中,有較大的程序存儲空間,把開發(fā)成功的程序固化在ROM中,而把少量的隨機(jī)數(shù)據(jù)存放在RAM中,這樣小容量的數(shù)據(jù)存儲器能以高速RAM形成集成在

26、單片機(jī)內(nèi),以加速單片機(jī)的執(zhí)行速度,但單片機(jī)內(nèi)的RAM是作為數(shù)據(jù)存儲器用,而不是當(dāng)作高速緩沖存儲器(CACHE)使用。</p><p>  采用面向控制的指令系統(tǒng),為滿足控制的需要,單片機(jī)有更強(qiáng)的邏輯控制能力,特別是具有很強(qiáng)的位處理能力。</p><p>  單片機(jī)的I/O引腳通常是多功能的,由于單片機(jī)芯片上引腳數(shù)目有限,為了解決實際引腳和需要的信號線的矛盾,采用了引腳功能復(fù)用的方法,引腳處

27、于何種功能,可由指令來設(shè)置或由機(jī)器狀態(tài)來區(qū)分。</p><p>  單片機(jī)的外部擴(kuò)展能力強(qiáng),在內(nèi)部的各種功能部分不能滿足應(yīng)用需求時,均可在外部進(jìn)行擴(kuò)展(如擴(kuò)展ROM,RAM,I/O接口,定時器/計數(shù)器,中斷系統(tǒng)等),與許多通用的微機(jī)接口芯片兼容,給應(yīng)用系統(tǒng)設(shè)計帶來極大的方便和靈活性。</p><p>  2.1.3 單片機(jī)的應(yīng)用領(lǐng)域</p><p>  單片機(jī)廣泛應(yīng)

28、用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制領(lǐng)域,大致可分如下幾個范疇:</p><p>  1.在智能儀器儀表上的應(yīng)用:單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點,廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實現(xiàn)諸如電壓、功率、頻率、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機(jī)控使得儀器儀表數(shù)字化、智能化、微型化,且功

29、能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測量設(shè)備(功率計、示波器、各種分析儀)。</p><p>  2.在工業(yè)控制中的應(yīng)用:用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理、電梯的智能化控制、各種報警系統(tǒng),與計算機(jī)聯(lián)網(wǎng)構(gòu)成二級控制系統(tǒng)等。</p><p>  3.在家用電器中的應(yīng)用:可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰

30、箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子稱量設(shè)備,五花八門,無所不在。</p><p>  4.在計算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用:現(xiàn)代的單片機(jī)普遍具備通信接口,可以方便地與計算機(jī)進(jìn)行數(shù)據(jù)通信,為在計算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實現(xiàn)了單片機(jī)智能控制。</p><p>  5.單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用:單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用

31、呼叫機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。 </p><p>  總之,單片機(jī)技術(shù)使用范圍廣,在各種儀器儀表生產(chǎn)單位、石油、化工,紡織、機(jī)械的加工等各個行業(yè)中都有廣泛的應(yīng)用。</p><p>  2.2單片機(jī)發(fā)展現(xiàn)狀</p><p>  計算機(jī)系統(tǒng)的發(fā)展已明顯地朝三個方向發(fā)展;這三個方向就是:巨型化,單片化,網(wǎng)絡(luò)化。以解決復(fù)雜系統(tǒng)計算和高速數(shù)據(jù)處

32、理的仍然是巨型機(jī)在起作用,故而,巨 型機(jī)在目前在朝高速及處理能力的方向努力。單片機(jī)在出現(xiàn)時,Intel公司就給其單片機(jī)取名為嵌入式微控制器(embedded microcontroller)。單片機(jī)的最明顯的優(yōu)勢,就是可以嵌入到各種儀器、設(shè)備中。這一點是巨型機(jī)和網(wǎng)絡(luò)不可能做到的。在本文,介紹單片機(jī)的最新技術(shù)進(jìn)步,包括數(shù)字單片機(jī)的工藝及技術(shù),模糊單片機(jī)的工藝及技術(shù),單片機(jī)的可靠性技術(shù),以及以單片機(jī)為核心的嵌入式系統(tǒng)。</p>

33、<p>  數(shù)字單片機(jī)的技術(shù)發(fā)展數(shù)字單片機(jī)的技術(shù)進(jìn)步反映在內(nèi)部結(jié)構(gòu)、功率消耗、外部電壓等級以及制造工藝上。在這幾方面,較為典型地說明了數(shù)字單片機(jī)的水平。在目前,用戶對單片機(jī)的需要越來越多,但是,要求也越來越高。下面分別就這四個方面說明單片機(jī)的技術(shù)進(jìn)步狀況:</p><p>  1、 內(nèi)部結(jié)構(gòu)的進(jìn)步</p><p>  單片機(jī)在內(nèi)部已集成了越來越多的部件,這些部件包括一般常用的電

34、路,例如:定時器,比較器,A/D轉(zhuǎn)換器,D /A轉(zhuǎn)換器,串行通信接口,Watchdog電路,LCD控制器等。有 的單片機(jī)為了構(gòu)成控制網(wǎng)絡(luò)或形成局部網(wǎng),內(nèi)部含有局部網(wǎng)絡(luò)控制模塊CAN。例如,Infineon公司的C 505C,C515C,C167CR,C167CS-32FM,81C90;Motorola公司的68HC08AZ 系列等。特別是在單片機(jī)C167CS-32FM中,內(nèi)部還含有2個CAN。因此,這類單片機(jī)十分容易構(gòu)成網(wǎng)絡(luò)。特別是在控

35、制,系統(tǒng)較為復(fù)雜時,構(gòu)成一個控 制網(wǎng)絡(luò)十分有用。為了能在變頻控制中方便使用單片機(jī),形成最具經(jīng)濟(jì)效益的嵌入式控制系統(tǒng)。有的單片機(jī)內(nèi)部設(shè)置了專門用于變頻控制的脈寬 調(diào)制控制電路,這些單片機(jī)有Fujitsu公司的MB89850系列、MB89860系列;Motorola 公司的MC68HC08MR16、MR24等。在這些單片機(jī)中,脈寬調(diào)制電路有6個通道輸出,可產(chǎn)生三相脈寬調(diào)制交流電壓,并內(nèi)部含死區(qū)控制等功能。特 別引人注目的是:現(xiàn)在有的單片機(jī)已

36、采用所謂的三核(TrCore)結(jié)構(gòu)。這是一種建立在系統(tǒng)級芯片</p><p>  2、 功耗、封裝及電源電壓的進(jìn)步</p><p>  現(xiàn)在新的單片機(jī)的功耗越來越小,特別是很多單片機(jī)都設(shè) 置了多種工作方式,這些工作方式包括等待,暫停,睡眠,空閑,節(jié)電等工作方式。Philips公司的單片機(jī)P87LPC762是一個很典型的例子,在空閑 時,其功耗為1.5 mA,而在節(jié)電方式中,其功耗只有0.5

37、mA。而在功耗上最令人驚嘆的是TI公司的單片機(jī)MSP430系列,它是一個 16位的系列,有超低功耗工作方式。它的低功耗方式有LPM1、LPM3、LPM4三種。當(dāng)電源為3V時,如果工作于 LMP1方式,即使外圍電路處于活動,由于CPU不活動,振蕩器處于1~4MHz,這時功耗只有50?A。在LPM3 時,振蕩器處于32kHz,這時功耗只有1.3?A。在LPM4時,CPU、外圍及振蕩器32kHz都不活動,則功耗只有0.1?A?,F(xiàn) 在單片機(jī)的封

38、裝水平已大大提高,隨著貼片工藝的出現(xiàn),單片機(jī)也大量采用了各種合符貼片工藝的封裝方式出現(xiàn),以大量減少體積。在這種形勢 中,Microchip公司推出的8引腳的單片機(jī)特別引人注目。這是PIC12CXXX系列。它含有0.5~2K程序存儲器,25~128字節(jié)數(shù)據(jù)存儲 器,6個I/O端口以及一個定時器,有的還含4</p><p><b>  3、 工藝上的進(jìn)步</b></p><p

39、>  現(xiàn)在的單片機(jī)基本上采用CMOS技術(shù),但已經(jīng)大多數(shù)采用了0.6?m以上的光刻工藝,有個別的公司,如Motorola公司則已采用0.35?m甚至是0.25?m技術(shù)。這些技術(shù)的進(jìn)步大大地提高了單片機(jī)的內(nèi)部密度和可靠性以單片機(jī)為核心的嵌入式系統(tǒng)單 片機(jī)的另外一個名稱就是嵌入式微控制器,原因在于它可以嵌入到任何微型或小型儀器或設(shè)備中。目前,把單片機(jī)嵌入式系統(tǒng)和Internet連接已是一種趨 勢。但是,Internet一向是一種采用肥服

40、務(wù)器,瘦用戶機(jī)的技術(shù)。這種技術(shù)在互聯(lián)上存儲及訪問大量數(shù)據(jù)是合適的,但對于控制嵌入式器件就成了"殺雞用 牛刀"了。要實現(xiàn)嵌入式設(shè)備和Int ernet連接,就需要把傳統(tǒng)的Internet理論和嵌入式設(shè)備的實踐都顛倒過來。為了使復(fù)雜的或簡單的嵌入式設(shè)備,例如單片機(jī)控制的機(jī)床、單片機(jī)控制 的門鎖,能切實可行地和Internet連接,就要求專門為嵌入式微控制器設(shè)備設(shè)計網(wǎng)絡(luò)服務(wù)器,使嵌入式設(shè)備可以和Internet相連,并通過

41、標(biāo)準(zhǔn)網(wǎng)絡(luò) 瀏覽器進(jìn)行過程控制。目前,為了把單片機(jī)為核心的嵌入式系統(tǒng)和Internet相連,已有多家公司在進(jìn)行這方面的較多研究。這方面較為典型的有emWa</p><p><b>  4、可靠性的進(jìn)步</b></p><p>  在單片機(jī)應(yīng)用中,可靠性是首要因素為了擴(kuò)大單片機(jī)的應(yīng)用范圍和領(lǐng)域,提高單片機(jī)自身的可靠性是一種有效方法。近年來,單片機(jī)的生產(chǎn)廠家在單片機(jī)設(shè)計上采

42、用了各種提高可靠性的新技術(shù)。</p><p>  2.3 10000s計時系統(tǒng)程序簡介</p><p>  本次課程設(shè)計的100000s以內(nèi)的計時系統(tǒng)通過Keil程序設(shè)計平臺,以AT89C51為核心,采用C語言進(jìn)行編程設(shè)計,實現(xiàn)在 6 只數(shù)碼管上完成0~99 999.9s的計時顯示。本程序通過定時器0中斷方式1實現(xiàn)定時器中斷計時,通過外部中斷子程序?qū)崿F(xiàn)外部按鈕的響應(yīng)。程序的開始調(diào)用reg5

43、1.h和intrins.h庫函數(shù),定義各類變量,并設(shè)置p0.7和平。0口初始狀態(tài)為1。隨后編寫一個延時子程序。主程序中通過if語句判斷開關(guān)是否按下,若開關(guān)按下則開始計時,定時器開始工作。通過循環(huán)左移指令實現(xiàn)數(shù)字在LED顯示屏上依次顯示,實現(xiàn)計時器顯示功能。在定時器0中斷方式1子程序中設(shè)置定時器初值,即在定時器達(dá)到一次計時周期時重新裝入初值。在外部中斷子程序中響應(yīng)按鈕的動作,實現(xiàn)計時器的暫停與繼續(xù)計時。</p><p&

44、gt;  2.4 10000s計時系統(tǒng)程序代碼</p><p>  #include<reg51.h></p><p>  #include<intrins.h></p><p>  #define uchar unsigned char</p><p>  #define uint unsigned int</

45、p><p><b>  //段碼</b></p><p>  uchar codeDSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};</p><p>  //6 只數(shù)碼管上顯示的數(shù)字</p><p>  uchar Digits_of_6DSY[]

46、={0,0,0,0,0,0};</p><p>  uchar Count;</p><p>  sbit Dot=P0^7;</p><p>  sbit K1=P1^0;</p><p><b>  //延時</b></p><p>  void DelayMS(uint ms)</p&

47、gt;<p><b>  {</b></p><p><b>  uchar t;</b></p><p>  while(ms--) </p><p>  for(t=0;t<120;t++);</p><p><b>  }</b></p>

48、<p><b>  //主程序</b></p><p>  void main()</p><p><b>  {</b></p><p><b>  if(K1==0)</b></p><p>  {uchar i,j;</p><p>

49、;<b>  P0=0x00;</b></p><p><b>  P2=0xff;</b></p><p><b>  Count=0;</b></p><p>  TMOD=0x01;</p><p><b>  IE=0x83;</b></p&

50、gt;<p>  IP=0x01; //設(shè)置優(yōu)先級,INT0高于T0</p><p>  IT0=1; //INT0中斷觸發(fā)方式為下降沿觸發(fā)</p><p>  TR0=1; //啟動T0</p><p>  TH0=(65536-50000)/256; //50ms 定時</p><p>  TL0=(65536-50000)

51、%256;</p><p>  while(K1==0)</p><p><b>  {</b></p><p><b>  j=0x7f;</b></p><p>  //顯示Digits_of_6DSY[5]~Digits_of_6DSY[0]的內(nèi)容</p><p>  

52、for(i=5;i!=-1;i--)</p><p><b>  {</b></p><p>  j=_crol_(j,1);</p><p><b>  P2=j;</b></p><p>  P0=DSY_CODE[Digits_of_6DSY[i]];</p><p>

53、<b>  if(i==1) </b></p><p>  Dot=1; //加小數(shù)點</p><p>  DelayMS(2);</p><p><b>  }</b></p><p><b>  }</b></p><p><b> 

54、 }</b></p><p>  else P0=0x00;</p><p><b>  P2=0xff;</b></p><p><b>  Count=0;;</b></p><p><b>  }</b></p><p><b

55、>  //T0 中斷函數(shù)</b></p><p>  void Timer0() interrupt 1</p><p><b>  {</b></p><p><b>  uchar i;</b></p><p>  TH0=(65536-50000)/256; //恢復(fù)初值&l

56、t;/p><p>  TL0=(65536-50000)%256;</p><p>  if(++Count!=2)</p><p><b>  return;</b></p><p><b>  Count=0;</b></p><p>  Digits_of_6DSY[0]+

57、+; //0.1s 位累加</p><p>  for(i=0;i<=5;i++) //進(jìn)位處理</p><p><b>  {</b></p><p>  if(Digits_of_6DSY[i]==10)</p><p><b>  {</b></p><p>  

58、Digits_of_6DSY[i]=0;</p><p><b>  if(i!=5) </b></p><p>  Digits_of_6DSY[i+1]++; //如果0~4 位則分別向高一位進(jìn)位</p><p><b>  }</b></p><p>  else break; //若某低位沒

59、有進(jìn)位,循環(huán)提前結(jié)束</p><p><b>  }</b></p><p><b>  }</b></p><p>  void K2_int() interrupt 0</p><p><b>  {</b></p><p><b>  T

60、R0=~TR0;</b></p><p><b>  }</b></p><p>  第三章 系統(tǒng)總體設(shè)計及主要器件簡介</p><p>  3.1 10000s計時系統(tǒng)組成結(jié)構(gòu)</p><p>  根據(jù)前一章中對10000s以內(nèi)計時系統(tǒng)的簡介可知,該計時器系統(tǒng)主要有三部分組成:</p><

61、;p>  1)8051單片機(jī)基本電路部分; </p><p>  2)8051單片機(jī)外部按鈕及開關(guān)部分;</p><p>  3)LED顯示部分;</p><p>  相應(yīng)框圖如圖3.1所示。</p><p>  3.2 10000s計時系統(tǒng)主要器件</p><p>  本次課程設(shè)計的10000s以內(nèi)計時器系統(tǒng)所

62、應(yīng)用的主要器件有AT89C51單片機(jī)芯片,12MHz晶體振蕩器,6位共陰極7段數(shù)碼管顯示屏,兩個排阻,一個按鈕,一個開關(guān)。</p><p>  AT89C51是一種帶4K字節(jié)FLASH存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器

63、的單片機(jī)。單片機(jī)的可擦除只讀存儲器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。</p><p>  石英晶體振蕩器是利用石英晶體

64、(二氧化硅的結(jié)晶體)的壓電效應(yīng)制成的一種諧振器件,它的基本構(gòu)成大致是:從一塊石英晶體上按一定方位角切下薄片(簡稱為晶片,它可以是正方形、矩形或圓形等),在它的兩個對應(yīng)面上涂敷銀層作為電極,在每個電極上各焊一根引線接到管腳 上,再加上封裝外殼就構(gòu)成了石英晶體諧振器,簡稱為石英晶體或晶體、晶振;而在封裝內(nèi)部添加IC組成振蕩電路的晶體元件稱為晶體振蕩器。其產(chǎn)品一般用金屬外殼封裝,也有用玻璃殼、陶瓷或塑料封裝的。</p><

65、p>  7段數(shù)碼管顯示10進(jìn)制數(shù),6位顯示10000s以內(nèi)的計時情況。</p><p>  排阻提供壓降,驅(qū)動數(shù)碼管發(fā)光。開關(guān)控制計時器開閉,按鈕控制暫?;蚶^續(xù)計時。</p><p>  第四章 10000s計時系統(tǒng)硬件設(shè)計</p><p>  4.1 基于8051單片機(jī)的計時系統(tǒng)電路設(shè)計</p><p>  在10000s計時系統(tǒng)中,

66、采用8051芯片作為系統(tǒng)核心,其時鐘電路和復(fù)位電路是8051的最基本電路。通過Proteus硬件仿真平臺,根據(jù)課題要求設(shè)計系統(tǒng)電路圖,并對編寫的程序進(jìn)行仿真,使系統(tǒng)電力能夠?qū)崿F(xiàn)10000s以內(nèi)的計時。該系統(tǒng)通過12MHz晶振控制時間,T0計時器進(jìn)行計時,并通過6位數(shù)碼管顯示屏輸出進(jìn)行顯示。</p><p>  該系統(tǒng)電路原理圖如下圖所示:</p><p>  圖4-1 計時器系統(tǒng)電路原理圖

67、</p><p>  4.2計時系統(tǒng)工作原理</p><p>  將生成的16進(jìn)制文件導(dǎo)入仿真軟件,按下開始鍵進(jìn)行仿真。按下K1開關(guān),系統(tǒng)開始工作,定時器開始計時,并將秒數(shù)顯示在數(shù)碼管屏幕上。K1開關(guān)接在單片機(jī)P1.0口,程序檢測P1.0口狀態(tài),當(dāng)開關(guān)閉合之后,P1.0口為低電平,定時器開啟,開始進(jìn)行計時,如下圖:</p><p>  圖4-2 按下K1鍵</

68、p><p>  在計時器處于工作狀態(tài)時,按一下暫停按鈕,計時器暫停計時,屏幕顯示停留在按下按鈕時的秒數(shù)。暫停按鈕接在單片機(jī)P3.2口,該引腳為單片機(jī)外部中斷0的響應(yīng)引腳,程序中開外部中斷,并設(shè)置為下跳沿引起中斷,當(dāng)暫停按鈕按下時,程序跳入中斷子程序執(zhí)行,對定時器中斷狀態(tài)進(jìn)行取反,實現(xiàn)計時器的暫停與繼續(xù)計時,如下圖:</p><p>  圖4-3 按下暫停鍵</p><p&g

69、t;  將K1開關(guān)斷開,計時器停止計時,顯示屏關(guān)閉。</p><p><b>  結(jié)語</b></p><p>  在本次工程實踐中,我以嵌入式C語言課程中所學(xué)知識為基礎(chǔ),設(shè)計了10000s以內(nèi)的計時器電路并進(jìn)行仿真。本系統(tǒng)以MCS-51系列中的8051單片機(jī)為核心,基于Keil μVision程序設(shè)計平臺和Proteus硬件仿真平臺,能夠?qū)崿F(xiàn)10000s以內(nèi)的計時。

70、該系統(tǒng)通過12MHz晶振控制時間,T0計時器進(jìn)行計時,并通過6位數(shù)碼管顯示屏輸出進(jìn)行顯示。在系統(tǒng)設(shè)計中,不斷地改進(jìn)程序,編譯調(diào)試,生成16進(jìn)制文件。通過Proteus硬件仿真平臺進(jìn)行硬件電路設(shè)計,并將編譯生成的HEX文件導(dǎo)入進(jìn)行仿真調(diào)試,實現(xiàn)10000s以內(nèi)計時系統(tǒng)功能。通過本次課程設(shè)計,對所學(xué)嵌入式C語言知識進(jìn)行了復(fù)習(xí),并通過動手設(shè)計實踐,對單片機(jī)C語言編程與硬件電路仿真有了更深層次的了解,收獲豐富。</p><p

71、><b>  參考文獻(xiàn)</b></p><p>  [1] 梅麗鳳 等.單片機(jī)原理及接口技術(shù)[M].清華大學(xué)出版社,2007.8</p><p>  [2] 胡輝 等.單片機(jī)應(yīng)用系統(tǒng)設(shè)計與訓(xùn)練[M].中國水利水電出版社,2004.9 </p><p>  [3] 李葉紫 等.MCS-51單片機(jī)應(yīng)用教程[M].清華大學(xué)出版社,2004,3&

72、lt;/p><p>  [4] 王福瑞 等.單片機(jī)微機(jī)測控系統(tǒng)設(shè)計大全[M].北京航空航天大學(xué)出版社,1999.3</p><p>  [5] 李伯成.基于MCS-51單片機(jī)的嵌入式系統(tǒng)設(shè)計[M].電子工業(yè)出版社,2004.7 </p><p>  [6] 欒亞群 等.基于AT89C52單片機(jī)的微機(jī)檢測與顯式設(shè)計[J].現(xiàn)代電子技術(shù),2008,31(15):23~25&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論