版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘要</b></p><p> 單片機(jī)已在各行業(yè)得到廣泛應(yīng)用,為適應(yīng)更多的應(yīng)用領(lǐng)域,廠家采取了在一塊單片機(jī)芯片上集成多種功能部件和大容量存儲(chǔ)器的方法。因而,整個(gè)應(yīng)用系統(tǒng)不需要擴(kuò)展,而體積變小、可靠性增高,使單片機(jī)成為真正意義上的單片機(jī)系統(tǒng)。</p><p><b> 第一章 單片機(jī)概述</b></p>
2、<p> 單片機(jī)是單片微型計(jì)算機(jī)的簡稱,有時(shí)稱為微控制器,是將計(jì)算機(jī)的主要功能單元集成在一個(gè)芯片中而構(gòu)成的器件。由于單片機(jī)在一個(gè)芯片上集成諸多功能,因此就單項(xiàng)功能而言,通常都沒有普通計(jì)算機(jī)強(qiáng)大,如計(jì)算機(jī)速度不夠快、字長較短、外部可擴(kuò)展接口的數(shù)量少且規(guī)模小等。但是,單片機(jī)具有體積小、價(jià)格便宜和技術(shù)成熟等優(yōu)點(diǎn),是各種電子產(chǎn)品的重要組成部分,在國民經(jīng)濟(jì)的各個(gè)領(lǐng)域發(fā)揮著重要作用。</p><p> 早期
3、的單片機(jī)都是8位或4位的。其中最成功的是INTEL的8031,因?yàn)楹唵慰煽慷阅懿诲e(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)。基于這一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大提高。隨著INTEL i960系列特別是后來的ARM系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單
4、片機(jī)的高端地位,并且進(jìn)入主流市場。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機(jī)主頻已經(jīng)超過300MHz,性能直追90年代中期的專用處理器,而普通的型號(hào)出廠價(jià)格跌落至1美元,最高端[1]的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的Window
5、s和Linux操作系統(tǒng)。 </p><p> 單片機(jī)比專用處理器更適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的應(yīng)用。事實(shí)上單片機(jī)是世界上數(shù)量最多的計(jì)算機(jī)?,F(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。汽車上一般配備40多部單片機(jī),復(fù)雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺(tái)單片
6、機(jī)在同時(shí)工作!單片機(jī)的數(shù)量不僅遠(yuǎn)超過PC機(jī)和其他計(jì)算的總和,甚至比人類的數(shù)量還要多。 </p><p> 單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選
7、擇。 </p><p> 單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比如CPU,內(nèi)存,并行總線,還有和硬盤作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對(duì)我們的家用電腦弱很多,不過價(jià)錢也是低的,一般不超過10元即可......用它來做一些控制電器一類不是很復(fù)雜的工作足矣了。我們現(xiàn)在用的全自動(dòng)滾筒洗衣機(jī)、排煙罩、VCD等等的家電里面都可以看到它的身影!......它主要是作為控制部分的核心部件。 </p>
8、<p> 它是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場控制,需要的是有較強(qiáng)的抗干擾能力,較低的成本,這也是和離線式計(jì)算機(jī)的(比如家用PC)的主要區(qū)別。 </p><p> 單片機(jī)的組成通常和普通計(jì)算機(jī)一樣,通常具有以下幾個(gè)部分:</p><p> ?。?)、CPU。CPU是中央處理器的簡稱,有時(shí)也稱為“核”,它是進(jìn)行運(yùn)算和控制的重要單元,其性能決定單片機(jī)的主要性能。&l
9、t;/p><p> (2)、存儲(chǔ)器。單片機(jī)的存儲(chǔ)器通常由ROM和RAM組成,ROM常用于存放單片機(jī)的程序,而RAM用于存放數(shù)據(jù)。</p><p> (3)、輸入/輸出接口。計(jì)算機(jī)的輸入/輸出接口用于連接外圍設(shè)備,例如鍵盤、顯示器、打印機(jī)、A/D或D/A轉(zhuǎn)換器等,實(shí)現(xiàn)與外圍設(shè)備的數(shù)據(jù)交換。在普通計(jì)算機(jī)上,這些功能是由主板上的若干芯片實(shí)現(xiàn)的;對(duì)于單片機(jī),這些對(duì)應(yīng)的功能單元集成在其內(nèi)部。<
10、/p><p> 隨著技術(shù)的發(fā)展,單片機(jī)的功能日益增多,有些單片機(jī)除了上述功能以外,還集成有其他部件,如各種異步和同步串行接口、CAN通信控制器等。通常,稱單片機(jī)內(nèi)部除CPU外的功能單元為片內(nèi)外設(shè),也稱為內(nèi)部資源。</p><p> 單片機(jī)具有以下主要特點(diǎn):</p><p> ?。?)、價(jià)格便宜。單片機(jī)盡管集成了眾多資源,但其結(jié)構(gòu)簡單,生產(chǎn)批量大,因此價(jià)格十分便宜,通
11、常在幾元到幾十元人民幣。</p><p> (2)、體積小。目前最小的單片機(jī)只有6個(gè)引腳,十幾到二十幾個(gè)引腳的單片機(jī)也很多,還有表面貼片封裝的,體積很小,便于設(shè)計(jì)成嵌入式系統(tǒng)安裝在電子設(shè)備中,以實(shí)現(xiàn)智能控制。當(dāng)然,功能強(qiáng)大的單片機(jī)引腳也相應(yīng)較多,例如有40、52、68,甚至更多引腳的單片機(jī),但在采用表面貼片封裝后,其體積并不大。</p><p> ?。?)、技術(shù)成熟、應(yīng)用廣泛。相對(duì)于大型
12、計(jì)算機(jī)和PC機(jī),單片機(jī)的技術(shù)難度小,復(fù)雜度低,因此其技術(shù)相當(dāng)成熟。單片機(jī)的穩(wěn)定可靠,為在單片機(jī)的廣泛應(yīng)用創(chuàng)造了技術(shù)條件。在現(xiàn)代社會(huì),電子產(chǎn)品在日常生活中不可或缺,而電子產(chǎn)品往往離不開單片機(jī),可見單片機(jī)的應(yīng)用之廣。</p><p> 單片機(jī)在計(jì)算機(jī)家族中占據(jù)著重要地位,是電子工程師應(yīng)該掌握的最基本工具之一。當(dāng)然,就功能的完備性和強(qiáng)大性而言,單片機(jī)不能和高級(jí)計(jì)算機(jī)相比,但這不影響它的應(yīng)用范圍。實(shí)際工作中,并非所有場
13、合都要求計(jì)算機(jī)有很高的性能,例如電冰箱溫度控制并不需要使用主頻達(dá)1.8GHz的奔騰機(jī)。應(yīng)用單片機(jī)的關(guān)鍵是看其功能是否夠用,性價(jià)比是否合適。單片機(jī)不會(huì)因其簡單而被淘汰,例如MCS-51單片機(jī)退出來二十多年了,仍然是一款應(yīng)用最廣的單片機(jī),而且在不斷發(fā)展??梢哉f,只有在單片機(jī)出現(xiàn)后,計(jì)算機(jī)才能真正地從科學(xué)的神圣殿堂走入了尋常百姓家,成為廣大工程技術(shù)人員進(jìn)行技術(shù)革命和技術(shù)革新的有力武器。</p><p><b>
14、; 單片機(jī)的應(yīng)用 </b></p><p> 目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、
15、醫(yī)療器械以及各種智能機(jī)械了。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。 </p><p> 單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域,大致可分如下幾個(gè)范疇: </p><p> 1.在智能儀器儀表上的應(yīng)用 </p><p> 單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活
16、、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測量設(shè)備(功率計(jì),示波器,各種分析儀)。 </p><p> 2.在工業(yè)控制中的應(yīng)用 </p><p> 用單片機(jī)可以
17、構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。 </p><p> 3.在家用電器中的應(yīng)用 </p><p> 可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤量設(shè)備,五花八門,無所不在。 </p><p>
18、 4.在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用 </p><p> 現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng)電話,集群移動(dòng)通信,無線電對(duì)講機(jī)等。 </p><p> 5.單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)
19、用 </p><p> 單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。 </p><p> 6.在各種大型電器中的模塊化應(yīng)用 </p><p> 某些專用單片機(jī)設(shè)計(jì)用于實(shí)現(xiàn)特定功能,從而在各種電路中進(jìn)行模塊化應(yīng)用,而不要求使用人員了解其內(nèi)部結(jié)構(gòu)。如音樂集成單片機(jī),看似簡單的功能,微縮在純電子芯片中(有別
20、于磁帶機(jī)的原理),就需要復(fù)雜的類似于計(jì)算機(jī)的原理。如:音樂信號(hào)以數(shù)字的形式存于存儲(chǔ)器中(類似于ROM),由微控制器讀出,轉(zhuǎn)化為模擬音樂電信號(hào)(類似于聲卡)。 </p><p> 在大型電路中,這種模塊化應(yīng)用極大地縮小了體積,簡化了電路,降低了損壞、錯(cuò)誤率,也方便于更換。 </p><p> 7.單片機(jī)在汽車設(shè)備領(lǐng)域中的應(yīng)用 </p><p> 單片機(jī)在汽車電子
21、中的應(yīng)用非常廣泛,例如汽車中的發(fā)動(dòng)機(jī)控制器,基于CAN總線的汽車發(fā)動(dòng)機(jī)智能電子控制器,GPS導(dǎo)航系統(tǒng),制動(dòng)系統(tǒng)等等。 </p><p> 此外,單片機(jī)在工商,金融,科研、教育,國防航空航天等領(lǐng)域都有著十分廣泛的用途。</p><p> 單片機(jī)學(xué)習(xí)應(yīng)用的六大重要部分 </p><p><b> 一、總線:</b></p>&l
22、t;p> 我們知道,一個(gè)電路總是由元器件通過電線連接而成的,在模擬電路中,連線并不成為一個(gè)問題,因?yàn)楦髌骷g一般是串行關(guān)系,各器件之間的連線并不很多,但計(jì)算機(jī)電路卻不一樣,它是以微處理器為核心,各器件都要與微處理器相連,各器件之間的工作必須相互協(xié)調(diào),所以需要的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨(dú)連線,則線的數(shù)量將多得驚人,所以在微處理機(jī)中引入了總線的概念,各個(gè)器件共同享用連線,所有器件的8根數(shù)據(jù)線全部
23、接到8根公用的線上,即相當(dāng)于各個(gè)器件并聯(lián)起來,但僅這樣還不行,如果有兩個(gè)器件同時(shí)送出數(shù)據(jù),一個(gè)為0,一個(gè)為1,那么,接收方接收到的究竟是什么呢?這種情況是不允許的,所以要通過控制線進(jìn)行控制,使器件分時(shí)工作,任何時(shí)候只能有一個(gè)器件發(fā)送數(shù)據(jù)(可以有多個(gè)器件同時(shí)接收)。器件的數(shù)據(jù)線也就被稱為數(shù)據(jù)總線,器件所有的控制線被稱為控制總線。在單片機(jī)內(nèi)部或者外部存儲(chǔ)器及其它器件中有存儲(chǔ)單元,這些存儲(chǔ)單元要被分配地址,才能使用,分配地址當(dāng)然也是以電信號(hào)的
24、形式給出的,由于存儲(chǔ)單元比較多,所以,用于地址分配的線也較多,這些線被稱為地址總線。 </p><p> 二、數(shù)據(jù)、地址、指令:</p><p> 之所以將這三者放在一起,是因?yàn)檫@三者的本質(zhì)都是一樣的——數(shù)字,或者說都是一串‘0’和‘1’組成的序列。換言之,地址、指令也都是數(shù)據(jù)。指令:由單片機(jī)芯片的設(shè)計(jì)者規(guī)定的一種數(shù)字,它與我們常用的指令助記符有著嚴(yán)格的一一對(duì)應(yīng)關(guān)系,不可以由單片機(jī)的開
25、發(fā)者更改。地址:是尋找單片機(jī)內(nèi)部、外部的存儲(chǔ)單元、輸入輸出口的依據(jù),內(nèi)部單元的地址值已由芯片設(shè)計(jì)者規(guī)定好,不可更改,外部的單元可以由單片機(jī)開發(fā)者自行決定,但有一些地址單元是一定要有的(詳見程序的執(zhí)行過程)。數(shù)據(jù):這是由微處理機(jī)處理的對(duì)象,在各種不同的應(yīng)用電路中各不相同,一般而言,被處理的數(shù)據(jù)可能有這么幾種情況: </p><p> 1.地址(如MOV DPTR,1000H),即地址1000H送入DPTR。 &l
26、t;/p><p> 2.方式字或控制字(如MOV TMOD,#3),3即是控制字。 </p><p> 3.常數(shù)(如MOV TH0,#10H)10H即定時(shí)常數(shù)。 </p><p> 4.實(shí)際輸出值(如P1口接彩燈,要燈全亮,則執(zhí)行指令:MOV P1,#0FFH,要燈全暗,則執(zhí)行指令:MOV P1,#00H)這里0FFH和00H都是實(shí)際輸出值。又如用于LED的字形碼
27、,也是實(shí)際輸出的值。 </p><p> 理解了地址、指令的本質(zhì),就不難理解程序運(yùn)行過程中為什么會(huì)跑飛,會(huì)把數(shù)據(jù)當(dāng)成指令來執(zhí)行了。 </p><p> 三、P0口、P2口和P3的第二功能用法:</p><p> 初學(xué)時(shí)往往對(duì)P0口、P2口和P3口的第二功能用法迷惑不解,認(rèn)為第二功能和原功能之間要有一個(gè)切換的過程,或者說要有一條指令,事實(shí)上,各端口的第二功能完全
28、是自動(dòng)的,不需要用指令來轉(zhuǎn)換。如P3.6、P3.7分別是WR、RD信號(hào),當(dāng)微處理機(jī)外接RAM或有外部I/O口時(shí),它們被用作第二功能,不能作為通用I/O口使用,只要--微處理機(jī)--執(zhí)行到MOVX指令,就會(huì)有相應(yīng)的信號(hào)從P3.6或P3.7送出,不需要事先用指令說明。事實(shí)上‘不能作為通用I/O口使用’也并不是‘不能’而是(使用者)‘不會(huì)’將其作為通用I/O口使用。你完全可以在指令中按排一條SETB P3.7的指令,并且當(dāng)單片機(jī)執(zhí)行到這條指令時(shí)
29、,也會(huì)使P3.7變?yōu)楦唠娖?,但使用者不?huì)這么去做,因?yàn)檫@通常會(huì)導(dǎo)致系統(tǒng)的崩潰。 </p><p> 四、程序的執(zhí)行過程:</p><p> 單片機(jī)在通電復(fù)位后8051內(nèi)的程序計(jì)數(shù)器(PC)中的值為‘0000’,所以程序總是從‘0000’單元開始執(zhí)行,也就是說:在系統(tǒng)的ROM中一定要存在‘0000’這個(gè)單元,并且在‘0000’單元中存放的一定是一條指令。 </p><
30、p><b> 五、堆棧:</b></p><p> 堆棧是一個(gè)區(qū)域,是用來存放數(shù)據(jù)的,這個(gè)區(qū)域本身沒有任何特殊之處,就是內(nèi)部RAM的一部份,特殊的是它存放和取用數(shù)據(jù)的方式,即所謂的‘先進(jìn)后出,后進(jìn)先出’,并且堆棧有特殊的數(shù)據(jù)傳輸指令,即‘PUSH’和‘POP’,有一個(gè)特殊的專為其服務(wù)的單元,即堆棧指針SP,每當(dāng)執(zhí)一次PUSH指令時(shí),SP就(在原來值的基礎(chǔ)上)自動(dòng)加1,每當(dāng)執(zhí)行一次P
31、OP指令,SP就(在原來值的基礎(chǔ)上)自動(dòng)減1。由于SP中的值可以用指令加以改變,所以只要在程序開始階段更改了SP的值,就可以把堆棧設(shè)置在規(guī)定的內(nèi)存單元中,如在程序開始時(shí),用一條MOV SP,#5FH指令,就是把堆棧設(shè)置在從內(nèi)存單元60H開始的單元中。一般程序的開頭總有這么一條設(shè)置堆棧指針的指令,因?yàn)殚_機(jī)時(shí),SP的初始值為07H,這樣就使堆棧從08H單元開始往后,而08H到1FH這個(gè)區(qū)域正是8031的第二、三、四工作寄存器區(qū),經(jīng)常要被使用
32、,這會(huì)造成數(shù)據(jù)的混亂。不同作者編寫程序時(shí),初始化堆棧指令也不完全相同,這是作者的習(xí)慣問題。當(dāng)設(shè)置好堆棧區(qū)后,并不意味著該區(qū)域成為一種專用內(nèi)存,它還是可以象普通內(nèi)存區(qū)域一樣使用,只是一般情況下編程者不會(huì)把它當(dāng)成普通內(nèi)存用了。 </p><p> 第二章 總體方案設(shè)計(jì)</p><p><b> 2.1 課題的意義</b></p><p> 課
33、程設(shè)計(jì)是單片機(jī)課程教學(xué)的最后一個(gè)環(huán)節(jié),是對(duì)學(xué)生進(jìn)行全面的系統(tǒng)的訓(xùn)練。進(jìn)行課程設(shè)計(jì)可以讓學(xué)生把學(xué)過的比較零碎的知識(shí)系統(tǒng)化,真正的能夠把學(xué)過的知識(shí)落到實(shí)處,能夠開發(fā)簡單的系統(tǒng),也進(jìn)一步激發(fā)了學(xué)生再深一步學(xué)習(xí)的熱情,因此課程設(shè)計(jì)是必不可少的,是非常必要的。在設(shè)計(jì)中我們可以消化與鞏固《單片機(jī)及接口技術(shù)》課程所學(xué)知識(shí);理論聯(lián)系實(shí)際,學(xué)會(huì)用理論知識(shí)解決實(shí)際問題;培養(yǎng)設(shè)計(jì)能力,初步掌握設(shè)計(jì)的一般步驟與方法</p><p>
34、2.2 系統(tǒng)整體硬件電路</p><p> 2.2.1 芯片簡介</p><p> Max232串口芯片</p><p> MAX232芯片是專門為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計(jì)的接口電路,使用+5v單電源供電。</p><p> 內(nèi)部結(jié)構(gòu)基本可分三個(gè)部分:</p><p> 第一部分是電荷泵電路。由1、2、
35、3、4、5、6腳和4只電容構(gòu)成。功能是產(chǎn)生+12v和-12v兩個(gè)電源,提供給RS-232串口電平的需要。</p><p> 第二部分是數(shù)據(jù)轉(zhuǎn)換通道。由7、8、9、10、11、12、13、14腳構(gòu)成兩個(gè)數(shù)據(jù)通道。其中13腳(R1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數(shù)據(jù)通道。8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數(shù)據(jù)通道。</
36、p><p> TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DP9插頭;DP9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。</p><p> 第三部分是供電。15腳DNG、16腳VCC(+5v)。</p><p> RS232 (DB9)引腳定義:<
37、;/p><p> 1 :DCD :載波檢測。主要用于Modem通知計(jì)算機(jī)其處于在線狀態(tài),即Modem檢測到撥號(hào)音,處于在線狀態(tài)。 2 :RXD:此引腳用于接收外部設(shè)備送來的數(shù)據(jù);在你使用Modem時(shí),你會(huì)發(fā)現(xiàn)RXD指示燈在閃爍,說明RXD引腳上有數(shù)據(jù)進(jìn)入。 3 :TXD:此引腳將計(jì)算機(jī)的數(shù)據(jù)發(fā)送給外部設(shè)備;在你使用Modem時(shí),你會(huì)發(fā)現(xiàn)TXD指示燈在閃爍,說明計(jì)算機(jī)正在通過TXD引腳發(fā)送數(shù)據(jù)。
38、 4 :DTR:數(shù)據(jù)終端就緒;當(dāng)此引腳高電平時(shí),通知Modem可以進(jìn)行數(shù)據(jù)傳輸,計(jì)算機(jī)已經(jīng)準(zhǔn)備好。 5 :GND:信號(hào)地;此位不做過多解釋。 6 :DSR:數(shù)據(jù)設(shè)備就緒;此引腳高電平時(shí),通知計(jì)算機(jī)Modem已經(jīng)準(zhǔn)備好,可以進(jìn)行數(shù)據(jù)通訊了。 7 :RTS:請(qǐng)求發(fā)送;此腳由計(jì)算機(jī)來控制,用以通知Modem馬上傳送數(shù)據(jù)至計(jì)算機(jī);否則,Modem將收到的數(shù)據(jù)暫時(shí)放入緩沖區(qū)中。 8 :CTS: 清除發(fā)送;此腳由M
39、odem控制,用以通知計(jì)算機(jī)將欲傳的數(shù)據(jù)送至Modem。 9 :RI : Modem通知計(jì)算機(jī)有呼叫進(jìn)來,是否接聽呼叫由計(jì)算機(jī)決定</p><p><b> DS18b20</b></p><p> DS1820是Dallas半導(dǎo)體公司生產(chǎn)的數(shù)字化溫度傳感器,是世界上第一片支持“一線總線”接口的溫度傳感器。一線總線獨(dú)特而經(jīng)濟(jì)的特點(diǎn),使用戶可以輕松的組件傳感
40、器網(wǎng)絡(luò),為測量引入全新的概念。新一代的“DS18B20”體積更小、更經(jīng)濟(jì)、更靈活,使用戶可以充分發(fā)揮一線總線的長處[5]。</p><p> 同DS1820一樣,DS18B20也支持“一線總線”接口,測量溫度范圍為-55℃~+125℃,在-10℃~+85℃范圍內(nèi),精度為±0.5℃?,F(xiàn)場溫度范圍以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性,適合于惡劣環(huán)境的現(xiàn)場溫度測量,如設(shè)備控制、設(shè)備或過程控
41、制、測溫類消費(fèi)電子產(chǎn)品等。</p><p> DS18B20的特性</p><p> (1) 獨(dú)特的單接口僅需一個(gè)端口引腳進(jìn)行通訊;</p><p> (2) 簡單的多點(diǎn)分布應(yīng)用;</p><p> (3) 無需外部器件;</p><p> (4) 可通過數(shù)據(jù)線供電,無需外部電源;</p>&l
42、t;p> (5) 零待機(jī)功耗;</p><p> (6) 測溫范圍為-55℃~+125℃,以0.5℃遞增;</p><p> (7) 溫度以9位數(shù)字量讀出;</p><p> (8) 溫度數(shù)字量轉(zhuǎn)換時(shí)間200ms(典型值);</p><p> (9) 用戶可定義的非易失性溫度報(bào)警設(shè)置;</p><p>
43、 (10) 報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件;</p><p> (11) 應(yīng)用包括溫度控制、工業(yè)系統(tǒng)、消費(fèi)品、溫度計(jì)或任何熱感測系統(tǒng)。</p><p> DS18B20的結(jié)構(gòu)如圖4.1所示:</p><p> 圖4.1 DS18B20的結(jié)構(gòu)圖</p><p> DS18B20有三個(gè)主要的數(shù)據(jù)部件:<
44、;/p><p> 64位激光(lasered) ROM;</p><p><b> 溫度靈敏元件;</b></p><p> 非易失性溫度告警觸發(fā)器TH和TL。</p><p> 器件從單線的通信線取得其電源,在信號(hào)線為高電平的時(shí)間周期內(nèi),把能量貯存在內(nèi)部的電容器中;在單信號(hào)線為低電平的時(shí)間期內(nèi),斷開此電源,直到信號(hào)
45、線變?yōu)楦唠娖街匦陆由霞纳?電容)電源為止。作為另一種可供選擇的方法,DS18B20也可用外部+5V電源供電。</p><p><b> max232芯片:</b></p><p> MAX232芯片是專門為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計(jì)的接口電路,使用+5v單電源供電。</p><p><b> Mcs-51芯片</b&g
46、t;</p><p> 80C51單片機(jī)屬于MCS-51系列單片機(jī),由Intel公司開發(fā),其結(jié)構(gòu)是8048的延伸,改進(jìn)了8048的缺點(diǎn),增加了如乘(MUL)、除(DIV)、減(SUBB)、比較(PUSH)、16位數(shù)據(jù)指針、布爾代數(shù)運(yùn)算等指令,以及串行通信能力和5個(gè)中斷源。采用40引腳雙列直插式DIP(Dual In Line Package),內(nèi)有128個(gè)RAM單元及4K的ROM。80C51有兩個(gè)16位定時(shí)計(jì)數(shù)
47、器,兩個(gè)外中斷,兩個(gè)定時(shí)計(jì)數(shù)中斷,及一個(gè)串行中斷,并有4個(gè)8位并行輸入口。80C51內(nèi)部有時(shí)鐘電路,但需要石英晶體和微調(diào)電容外接,本系統(tǒng)中采用12MHz的晶振頻率。由于80C51的系統(tǒng)性能滿足系統(tǒng)數(shù)據(jù)采集及時(shí)間精度的要求,而且產(chǎn)品產(chǎn)量豐富來源廣,應(yīng)用也很成熟,故采用來作為控制核心單片機(jī)的40個(gè)引腳大致可分為類:電源、時(shí)鐘、控制和I/O引腳。 </p><p><b> 電源:</b><
48、;/p><p> VCC - 芯片電源,接+5V; </p><p> VSS - 接地端; </p><p><b> 時(shí)鐘:</b></p><p> XTAL1、XTAL2 - 晶體振蕩電路反相輸入端和輸出端。 </p><p><b> ⒊ 控制線:</b>&l
49、t;/p><p><b> 控制線共有4根, </b></p><p> ALE/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖</p><p> ?、?ALE功能:用來鎖存P0口送出的低8位地址</p><p> ?、?PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。 </p>
50、;<p> PSEN:外ROM讀選通信號(hào)。 </p><p> RST/VPD:復(fù)位/備用電源。 </p><p> ?、?RST(Reset)功能:復(fù)位信號(hào)輸入端。 </p><p> ?、?VPD功能:在Vcc掉電情況下,接備用電源。 </p><p> EA/Vpp:內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。 <
51、/p><p> ?、?EA功能:內(nèi)外ROM選擇端。 </p><p> ?、?Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。 </p><p><b> ⒋ I/O線 </b></p><p> 80C51共有4個(gè)8位并行I/O端口:P0、P1、P2、P3口,共32個(gè)引腳。P3口還具有第二
52、功能,用于特殊信號(hào)輸入輸出和控制信號(hào)(屬控制總線)。</p><p><b> 。</b></p><p> 2.2.2 硬件電路設(shè)計(jì)及描述</p><p> 硬件電路由:Ds18b20,max232芯片,晶振,復(fù)位電路,聲光報(bào)警電路,8051單片機(jī)等組成。</p><p> DS18b20詳細(xì)引腳功能描述:&l
53、t;/p><p><b> 外觀圖:</b></p><p><b> GND地信號(hào)。</b></p><p> DQ數(shù)據(jù)輸入/輸出引腳,開漏單總線接口引腳。當(dāng)被用著在寄生電源下時(shí),也可以向器件提供電源。</p><p> VDD外接供電電源輸入端。當(dāng)工作于寄生電源時(shí),此引腳必須接地。 <
54、/p><p> DS18B20讀出的溫度結(jié)果的數(shù)據(jù)為兩字節(jié),用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供。因此在系統(tǒng)中要將得到的溫度值數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換才能用于顯示。</p><p> 這兩個(gè)數(shù)據(jù)格式如圖所示:</p><p> MSB
55、 </p><p><b> LSB</b></p><p> MSB LSB</p><p> 高8位中的高5位是符號(hào)位,表示是零下還是零上。</p><p> 高8位中
56、的低3位D6,D5,D4 和低8位中的高4位D3,D2,D1,D0構(gòu)成溫度的整數(shù)部分。低8位中的D-1,D-2,D-3,D-4位溫度的小數(shù)部分。</p><p> max232芯片,MAX232芯片是專門為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計(jì)的接口電路,使用+5v單電源供電。在制作電路前我們先來看看要用的MAX232,這里我們不去具體討論它,只要知道它是TTL和RS232電平相互轉(zhuǎn)換的芯片和基本的引腳接線功能就行了。
57、通常我會(huì)用兩個(gè)小功率晶體管加少量的電路去替換MAX232,可以省一點(diǎn),效果也不錯(cuò)。下圖就是MAX232的基本接線圖。</p><p><b> 圖為MAX232</b></p><p> 聲光報(bào)警電路,可實(shí)現(xiàn)簡易的發(fā)音功能,如圖所示,</p><p> 復(fù)位電路:復(fù)位是使CPU和系統(tǒng)中的其他功能部件都處于一個(gè)確定的初始狀態(tài),復(fù)位后計(jì)算機(jī)就
58、從這個(gè)狀態(tài)開始工作。在復(fù)位期間, CPU并沒有開始執(zhí)行程序是在做準(zhǔn)備工作。</p><p> 無論是在在計(jì)算機(jī)剛上電時(shí),斷電后,還是系統(tǒng)出現(xiàn)故障時(shí)都需要復(fù)位。</p><p> MCS-51單片機(jī)的復(fù)位靠外部電路來實(shí)現(xiàn),為了確保復(fù)位,RST引腳上的高電平一般要維持大約10秒以上。</p><p> MCS-51單片機(jī)的復(fù)位原理也可分成上電復(fù)位和按鍵手動(dòng)復(fù)位兩種
59、,如圖:A上電復(fù)位電,</p><p><b> 路 </b></p><p><b> B按鍵復(fù)位電路。</b></p><p> 上電復(fù)位電路是利用電容充電來實(shí)現(xiàn)的。在接通電源瞬間,RST端的電位與VCC相同,都是+5v。隨著著RC電路的充電RST的點(diǎn)位逐漸下降,只要保證RST位高電平的時(shí)間大于10秒就能正
60、常恢復(fù)。</p><p> 按鍵復(fù)位電路,在單片機(jī)已經(jīng)通電的情況下,只需要按下圖B所示的K鍵也可以復(fù)位,此時(shí)電源VCC 經(jīng)過電阻分壓,在RST端產(chǎn)生一個(gè)復(fù)位高電平。如RK?。保藲W姆,RS取200歐姆左右,這樣當(dāng)按下K鍵時(shí),RST端的電壓為4.2V,滿足高電平要求。</p><p> 8051單片機(jī):單片機(jī)的40個(gè)引腳大致可分為4類:電源、時(shí)鐘、控制和I/O引腳。 ⒈ 電源:</p
61、><p> ?、?VCC - 芯片電源,接+5V; </p><p> ?、?VSS - 接地端; </p><p><b> ?、?時(shí)鐘:</b></p><p> XTAL1、XTAL2 - 晶體振蕩電路反相輸入端和輸出端。 </p><p><b> ?、?控制線:</b>
62、;</p><p><b> 控制線共有4根, </b></p><p> ALE/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖</p><p> ?、?ALE功能:用來鎖存P0口送出的低8位地址</p><p> ?、?PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入 編程脈沖。
63、 </p><p> PSEN:外ROM讀選通信號(hào)。 </p><p> RST/VPD:復(fù)位/備用電源。 </p><p> ?、?RST(Reset)功能:復(fù)位信號(hào)輸入端。 </p><p> ② VPD功能:在Vcc掉電情況下,接備用電源。 </p><p> EA/Vpp:內(nèi)外ROM選擇/片內(nèi)EPROM
64、編程電源。 </p><p> ?、?EA功能:內(nèi)外ROM選擇端。 </p><p> ?、?Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。 </p><p><b> ?、?I/O線 </b></p><p> 80C51共有4個(gè)8位并行I/O端口:P0、P1、P2、P3口,共32個(gè)引
65、腳。P3口還具有第二功能,用于特殊信號(hào)輸入輸出和控制信號(hào)。</p><p> 第三章 系統(tǒng)軟件算法設(shè)計(jì)</p><p><b> 3.1 主程序</b></p><p><b> ORG 0000H</b></p><p><b> LJMP MAIN</b></
66、p><p><b> ORG 001BH</b></p><p> LJMP PINT1</p><p> MAIN: MOV P1,#0FFH</p><p> ACALL CSH ;調(diào)用初始化程序</p><p><b> MOV A,P1</b>
67、</p><p> XRL A,#03H ;判斷是否有鍵按下</p><p> JNZ MAIN ;沒有就返回</p><p> ACALL DL20MS ;調(diào)用延時(shí)20MS程序</p><p><b> MOV A,P1</b></p><p>
68、; XRL A,#03H ;再次判斷是否有鍵按下</p><p> JNZ MAIN </p><p> MOV A,P1</p><p> MOV TMOD,#20H ;T1方式2、定時(shí)模式</p><p> MOV PCON,#00H ;SMOD=0</p>
69、<p> MOV TH1,#0F4H</p><p> MOV TL1,#0F4H</p><p><b> SETB TR1</b></p><p> MOV IE,#90H ;開中斷,允許串行口中斷</p><p> MOV SCON,#50H ;串行口方式1,可
70、以接收和發(fā)送</p><p> CLR TRN_STA ;設(shè)置本機(jī)為發(fā)送命令字狀態(tài)</p><p> CLR RCV_STA ;設(shè)置本機(jī)為接收命令字狀態(tài)</p><p><b> RET</b></p><p> 3.2 鍵盤掃描子程序</p><p>
71、; NEXT1: CJNE A,#01H,NEXT2</p><p> LCALL K1 ;調(diào)用K1鍵的處理程序</p><p> CJNE A,#02H,NEXT1 </p><p> LCALL K2 ; 調(diào)用K2鍵的處理程序</p><p> NEXT2: CJNE A,#02
72、H,MAIN</p><p> ACALL K2</p><p><b> END</b></p><p> ;延時(shí)20MS的程序</p><p> DL20MS: MOV R2,#10 </p><p> DL20MS1: MOV R3,#250</p
73、><p> DL20MS2: NOP</p><p><b> NOP</b></p><p> DJNZ R3,DL20MS2</p><p> DJNZ R3,DL20MS2</p><p> RET </p><p&g
74、t;<b> ;以下初始化程序</b></p><p> CHS: MOV R2,#03H </p><p> DH: MOV P0,#3FH</p><p> MOV P2,#00H</p><p> MOV R3,#250</p><
75、p> DELAY: NOP</p><p><b> NOP</b></p><p> DJNZ R3,DELAY</p><p> MOV A,P1</p><p><b> INC A</b></p><p> DJNZ
76、R2,DH</p><p><b> RET</b></p><p> 3.3檢測溫度子程序</p><p><b> ORG 0100H</b></p><p> Check_Temperature:</p><p> data_ACQUR</p>
77、<p> ACALLreset_pulse;發(fā)送復(fù)位脈沖</p><p> MOVA,#0CCH</p><p> ACALLwrite_byte;send skip ROM command</p><p> MOVA,#44H</p><p> ACALLwrite_byte;初始化溫度模塊</p&
78、gt;<p> JNBP1.4,$;讀DS18B20狀態(tài)</p><p> ACALLreset_pulse</p><p> MOVA,#0CCH</p><p> ACALLwrite_byte</p><p> MOVA,#0BEH</p><p> ACALLwrit
79、e_byte;send scratchpad command</p><p> ACALL read_byte;read eeprom byte 0</p><p> MOVR7,A;存儲(chǔ)LSB在R7中</p><p> ACALLread_byte</p><p> MOV R6,A;存儲(chǔ)MSB在R6中</p>
80、;<p> ACALLreset_pulse</p><p><b> RET</b></p><p><b> 芯片初始化的脈沖</b></p><p> reset_pulse: </p><p> SETB P1.4</p
81、><p><b> NOP</b></p><p><b> NOP</b></p><p><b> CLR EA</b></p><p><b> CLRP1.4</b></p><p> MOVR2,#250
82、;delay500us</p><p><b> DJNZR2,$</b></p><p><b> SETBP1.4</b></p><p> MOVR2,#20;delay40us</p><p><b> DJNZR2,$</b></p&g
83、t;<p> CLR C </p><p> ORL C,P1.4</p><p> JC reset_pulse</p><p> MOV R2,#80 ;注意這兩條指令是否真的需要</p><p> DJNZ R2,$</p><p>&
84、lt;b> RET</b></p><p><b> 3.4讀數(shù)據(jù)子程序</b></p><p> READ_BYTE:</p><p><b> MOVR3,#8</b></p><p> SETB P1.4</p><p><b&g
85、t; NOP</b></p><p><b> NOP</b></p><p> READ1:CLRP1.4</p><p><b> NOP</b></p><p><b> NOP</b></p><p><b>
86、 SETBP1.4</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> MOVR5,A</b></p>&l
87、t;p> MOVC,P1.4</p><p><b> MOVA,R5</b></p><p> MOVR2,#30</p><p><b> DJNZ R2,$</b></p><p><b> RRCA</b></p><p>
88、; DJNZR3,READ1</p><p><b> RET</b></p><p><b> 3.5寫數(shù)據(jù)子程序</b></p><p> WRITE_BYTE:</p><p><b> MOVR3,#8</b></p><p>
89、WRITE:RRCA</p><p><b> JC WRITE1</b></p><p> SETB P1.4</p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> CL
90、RP1.4</b></p><p> MOVR2,#30</p><p><b> DJNZR2,$</b></p><p><b> SETBP1.4</b></p><p><b> NOP</b></p><p><
91、;b> NOP</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p> DJNZ R3,WRITE</p><p><b> RET</b></p><p> WRITE
92、1:SETB P1.4</p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> CLRP1.4</b></p><p><b> NOP</b></p><p>
93、<b> NOP</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> SETBP1.4</b></p><p> MOVR2,#30</p><p>&
94、lt;b> DJNZR2,$</b></p><p> DJNZR3,WRITE</p><p><b> RET</b></p><p> 3.6串口中斷子程序</p><p> SEND_COM:MOV A,R2</p><p> MOV SBUF,A<
95、/p><p><b> RET</b></p><p><b> SRT--INT:</b></p><p><b> POP ACC </b></p><p> JNB RI,SENT ;非接收中斷,轉(zhuǎn)去發(fā)送處理</p><p>
96、CLR RI ;清除接收標(biāo)志</p><p> JB RCV_STA,RCV_DAT ;轉(zhuǎn)去接收數(shù)據(jù)處理</p><p> MOV A,SBUF ;以下為接收命令</p><p> CJNE A,#ASK_RCV,CYM01 ;非“請(qǐng)求接收”命令</p><p> MOV R6,#LEN_R
97、CV ;是“請(qǐng)求接收”命令,準(zhǔn)備接收數(shù)據(jù)</p><p> MOV R0,#RCV_BUF ;本機(jī)接收數(shù)據(jù)區(qū)首地址</p><p> SETB RCV_STA ;置本機(jī)為接收數(shù)據(jù)狀態(tài)</p><p> MOV A,#RCV_RDY ;本機(jī)“接收準(zhǔn)備就緒”</p><p&
98、gt; MOV SBUF,A ;回送“接收準(zhǔn)備就緒”命令</p><p> AJMP RETURN</p><p> COM01:CJNE A,#ASK_TRN,COM02 ;非“請(qǐng)求發(fā)送”命令</p><p> MOV R7,#LEN_TRN ;是“請(qǐng)求發(fā)送”命令,準(zhǔn)備發(fā)送</p><p> MOV
99、 R0,#TRN_BUF ;本機(jī)發(fā)送數(shù)據(jù)區(qū)首地址</p><p> SETB TRN_STA ;置本機(jī)為發(fā)送數(shù)據(jù)狀態(tài)</p><p> MOV A,#TRN_RDY ;本機(jī)“發(fā)送準(zhǔn)備就緒”</p><p> MOV SBUF,A ;回送“發(fā)送準(zhǔn)備就緒”命令</p&g
100、t;<p> AJMP RETURN</p><p> CJNE A,#RCV_RDY,COM03 ;非“接收準(zhǔn)備就緒”命令</p><p> MOV R7,#LEN_TRN ;是對(duì)方的“接收準(zhǔn)備就緒”命令,本機(jī)發(fā)送</p><p> MOV R0,#TRN_BUF ;本機(jī)發(fā)送數(shù)據(jù)區(qū)首地址</p><p
101、> SETB TRN_STA ; 置本機(jī)為發(fā)送數(shù)據(jù)狀態(tài)</p><p> MOV A,@R0 ;請(qǐng)發(fā)送的數(shù)據(jù)</p><p> MOV SBUF,A ;發(fā)送數(shù)據(jù)</p><p> INC R0 ;修改發(fā)送單元地址</p><p> AJMP RETURN<
102、/p><p> COM03:CJNE A,#TRN_RDY,NON_COM ;非“發(fā)送準(zhǔn)備好”命令</p><p> MOV R6,#LEN_RCV ;是對(duì)方的“發(fā)送準(zhǔn)備就緒”命令,接收數(shù)據(jù)</p><p> MOV R0,#RCV_BUF </p><p> SETB RCV_STA ;置本機(jī)為接收數(shù)據(jù)狀態(tài)</p&
103、gt;<p> NON_COM:AJMP RETURN</p><p> RCV_DAT:MOV A,SBUF ;接收數(shù)據(jù)</p><p> MOV @R0,A ;存儲(chǔ)</p><p> INC R0 ;修改地址</p><p> DJNZ R6,CONT1 ;數(shù)據(jù)塊接受完否?</p&g
104、t;<p> CLR RCV_STA ;數(shù)據(jù)塊接收完畢,置本機(jī)為接受命令狀態(tài)</p><p> CONT1:AJMP RETURN </p><p> SENT:CLR TI ;清除發(fā)送標(biāo)注</p><p> JB TRN_STA,ST_DAT ;本機(jī)為發(fā)送數(shù)據(jù)狀態(tài)</p><p> AJMP RE
105、TURN ;本機(jī)不是發(fā)送數(shù)據(jù)狀態(tài)</p><p> ST_DAT:MOV A,@R0 ;取發(fā)送的數(shù)據(jù)</p><p> MOV SBUF,A ;發(fā)送</p><p> INC R0 ;修改發(fā)送單元地址</p><p> DJNZ R7 RETURN ;數(shù)據(jù)塊發(fā)送完否</p&
106、gt;<p> CLR TRN_STA ;置本機(jī)為發(fā)送命令狀態(tài)</p><p> RETURN:POP ACC </p><p><b> RETI</b></p><p><b> 3.7程序流程圖</b></p><p><b> 主程序圖</b>
107、</p><p> N </p><p><b> Y</b></p><p><b> N</b></p><p><b> Y</b></p>&
108、lt;p><b> Y</b></p><p><b> N</b></p><p><b> N</b></p><p><b> 子程序圖</b></p><p><b> Y </b></p>&
109、lt;p><b> N</b></p><p><b> 元器件清單</b></p><p> 本系統(tǒng)所用的硬件有:見表2-1。</p><p> 表2-1系統(tǒng)硬件清單</p><p><b> 課程設(shè)計(jì)心得體會(huì)</b></p><p>
110、 首先,在此衷心地感謝我們的指導(dǎo)老師及給予我們幫助的同學(xué)們,因?yàn)樵谒麄兊膸椭挛覀兊脑O(shè)計(jì)才如此完善。</p><p> 課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程.隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說得是無處不在。因此作為二十一世紀(jì)的大學(xué)來說掌握單片機(jī)的開發(fā)技術(shù)是十分
111、重要的。</p><p> 我們的課題是《基于單片機(jī)的溫度采集系統(tǒng)設(shè)計(jì)》,剛拿到題目真的是一頭霧水,硬件電路不知如何下手,更別談解決程序那塊,因?yàn)槲覀兯鶎W(xué)的都是單片機(jī)方面的理論知識(shí),應(yīng)用到實(shí)踐中去還比較少。不過,我們六人也沒偷下懶,迅速分工去查閱和收集資料。我們?nèi)チ藞D書館借一些參考書,上網(wǎng)找一些相關(guān)資料,并且請(qǐng)教指導(dǎo)老師。通過不斷努力,終于將我們所需要的各個(gè)板塊整理清楚。回顧起此次單片機(jī)課程設(shè)計(jì),至今我仍感慨頗
112、多,的確,從選題到定稿,從理論到實(shí)踐,在整整兩星期的日子里,可以說得是苦多于甜,但是可以學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí)。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,這畢竟第
113、一次做的,難免會(huì)遇到過各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,比如說,對(duì)單片機(jī)匯編語言掌握得不好……</p><p> 在完成單片機(jī)課程設(shè)計(jì)后,我們發(fā)現(xiàn)我們還有許多不足,所學(xué)到的知識(shí)還遠(yuǎn)遠(yuǎn)不夠,以至于還有一些功能不能被動(dòng)完成。但通過學(xué)習(xí)這一次實(shí)踐,增強(qiáng)了我們的動(dòng)手能力,提高和鞏固了單片機(jī)方面的知識(shí),特別是軟件方面。從中增強(qiáng)了我們的團(tuán)隊(duì)合作精神,并
114、讓我們認(rèn)識(shí)到把理論應(yīng)用到實(shí)踐中去是多么重要。</p><p> 通過這次單片機(jī)課程設(shè)計(jì),我不僅加深了對(duì)單片機(jī)理論的理解,將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且我還學(xué)會(huì)了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新可以是在原有的基礎(chǔ)上進(jìn)行改進(jìn),使之功能不斷完善,成為自己的東西。</p><p> 這次課程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多編程問題,最后在xx老師的辛勤指導(dǎo)
115、下,終于游逆而解。同時(shí),在xx老師的身上我學(xué)得到很多實(shí)用的知識(shí),在次我表示感謝!同時(shí),對(duì)給過我們幫助的所有同學(xué)再次表示忠心的感謝!</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 何立民.電子設(shè)計(jì)自動(dòng)化[J] .電子技術(shù), 2008, (56) :5-9.</p><p> [2] 李鴻.嵌入式系統(tǒng)設(shè)計(jì)[M] .深圳
116、:科技電子出版社,2008:98-1130</p><p> [3] 嚴(yán)天峰.單片機(jī)開發(fā)[M] .成都:科學(xué)出版社,2007:77-98</p><p> [4] 謝維成.單片機(jī)原理與應(yīng)用[D] .北京.清華大學(xué).2003.</p><p> [5] 錢顯毅.電子電路設(shè)計(jì)[N] .科技時(shí)報(bào).2009-3-12(C1).</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)--基于單片機(jī)的溫度數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)的多路溫度采集系統(tǒng)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--遠(yuǎn)程溫度采集系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)--基于mcs-51單片機(jī)的溫度采集系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)---基于單片機(jī)溫度測量系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報(bào)告--遠(yuǎn)程溫度采集系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)報(bào)--遠(yuǎn)程溫度采集系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)報(bào)告--遠(yuǎn)程溫度采集系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)—基于51單片機(jī)的溫度監(jiān)控系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--數(shù)字時(shí)鐘及溫度采集系統(tǒng)的設(shè)計(jì)
- 課程設(shè)計(jì)---基于51單片機(jī)的多路溫度采集控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)——基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- msp430單片機(jī)溫度單片機(jī)課程設(shè)計(jì)--溫度測試系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)---單片機(jī)數(shù)據(jù)采集系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)-- 基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)
- 課程設(shè)計(jì)---基于ds18b20的單片機(jī)溫度采集系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)---溫度測試系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)溫度采集系統(tǒng)的設(shè)計(jì)論文(
評(píng)論
0/150
提交評(píng)論