畢業(yè)論文-單片機(jī)交通控制燈的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
已閱讀1頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  畢 業(yè) 設(shè) 計(jì) 任 務(wù) 書</p><p>  專業(yè) 通信技術(shù)</p><p>  年級(jí) 20XXX班級(jí) 1</p><p>  姓名 XXX 學(xué)號(hào) </p><p><b>  畢業(yè)設(shè)計(jì)指導(dǎo)須知</b></p><

2、p>  一、畢業(yè)設(shè)計(jì)是高職教學(xué)過程中一個(gè)十分重要的環(huán)節(jié)。是鍛煉學(xué)生運(yùn)用所學(xué)知識(shí)正確分析和解決實(shí)際問題的一個(gè)重要方面,也是高職培養(yǎng)應(yīng)用型專門人才的要求。</p><p>  二、導(dǎo)教師應(yīng)為具有講師以上或相應(yīng)職稱的有關(guān)專業(yè)人員,且專業(yè)對(duì)口(指所指導(dǎo)專業(yè)應(yīng)同所聘教師專業(yè)職稱相一致)。經(jīng)系、教務(wù)處審查同意后,才能指導(dǎo)學(xué)生的畢業(yè)設(shè)計(jì)。</p><p>  三、學(xué)生應(yīng)以嚴(yán)肅認(rèn)真,實(shí)事求是的態(tài)度完

3、成設(shè)計(jì)。要獨(dú)立思考,自己動(dòng)手,不得抄襲或找人代筆。</p><p>  四、畢業(yè)設(shè)計(jì)選題要符合專業(yè)培養(yǎng)目標(biāo)的要求。論文(任務(wù)書)寫作要做到論點(diǎn)明確、論據(jù)充分,論理透徹,語言準(zhǔn)確恰當(dāng),書面整潔、字跡工整,圖紙應(yīng)清晰、工整,符合設(shè)計(jì)要求,符合國家有關(guān)標(biāo)準(zhǔn)和部頒標(biāo)準(zhǔn)。字?jǐn)?shù)、圖紙數(shù)量符合有關(guān)要求。并在規(guī)定的時(shí)間內(nèi)完成。</p><p>  五、答辯過程中學(xué)生要嚴(yán)認(rèn)真,文明禮貌,謙虛謹(jǐn)慎,認(rèn)真回答答

4、辯主持人,委員等提出的問題。</p><p>  六、填報(bào)有關(guān)表格時(shí),應(yīng)按項(xiàng)目要求逐項(xiàng)填實(shí)、填全、填清。</p><p>  答 辯 情 況 記 錄</p><p><b>  交通控制燈</b></p><p><b>  摘 要</b></p><p>  紅綠燈安裝

5、在各個(gè)道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段。但這一技術(shù)在19世紀(jì)就已出現(xiàn)了。</p><p>  1858年,在英國倫敦主要街頭安裝了以燃煤氣為光源的紅,藍(lán)兩色的機(jī)械扳手式信號(hào)燈,用以指揮馬車通行。這是世界上最早的交通信號(hào)燈。1868年,英國機(jī)械工程師納伊特在倫敦威斯敏斯特區(qū)的議會(huì)大廈前的廣場(chǎng)上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩以旋轉(zhuǎn)式方形玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。18

6、69年1月2日,煤氣燈爆炸,使警察受傷,遂被取消。</p><p>  電氣啟動(dòng)的紅綠燈出現(xiàn)在美國,這種紅綠燈由紅綠黃三色圓形的投光器組成,1914年始安裝于紐約市5號(hào)大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。</p><p>  1918年,又出現(xiàn)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅綠燈,一種是把壓力探測(cè)器安在地下,車輛一接近紅燈便變?yōu)榫G燈;另一種是用擴(kuò)音器來啟動(dòng)紅

7、綠燈,司機(jī)遇紅燈時(shí)按一下嗽叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當(dāng)行人踏上對(duì)壓力敏感的路面時(shí),它就能察覺到有人要過馬路。紅外光束能把信號(hào)燈的紅燈延長一段時(shí)間,推遲汽車放行,以免發(fā)生交通事故。</p><p>  信號(hào)燈的出現(xiàn),使交通得以有效管制,對(duì)于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。1968年,聯(lián)合國《道路交通和道路標(biāo)志信號(hào)協(xié)定》對(duì)各種信號(hào)燈的含義作了規(guī)定。綠燈是通行信號(hào),面對(duì)綠燈的車輛可以直行

8、,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu)先通行。紅燈是禁行信號(hào),面對(duì)紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告信號(hào),面對(duì)黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時(shí)可以進(jìn)入交叉路口</p><p>  8051單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷

9、系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說明:</p><p><b>  ·中央處理器:</b></p><p>  中央處理器(CPU)是整個(gè)單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。</p>&l

10、t;p>  ·數(shù)據(jù)存儲(chǔ)器(RAM)</p><p>  8051內(nèi)部有128個(gè)8位用戶數(shù)據(jù)存儲(chǔ)單元和128個(gè)專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個(gè),可存放讀寫的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表。</p><p><b>  圖2-1</b>

11、</p><p>  ·程序存儲(chǔ)器(ROM):</p><p>  8051共有4096個(gè)8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格。</p><p>  ·定時(shí)/計(jì)數(shù)器(ROM):</p><p>  8051有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。</p><

12、;p>  ·并行輸入輸出(I/O)口:</p><p>  8051共有4組8位I/O口(P0、 P1、P2或P3),用于對(duì)外部數(shù)據(jù)的傳輸。</p><p><b>  ·全雙工串行口:</b></p><p>  8051內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可

13、以當(dāng)同步移位器使用。</p><p><b>  ·中斷系統(tǒng):</b></p><p>  8051具備較完善的中斷功能,有兩個(gè)外中斷、兩個(gè)定時(shí)/計(jì)數(shù)器中斷和一個(gè)串行中斷,可滿足不同的控制要求,并具有2級(jí)的優(yōu)先級(jí)別選擇</p><p><b>  ·時(shí)鐘電路:</b></p><p&

14、gt;  8051內(nèi)置最高頻率達(dá)12MHz的時(shí)鐘電路,用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序,但8051單片機(jī)需外置振蕩電容。</p><p>  單片機(jī)的結(jié)構(gòu)有兩種類型,一種是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計(jì)算機(jī)廣泛使用的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。INTEL的MCS-51系列單片機(jī)采用的是哈佛結(jié)構(gòu)的形式,而后續(xù)產(chǎn)品16

15、位的MCS-96系列單片機(jī)則采用普林斯頓結(jié)構(gòu)。</p><p>  下圖是MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu)示意圖。</p><p><b>  圖2-2</b></p><p>  MCS-51的引腳說明:</p><p>  MCS-51系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu)

16、,右圖是它們的引腳配置,40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用?,F(xiàn)在我們對(duì)這些引腳的功能加以說明:</p><p>  MCS-51的引腳說明:</p><p>  MCS-51系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配置,40個(gè)引腳中,正電源和地線兩根,外置石

17、英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用?,F(xiàn)在我們對(duì)這些引腳的功能加以說明:如圖3</p><p>  圖2-3 </p><p>  Pin9:RESET/Vpd復(fù)位信號(hào)復(fù)用腳,當(dāng)8051通電,時(shí)鐘電路開始工作,在RESET引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。初始化后,程序計(jì)數(shù)器PC指向0000H,P0-P3輸出口全部為

18、高電平,堆棧指針寫入07H,其它專用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。然而,初始復(fù)位不改變RAM(包括工作寄存器R0-R7)的狀態(tài),8051的初始態(tài)。</p><p>  8051的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,見下圖4。此外,RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟失。</p>

19、;<p><b>  圖4</b></p><p>  ·Pin30:ALE/當(dāng)訪問外部程序器時(shí),ALE(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪問內(nèi)部程序存儲(chǔ)器時(shí),ALE端將有一個(gè)1/6時(shí)鐘頻率的正脈沖信號(hào),這個(gè)信號(hào)可以用于識(shí)別單片機(jī)是否工作,也可以當(dāng)作一個(gè)時(shí)鐘向外輸出。更有一個(gè)特點(diǎn),當(dāng)訪問外部程序存儲(chǔ)器,ALE會(huì)跳過一個(gè)脈沖。</p><p

20、>  如果單片機(jī)是EPROM,在編程其間,將用于輸入編程脈沖。</p><p>  ·Pin29:當(dāng)訪問外部程序存儲(chǔ)器時(shí),此腳輸出負(fù)脈沖選通信號(hào),PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2口上,外部程序存儲(chǔ)器則把指令數(shù)據(jù)放到P0口上,由CPU讀入并執(zhí)行。</p><p>  ·Pin31:EA/Vpp程序存儲(chǔ)器的內(nèi)外部選通線,8051和8751單片機(jī),內(nèi)置有4kB的程

21、序存儲(chǔ)器,當(dāng)EA為高電平并且程序地址小于4kB時(shí),讀取內(nèi)部程序存儲(chǔ)器指令數(shù)據(jù),而超過4kB地址則讀取外部指令數(shù)據(jù)。如EA為低電平,則不管地址大小,一律讀取外部程序存儲(chǔ)器指令。顯然,對(duì)內(nèi)部無程序存儲(chǔ)器的8031,EA端必須接地。</p><p>  在編程時(shí),EA/Vpp腳還需加上21V的編程電壓。</p><p><b>  目 錄</b></p>

22、;<p>  摘要…………………………………………………………………………………………… 第一章 交通信號(hào)燈硬件電路的設(shè)計(jì)</p><p>  1.1 交通信號(hào)燈的作用及工作原理…………………………………………………………1</p><p>  第二章 系統(tǒng)組成</p><p>  2.1 硬件控制線路圖…………………………………………

23、………………………………3</p><p>  2.2器件和原理……………………………………………………………………………… 3</p><p>  2.2.1什么是單片機(jī)…………………………………………………………………………… 4</p><p>  2.2.2 什么是單片機(jī)系統(tǒng)……………………………………………………………………… 5</p>&

24、lt;p>  2.3 部分電路功能………………………………………………………………………… 6</p><p>  2.3.1 晶振電路……………………………………………………………………………… 6</p><p>  2.3.2 復(fù)位電路……………………………………………………………………………… 6</p><p>  2.3.3 信號(hào)燈控制電路…

25、…………………………………………………………………… 6 </p><p>  2.4 設(shè)計(jì)流程圖 …………………………………………………………………… 6 </p><p>  第三章 交通信號(hào)燈軟件的系統(tǒng)編程&

26、lt;/p><p>  3.1 信號(hào)燈亮滅的定時(shí)功能…………………………………………………………………8</p><p>  3.1.1 單片機(jī)的定時(shí)器……………………………………………………………………… 8</p><p>  3.1.2 如何使用MCS_51單片機(jī)的定時(shí)器呢?………………………………………………… 8</p><p>  3

27、.1.3 定時(shí)器數(shù)值的設(shè)置應(yīng)該注意的事項(xiàng)…………………………………………………… 8</p><p>  3.1.4 定時(shí)1ms的程序代碼………………………………………………………………… 9</p><p>  3.2 51單片機(jī)的中斷系統(tǒng)………………………………………………………………… 9</p><p>  3.2.1 中斷系統(tǒng)的概念……………………………

28、………………………………………… 9</p><p>  3.2.2 單片機(jī)的終端系統(tǒng)的作用………………………………………………………… 9</p><p>  3.2.3 如何實(shí)現(xiàn)單片機(jī)的中斷 ……………………………………………………………9</p><p>  3.3軟件流程圖………………………………………………………………………… 10</

29、p><p>  第四章 系統(tǒng)仿真</p><p>  4.1 PRETUES軟件的介紹……………………………………………………………… 14</p><p>  第五章 調(diào)試及檢測(cè) </p><p>  5 .1硬件調(diào)試………………………………………………………………………………21</p><p> 

30、 5 .1.1最小系統(tǒng)的調(diào)試……………………………………………………………… 21</p><p>  5 .1.2 故障點(diǎn)的分析………………………………………………………………… 21</p><p>  5.2軟件調(diào)試及問題解決…………………………………………………………………22 </p><p><b>  第六章 結(jié)束語</b>&l

31、t;/p><p>  6.1文總結(jié) ……………………………………………………………………………… 23</p><p>  6.2工作展望 ………………………………………………………………………………23</p><p>  參考文獻(xiàn) ………………………………………………………………………24</p><p>  致謝…………………………………

32、…………………………………………………………26</p><p>  第一章 交通信號(hào)燈硬件電路的設(shè)計(jì)</p><p>  1.1交通信號(hào)燈的作用及工作原理</p><p>  1.1.1道路交通控制的作用主要表現(xiàn)為以下幾個(gè)方面:   </p><p>  改善交通秩序,增加交通安全。 </p><p>  減少交通

33、延誤,提高經(jīng)濟(jì)效益。   </p><p>  降低污染程度,保護(hù)生態(tài)環(huán)境。</p><p>  節(jié)省能源和土地消耗。</p><p>  交通信號(hào)燈由紅燈、綠燈、黃燈組成。紅燈表示禁止通行,綠燈表示準(zhǔn)許通行,黃燈表示警示。交通信號(hào)燈分為機(jī)動(dòng)車信號(hào)燈、非機(jī)動(dòng)車信號(hào)燈、人行橫道信號(hào)燈、車道信號(hào)燈、方向指示信號(hào)燈、閃光警告信號(hào)燈、道路與鐵路平面交叉道口信號(hào)燈。交通信號(hào)燈

34、用于道路平面交叉路口,通過對(duì)車輛、行人發(fā)出行進(jìn)或停止的指令,使各同時(shí)到達(dá)的人、車交通流盡可能減少相互干擾,從而提高路口的通行能力,保障路口暢通和安全。</p><p> ?。?)機(jī)動(dòng)車信號(hào)燈。由綠黃紅三種顏色的燈組成,綠燈亮?xí)r,準(zhǔn)許車輛通行,但轉(zhuǎn)彎車輛不得妨礙被放行的直行車輛、行人通行;黃燈亮?xí)r,已越過停止線的車輛可繼續(xù)通行;紅燈亮?xí)r,禁止車輛通行。</p><p> ?。?)車道信號(hào)燈。

35、車道信號(hào)燈由綠色箭頭燈和紅色叉形燈或紅色箭頭燈組成,綠色箭頭燈亮?xí)r,準(zhǔn)許本車道車輛按指示方向通行;紅色叉形燈或紅色箭頭燈亮?xí)r,禁止本車道車輛通行。</p><p>  (3)人行橫道信號(hào)燈。人行橫道信號(hào)燈由綠燈和紅燈組成,綠燈亮?xí)r,準(zhǔn)許行人通過人行橫道;紅燈亮?xí)r,禁止行人進(jìn)入人行橫道,但是已經(jīng)進(jìn)入人行橫道的,可以繼續(xù)通過或者在道路中心線處停留等候第一章 交通信號(hào)燈硬件電路的設(shè)計(jì)</p><p

36、>  1.1.2 道路交通信號(hào)燈的工作原理如下:</p><p>  設(shè)計(jì)一個(gè)十字路口交通燈自動(dòng)控制電路。</p><p><b>  設(shè):</b></p><p>  a--------南北方向綠燈接通; </p><p>  b--------東西方向綠燈接通; </p><p>  

37、c--------南北方向紅燈接通; </p><p>  d--------東西方向紅燈接通;</p><p>  e--------南北方向黃燈接通;</p><p>  f--------東西方向黃燈接通。 </p><p>  工作順序?yàn)锳→B→C→D→A, 要求各狀態(tài)的工作時(shí)間如下圖所示。 </p><p>

38、  綠燈-(25s)-黃燈--(5s)-紅燈--(30s)--綠燈--(循環(huán))</p><p>  第二章 系統(tǒng)組成</p><p>  2.1 硬件控制線路圖</p><p>  2.2 器件和原理</p><p>  2.2.1什么是單片機(jī)</p><p>  單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng)。

39、盡管他的大部分功能集成在一塊小芯片上,但是它具有一個(gè)完整計(jì)算機(jī)所需要的大部分部件:CPU、內(nèi)存、內(nèi)部和外部總線系統(tǒng),目前大部分還會(huì)具有外存。同時(shí)集成諸如通訊接口、定時(shí)器,實(shí)時(shí)時(shí)鐘等外圍設(shè)備。而現(xiàn)在最強(qiáng)大的單片機(jī)系統(tǒng)甚至可以將聲音、圖像、網(wǎng)絡(luò)、復(fù)雜的輸入輸出系統(tǒng)集成在一塊芯片上。</p><p>  單片機(jī)也被稱為微控制器(Microcontroler),是因?yàn)樗钤绫挥迷诠I(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專

40、用處理器發(fā)展而來。最早的設(shè)計(jì)理念是通過將大量外圍設(shè)備和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對(duì)提及要求嚴(yán)格的控制設(shè)備當(dāng)中。INTEL的Z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的發(fā)展便分道揚(yáng)鑣。</p><p>  早期的單片機(jī)都是8位或4位的。其中最成功的是INTEL的8031,因?yàn)楹唵慰煽慷阅懿诲e(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)

41、系統(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位單片機(jī)的高端地位,并且進(jìn)入主流市場(chǎng)。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機(jī)主頻已經(jīng)超

42、過300MHz,性能直追90年代中期的專用處理器,而普通的型號(hào)出廠價(jià)格跌落至1美元,最高端的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的Windows和Linux操作系統(tǒng)。</p><p>  單片機(jī)比專用處理器最適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的應(yīng)用。事實(shí)上單片機(jī)是

43、世界上數(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)單片機(jī)在同時(shí)工作!單片機(jī)的數(shù)量不僅遠(yuǎn)超過PC機(jī)和其他計(jì)算的綜合,甚至比人類的數(shù)量還要多。</p><p>  2.2.2 什么是單片

44、機(jī)系統(tǒng)</p><p>  單片機(jī)最小系統(tǒng),或者稱為最小應(yīng)用系統(tǒng),是指用最少的元件組成的單片機(jī)可以工作的系統(tǒng).</p><p>  對(duì)51系列單片機(jī)來說,最小系統(tǒng)一般應(yīng)該包括:單片機(jī)、晶振電路、復(fù)位電路.</p><p>  下面給出一個(gè)51單片機(jī)的最小系統(tǒng)電路圖.</p><p><b>  圖3-1</b></

45、p><p>  復(fù)位電路:由電容串聯(lián)電阻構(gòu)成,由圖并結(jié)合"電容電壓不能突變"的性質(zhì),可以知道,當(dāng)系統(tǒng)一上電,RST腳將會(huì)出現(xiàn)高電平,并且,這個(gè)高電平持續(xù)的時(shí)間由電路的RC值來決定.典型的51單片機(jī)當(dāng)RST腳的高電平持續(xù)兩個(gè)機(jī)器周期以上就將復(fù)位,所以,適當(dāng)組合RC的取值就可以保證可靠的復(fù)位.一般教科書推薦C 取10u,R取8.2K.當(dāng)然也有其他取法的,原則就是要讓RC組合可以在RST腳上產(chǎn)

46、生不少于2個(gè)機(jī)周期的高電平.至于如何具體定量計(jì)算,可以參考電路分析相關(guān)書籍.</p><p>  晶振電路:典型的晶振取11.0592MHz(因?yàn)榭梢詼?zhǔn)確地得到9600波特率和19200波特率,用于有串口通訊的場(chǎng)合)/12MHz(產(chǎn)生精確的uS級(jí)時(shí)歇,方便定時(shí)操作)</p><p>  2.3 部分電路功能</p><p>  2.3.1 晶振電路</p&g

47、t;<p>  2.3.2 復(fù)位電路</p><p>  2.3.3 信號(hào)燈控制電路,LED及顯示接口</p><p><b>  1</b></p><p>  發(fā)光二極管簡稱LED,采用砷化鎵、鎵鋁砷、和磷化鎵等材料制成,其內(nèi)部結(jié)構(gòu)為一個(gè)PN結(jié),具有單向?qū)щ娦?</p><p>  當(dāng)在發(fā)光二極管PN結(jié)

48、上加正向電壓時(shí),PN結(jié)勢(shì)壘降低,載流子的擴(kuò)散運(yùn)動(dòng)大于漂移運(yùn)動(dòng),致使P區(qū)的空穴注入到N區(qū),N區(qū)的電子注入到P區(qū),這樣相互注入的空穴與電子相遇后會(huì)產(chǎn)生復(fù)合,復(fù)合時(shí)產(chǎn)生的能量大部分以光的形式出現(xiàn),因此而發(fā)光。 當(dāng)所有二極管都發(fā)出光時(shí),大多數(shù)都不是很有效的。在普通二極管里,半導(dǎo)體材料本身吸引大量的光能而結(jié)束。發(fā)光二極管是由一個(gè)塑性燈泡覆蓋集中燈光在一個(gè)特定方向。由于不同材料的禁帶寬度不同,所以由不同材料制成的發(fā)光二極管可發(fā)出不同波長的光。另

49、外,有些材料由于組分和摻雜不同,例如,有的具有很復(fù)雜的能帶結(jié)構(gòu),相應(yīng)的還有間接躍遷輻射等,因此有各種各樣的發(fā)光二極管。</p><p>  發(fā)光二極管在制作時(shí),使用的材料有所不同,那么就可以發(fā)出不同顏色的光。 </p><p>  發(fā)光二極管的發(fā)光顏色有:紅色光、黃色光、綠色光、紅外光等。 </p><p>  發(fā)光二極管的外形有:圓形、長方形、三角形、正方形、組合

50、形、特殊形等。 </p><p>  常用的發(fā)光二極管應(yīng)用電路有四種,即直流驅(qū)動(dòng)電路、交流驅(qū)動(dòng)電路、脈沖驅(qū)動(dòng)電路、變色發(fā)光驅(qū)動(dòng)電路。 </p><p>  使用LED作指示電路時(shí),應(yīng)該串接限流電阻,該電阻的阻值大小應(yīng)根據(jù)不同的使用電壓和LED所需工作電流來選擇。發(fā)光二極管的壓降一LED的光學(xué)參數(shù)與pn結(jié)結(jié)溫有很大的關(guān)系。一般工作在小電流IF<10mA,或者10~20 mA長時(shí)間連續(xù)點(diǎn)亮LE

51、D溫升不明顯。</p><p>  因此我們選的二極管顏色為紅色,黃色。</p><p>  綠燈是通行信號(hào),面對(duì)綠燈的車輛可以直行紅燈是禁行信號(hào),面對(duì)紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告,信號(hào),面對(duì)黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時(shí)可以進(jìn)入交叉路口。</p><p><b>  2.4 設(shè)計(jì)流程圖</b&

52、gt;</p><p><b>  圖2.4.1</b></p><p>  第三章 交通信號(hào)燈軟件的系統(tǒng)編程</p><p>  3.1 信號(hào)燈亮滅的定時(shí)功能</p><p>  3.1.1 單片機(jī)的定時(shí)器</p><p>  在單片機(jī)應(yīng)用系統(tǒng)中,實(shí)現(xiàn)定時(shí)的方法一般有以下三種:</p>

53、;<p>  1:軟件定時(shí):讓計(jì)算機(jī)執(zhí)行一段程序來進(jìn)行事件延時(shí)。這個(gè)程序段本身份沒有安排其他的執(zhí)行目的,只是利用該程序段的執(zhí)行花費(fèi)的一個(gè)固定時(shí)間。通過適當(dāng)?shù)倪x擇指令和安排循環(huán)次數(shù),可調(diào)節(jié)這段程序執(zhí)行所需花費(fèi)的時(shí)間的長短。其特點(diǎn)是定時(shí)時(shí)間精確,不需外加硬件電路,但占用CPU時(shí)間。因此軟件定時(shí)的時(shí)間不宜過長。</p><p>  2:硬件定時(shí):利用硬件電路實(shí)現(xiàn)定時(shí)。其特點(diǎn)是不占用CPU時(shí)間,通過改變電路

54、元器件參數(shù)調(diào)來節(jié)定時(shí),但使用不夠靈活方便。對(duì)于時(shí)間較長的定時(shí),常用硬件電路來實(shí)現(xiàn)。</p><p> ?。常嚎删幊潭〞r(shí)器:通過專用的定時(shí)計(jì)數(shù)器芯片來實(shí)現(xiàn)。其特點(diǎn)是通過對(duì)系統(tǒng)時(shí)鐘脈沖進(jìn)行計(jì)數(shù)實(shí)現(xiàn)定時(shí),定時(shí)的時(shí)間可通過程序的設(shè)定的方法改變,使用靈活方便。也可實(shí)現(xiàn)對(duì)外部脈沖的計(jì)數(shù)功能。單片機(jī)交通控制器的設(shè)計(jì)</p><p>  當(dāng)定時(shí)計(jì)數(shù)器設(shè)置為計(jì)數(shù)工作方式時(shí),技術(shù)器對(duì)來自輸入引腳T0和T1的外

55、部信號(hào)計(jì)數(shù),</p><p>  外部信號(hào)的下降沿將觸發(fā)計(jì)數(shù)。最高檢測(cè)頻率為振蕩頻率的二十四分之一。計(jì)數(shù)器對(duì)外部輸入信號(hào)的占空比沒有特別的限制,但必須保證輸入信號(hào)的高電平與低電平的持續(xù)時(shí)間在一個(gè)機(jī)器周期以上。</p><p>  當(dāng)設(shè)置了定時(shí)器的工作方式并啟動(dòng)定時(shí)器工作后,定時(shí)器就安倍設(shè)定的工作方式獨(dú)立工作,不在占用CPU的操作時(shí)間,只有在計(jì)數(shù)器計(jì)滿溢出時(shí)才能中斷CPU當(dāng)前的操作。<

56、/p><p>  3.1.2 定時(shí)器數(shù)值的設(shè)置應(yīng)該注意的事項(xiàng)</p><p>  延時(shí)方法可以有兩種一中是利用MCS-51內(nèi)部定時(shí)器才生溢出中斷來確定1秒的時(shí)間,另一種是采用軟延時(shí)的方法。</p><p>  定時(shí)器工作時(shí)必須給計(jì)數(shù)器送計(jì)數(shù)器初值,這個(gè)值是送到TH和TL中的。他是以加法記數(shù)的,并能從全1到全0時(shí)自動(dòng)產(chǎn)生溢出中斷請(qǐng)求。因此,我們可以把計(jì)數(shù)器記滿為零所需的計(jì)

57、數(shù)值設(shè)定為C和計(jì)數(shù)初值設(shè)定為TC 可得到如下計(jì)算通式:</p><p><b>  TC=M-C</b></p><p>  式中,M為計(jì)數(shù)器摸值,該值和計(jì)數(shù)器工作方式有關(guān)。在方式0時(shí)M為8196 ;在方式1時(shí)M的值為65536;在方式2和3為256。</p><p>  T=(M-TC)T計(jì)數(shù)</p><p>  或T

58、C=M-T/T計(jì)數(shù)</p><p>  T計(jì)數(shù)是單片機(jī)時(shí)鐘周期TCLK的12倍;TC為定時(shí)初值</p><p>  如單片機(jī)的主脈沖頻率為TCLK12MHZ ,經(jīng)過12分頻</p><p>  方式0   ?。裕停粒兀?13?。蔽⒚耄剑福保梗埠撩?lt;/p><p>  方式1   ?。裕停粒兀?16 *1微秒=65.536毫秒</p&

59、gt;<p>  我們?cè)谶@里采用的是方式1,則初始值TC=65536-50000</p><p>  THO=(65536-50000)%256 TL0=(65536-50000)/256</p><p>  顯然1秒鐘已經(jīng)超過了計(jì)數(shù)器的最大定時(shí)間,所以我們只有采用定時(shí)器和軟件相結(jié)合的辦法才能解決這個(gè)問題.</p><p>  我們采用在主程序

60、中設(shè)定一個(gè)初值為0的軟件計(jì)數(shù)器和使T0定時(shí)50毫秒.這樣每當(dāng)T0到50毫秒時(shí)CPU就響應(yīng)它的溢出中斷請(qǐng)求,進(jìn)入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU先使軟件計(jì)數(shù)器加1,然后判斷它是否為20。為20表示1秒已到可以返回到輸出時(shí)間顯示程序</p><p>  3.1.3 定時(shí)1ms的程序代碼</p><p>  void delay(unsigned int z)</p>

61、<p>  {unsigned int x,y;</p><p>  for(x=z;x>0;x--)</p><p>  for(y=110;y>0;y--);</p><p><b>  }</b></p><p>  3.2 51單片機(jī)的中斷系統(tǒng) </p><p>

62、  3.2.1 中斷系統(tǒng)的概念</p><p>  計(jì)算機(jī)在執(zhí)行正常程序時(shí),如果系統(tǒng)出現(xiàn)某些急需處理的異常情況和特殊請(qǐng)求,CPU會(huì)暫時(shí)中止正在執(zhí)行的指令,轉(zhuǎn)去對(duì)隨機(jī)發(fā)生的更緊迫事件進(jìn)行處理;處理完后,CPU會(huì)自動(dòng)返回原來的程序繼續(xù)執(zhí)行。</p><p>  3.2.2 單片機(jī)的中斷系統(tǒng)的作用</p><p>  CPU響應(yīng)中斷申請(qǐng)時(shí),首先使先級(jí)有效位置位,以阻止同級(jí)

63、或低級(jí)的終端申請(qǐng);然后把程序計(jì)數(shù)器PC的內(nèi)容壓入堆餞,再把與中斷服務(wù)程序入口地址送到程序計(jì)數(shù)器PC;同時(shí)清除某些中斷標(biāo)志。以上過程均由端系統(tǒng)自動(dòng)完成。</p><p>  3.2.3 如何實(shí)現(xiàn)單片機(jī)的中斷</p><p>  8052具備較完善的中斷功能,有兩個(gè)外中斷、兩個(gè)定時(shí)/計(jì)數(shù)器中斷和一個(gè)串行中斷,可滿足不同的控制要求,并具有2級(jí)的優(yōu)先級(jí)別選擇。</p><p&

64、gt;<b>  中斷源</b></p><p>  MCS-51單片機(jī)的中斷源共有5個(gè),分為3類:外部中斷源,片內(nèi)溢出中斷源,串行口中斷源。外部中斷源可以分為由片內(nèi)P3.2引腳輸入的INT0中斷,以及由P3.3引腳輸入的INT1中斷。片內(nèi)溢出中斷分為定時(shí)器T0中斷和定時(shí)器T1中斷。串行口中斷只有一個(gè),片內(nèi)串行數(shù)據(jù)的接收和發(fā)送中斷。這5個(gè)中斷源在程序存儲(chǔ)器中各有中斷服務(wù)程序的入口地址,這個(gè)地

65、址也稱為矢量地址。在CPU響應(yīng)中斷時(shí),硬件自動(dòng)形成各自的入口地址,由此進(jìn)入中斷服務(wù)程序,從而實(shí)現(xiàn)了正確的轉(zhuǎn)移。這些中斷源的符號(hào),名稱,產(chǎn)生的條件和中斷服務(wù)入口地址如圖所</p><p>  3.3軟件流程圖#include<reg52.h></p><p>  unsigned int i=0,num=0,time=60;</p><p>  unsig

66、ned char ge,shi;</p><p>  unsigned int code table[10]={0x3f,0xXXX,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};</p><p>  void delay(unsigned int);</p><p>  void display();</p>&l

67、t;p><b>  main()</b></p><p>  {TMOD=0X01;</p><p>  TH0=(65536-50000)/256;</p><p>  TL0=(65536-50000)%256;</p><p><b>  EA=1;</b></p><

68、;p><b>  ET0=1;</b></p><p><b>  TR0=1;</b></p><p><b>  EX0=1;</b></p><p><b>  IT0=1;</b></p><p><b>  while(1)<

69、;/b></p><p>  {while(time!=5)</p><p>  { P1=0XF3;</p><p>  if(num==20)</p><p><b>  {time--;</b></p><p><b>  num=0;</b></p>

70、<p><b>  }</b></p><p>  display();</p><p><b>  }</b></p><p>  while(time!=2)</p><p>  {if(num==10)</p><p><b>  P1=0XF7

71、;</b></p><p>  if(num==20)</p><p><b>  {P1=0XF3;</b></p><p><b>  num=0;</b></p><p><b>  time--;</b></p><p><b&

72、gt;  }</b></p><p>  display();</p><p><b>  }</b></p><p>  while(time!=0)</p><p>  { P1=0XF5;</p><p>  if(num==20)</p><p><

73、;b>  {num=0;</b></p><p><b>  time--;</b></p><p><b>  }</b></p><p>  display();</p><p><b>  }</b></p><p><b&

74、gt;  time=30;</b></p><p>  while(time!=5)</p><p><b>  {P1=0XDE;</b></p><p>  if(num==20)</p><p><b>  {num=0;</b></p><p><b

75、>  time--;</b></p><p><b>  }</b></p><p>  display();</p><p><b>  }</b></p><p>  while(time!=2)</p><p>  {if(num==10)</p

76、><p><b>  P1=0XFE;</b></p><p>  if(num==20)</p><p><b>  {P1=0XDE;</b></p><p><b>  num=0;</b></p><p><b>  time--;<

77、/b></p><p><b>  }</b></p><p>  display();</p><p><b>  }</b></p><p>  while(time!=0)</p><p><b>  {P1=0XEE;</b></p&

78、gt;<p>  if(num==20)</p><p><b>  {num=0;</b></p><p><b>  time--;</b></p><p><b>  }</b></p><p>  display();</p><p&g

79、t;<b>  }</b></p><p><b>  time=60;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void display()</p><p>  

80、{ shi=time/10;</p><p>  ge=time%10;</p><p><b>  P2=0XFE;</b></p><p>  P0=table[ge];</p><p><b>  delay(5);</b></p><p><b>  P2=

81、0XFD;</b></p><p>  P0=table[shi];</p><p><b>  delay(5);</b></p><p><b>  P2=0XFB;</b></p><p>  P0=table[ge];</p><p><b> 

82、 delay(5);</b></p><p><b>  P2=0XF7;</b></p><p>  P0=table[shi];</p><p><b>  delay(5);</b></p><p><b>  }</b></p><p&g

83、t;  void delay(unsigned int z)</p><p>  {unsigned int x,y;</p><p>  for(x=z;x>0;x--)</p><p>  for(y=110;y>0;y--);</p><p><b>  }</b></p><p&g

84、t;  void exter0() interrupt 0</p><p><b>  { num=0;</b></p><p>  time=20;/*數(shù)碼管計(jì)時(shí)顯示*/</p><p><b>  P1=0XF6;</b></p><p>  While(time!=0)</p>

85、<p><b>  {</b></p><p>  If(num=20)</p><p><b>  {num=0;</b></p><p><b>  time--}</b></p><p>  disply();}}</p><p>  v

86、oid time0() interrupt 1</p><p><b>  {num++;</b></p><p>  TH0=(65536-50000)/256;</p><p>  TL0=(65536-50000)%256;</p><p><b>  }</b></p><

87、;p>  第四章 系統(tǒng)仿真 </p><p>  4.1 proteus軟件介紹</p><p>  Proteus軟件是Labcenter Electronics公司的一款電路設(shè)計(jì)與仿真軟件,它包括ISIS、ARES等軟件模塊,ARES模塊主要用來完成PCB的設(shè)計(jì),而ISIS模塊用來完成電路原理圖的布圖與仿真。Proteus的軟件仿真基于VSM

88、技術(shù),它與其他軟件最大的不同也是最大的優(yōu)勢(shì)就在于它能仿真大量的單片機(jī)芯片,比如MCS-51系列、PIC系列等等,以及單片機(jī)外圍電路,比如鍵盤、LED、LCD等等。通過Proteus軟件的使用我們能夠輕易地獲得一個(gè)功能齊全、實(shí)用方便的單片機(jī)實(shí)驗(yàn)室。</p><p>  本文中由于我們主要使用Proteus軟件在單片機(jī)方面的仿真功能,所以我們重點(diǎn)研究ISIS模塊的用法,在下面的內(nèi)容中,如不特別說明,我們所說的Prot

89、eus軟件特指其ISIS模塊。</p><p>  在進(jìn)行下面的操作前,我先說明一點(diǎn):我的Proteus版本是7.1,如果你使用的是6.9以前的版本,可能你發(fā)現(xiàn)在鼠標(biāo)操作上會(huì)略有不同。這主要表現(xiàn)在6.9以前的版本鼠標(biāo)左右鍵的作用與一般軟件剛好相反,而7.0以后已經(jīng)完全改過。</p><p>  下面我們首先來熟悉一下Proteus的界面。Proteus是一個(gè)標(biāo)準(zhǔn)的Windows窗口程序,和

90、大多數(shù)程序一樣,沒有太大區(qū)別,其啟動(dòng)界面如下圖所示:</p><p><b>  圖</b></p><p><b>  4-1</b></p><p>  如圖中所示,區(qū)域①為菜單及工具欄,區(qū)域②為預(yù)覽區(qū),區(qū)域③為元器件瀏覽區(qū),區(qū)域④為編輯窗口,區(qū)域⑤為對(duì)象拾取區(qū),區(qū)域⑥為元器件調(diào)整工具欄,區(qū)域⑦為運(yùn)行工具條。</

91、p><p>  下面我們就以建立一個(gè)和我們?cè)贙eil簡介中所講的工程項(xiàng)目相配套的Proteus工程為例來詳細(xì)講述Proteus的操作方法以及注意事項(xiàng)。</p><p>  首先點(diǎn)擊啟動(dòng)界面區(qū)域③中的“P”按鈕(Pick Devices,拾取元器件)來打開“Pick Devices”(拾取元器件)對(duì)話框從元件庫中拾取所需的元器件。對(duì)話框如下圖所示:</p><p><

92、;b>  圖4-2</b></p><p>  在對(duì)話框中的“Keywords”里面輸入我們要檢索的元器件的關(guān)鍵詞,比如我們要選擇項(xiàng)目中使用的AT89C51,就可以直接輸入。輸入以后我們能夠在中間的“Results”結(jié)果欄里面看到我們搜索的元器件的結(jié)果。在對(duì)話框的右側(cè),我們還能夠看到我們選擇的元器件的仿真模型、引腳以及PCB參數(shù)。</p><p>  這里有一點(diǎn)需要注意,

93、可能有時(shí)候我們選擇的元器件并沒有仿真模型,對(duì)話框?qū)⒃诜抡婺P秃鸵_一欄中顯示“No Simulator Model”(無仿真模型)。那么我們就不能夠用該元器件進(jìn)行仿真了,或者我們只能做它的PCB板,或者我們選擇其他的與其功能類似而且具有仿真模型的元器件。</p><p>  搜索到所需的元器件以后,我們可以雙擊元器件名來將相應(yīng)的元器件加入到我們的文檔中,那么接著我們還可以用相同的方法來搜索并加入其他的元器件。當(dāng)我

94、們已經(jīng)將所需的元器件全部加入到文檔中時(shí),我們可以點(diǎn)擊“OK”按鈕來完成元器件的添加。</p><p>  添加好元器件以后,下面我們所需要做的就是將元器件按照我們的需要連接成電路。首先在元器件瀏覽區(qū)中點(diǎn)擊我們需要添加到文檔中的元器件,這時(shí)我們就可以在瀏覽區(qū)看到我們所選擇的元器件的形狀與方向,如果其方向不符合你的要求,你可以通過點(diǎn)擊元器件調(diào)整工具欄中的工具來任意進(jìn)行調(diào)整,調(diào)整完成之后在文檔中單擊并選定好需要放置的位

95、置即可。接著按相同的操作即可完成所有元器件的布置,接下來是連線。事實(shí)上Proteus的自動(dòng)布線功能是如此的完美以至于我們?cè)谧霾季€時(shí)從來都不會(huì)覺得這是一項(xiàng)任務(wù),而通常像是在享受布線的樂趣。布線時(shí)我們只需要單擊選擇起點(diǎn),然后在需要轉(zhuǎn)彎的地方單擊一下,按照你所需走線的方向移動(dòng)鼠標(biāo)到線的終點(diǎn)單擊即可。本例我們布線的結(jié)果如下圖所示(仿真我們?cè)谏厦娴腒eil操作介紹中的簡單例子)。</p><p><b>  圖4

96、-3</b></p><p>  因?yàn)樵摴こ淌趾唵?,我們沒有必要加上復(fù)位電路,所以這點(diǎn)在圖中予以忽略,請(qǐng)大家注意。除此以外,你可能還發(fā)現(xiàn),單片機(jī)系統(tǒng)沒有晶振,這一點(diǎn)你需注意。事實(shí)上在Proteus中單片機(jī)的晶振可以省略,系統(tǒng)默認(rèn)為12MHz,而且很多時(shí)候,當(dāng)然也為了方便,我們只需要取默認(rèn)值就可以了。</p><p>  下面我們來添加電源。先說明一點(diǎn),Proteus中單片機(jī)芯

97、片默認(rèn)已經(jīng)添加電源與地,所以我們可以省略。然后在添加電源與地以前,我們先來看一下上面第一個(gè)圖中區(qū)域⑤的對(duì)象拾取區(qū),我們?cè)谶@里只說明本文中可能會(huì)用得到的以及比較重要的工具。</p><p>  l:(Selection Mode)。選擇模式,通常情況下我們都需要選中它,比如布局時(shí)和布線時(shí)。</p><p>  l :(Component Mode)。組件模式,點(diǎn)擊該按鈕,能夠顯示出區(qū)域③中的

98、元器件,以便我們選擇。</p><p>  l    :(Wire Label Mode)。線路標(biāo)簽?zāi)J?,選中它并單擊文檔區(qū)電路連線能夠?yàn)檫B線添加標(biāo)簽。經(jīng)常與總線配合使用。</p><p>  l   :(Text Script Mode)。文本模式,選中它能夠?yàn)槲臋n添加文本。</p><p>  l &#

99、160;  :(Buses Mode)。總線模式,選中它能夠在電路中畫總線。關(guān)于總線畫法的詳細(xì)步驟與注意事項(xiàng)我們?cè)谙旅鏁?huì)進(jìn)行專門講解。</p><p>  l :(Terminals Mode)。終端模式,選中它能夠?yàn)殡娐诽砑痈鞣N終端,比如輸入、輸出、電源、地等等。</p><p>  l :(Virtual Instruments Mode)。虛擬儀器模式,選中它我們能夠在區(qū)域

100、③中看到很多虛擬儀器,比如示波器、電壓表、電流表等等。關(guān)于它們的用法我們會(huì)在后面的相應(yīng)章節(jié)中詳細(xì)講述。</p><p>  好了,下面我們就來添加電源。首先點(diǎn)擊,選擇終端模式,然后在元器件瀏覽區(qū)中點(diǎn)擊POWER(電源)來選中電源,通過區(qū)域⑥中的元器件調(diào)整工具進(jìn)行適當(dāng)?shù)恼{(diào)整,然后就可以在文檔區(qū)中單擊放置電源了。放置并連接好線路的電路圖一部分如下圖:</p><p><b>  圖4

101、-4</b></p><p>  連接好電路圖以后我們還需要做一些修改。由上圖我們可以看出,圖中的R1電阻值為10k,這個(gè)電阻作為限流電阻顯然太大,將使發(fā)光二極管D1亮度很低或者根本就不亮,影響我們的仿真結(jié)果。所以我們要進(jìn)行修改。修改方法如下:首先我們雙擊電阻圖標(biāo),這時(shí)軟件將彈出“Edit Component”對(duì)話框(見下圖所示的對(duì)話框),對(duì)話框中的“Component Referer”是組件標(biāo)簽之意

102、,可以隨便填寫,也可以取默認(rèn),但要注意在同一文檔中不能有兩個(gè)組件標(biāo)簽相同;“Resistance”就是電阻值了,我們可以在其后的框中根據(jù)需要填入相應(yīng)的電阻值。填寫時(shí)需注意其格式,如果直接填寫數(shù)字,則單位默認(rèn)為Ω;如果在數(shù)字后面加上K或者k,則表示kΩ之意。這里我們填入270,表示270Ω。</p><p>  修改好各組件屬性以后就要將程序(HEX文件)載入單片機(jī)了。首先雙擊單片機(jī)圖標(biāo),系統(tǒng)同樣會(huì)彈出“Edit

103、Component”對(duì)話框,如下圖。在這個(gè)對(duì)話框中我們點(diǎn)擊“Program files”框右側(cè)的,來打開選擇程序代碼窗口,選中相應(yīng)的HEX文件后返回,這時(shí),按鈕左側(cè)的框中就填入了相應(yīng)的HEX文件,我們點(diǎn)擊對(duì)話框的“OK”按鈕,回到文檔,程序文件就添加完畢了。</p><p><b>  圖4-5</b></p><p>  裝載好程序,我們就可以進(jìn)行仿真了。</

104、p><p>  第五章:調(diào)試功能說明</p><p><b>  5.1 硬件調(diào)試</b></p><p>  5.1.1最小系統(tǒng)調(diào)試</p><p>  首先應(yīng)該確認(rèn)電源電壓是否正常。用電壓表測(cè)量接地引腳跟電源引腳之間的電壓,看是否是電源電壓,我們所用的電源電壓是5V。接下來就是檢查復(fù)位引腳電壓是否正常。分別測(cè)量按下復(fù)位按

105、鈕和放開復(fù)位按鈕的電壓值,看是否正確。然后再檢查晶振是否起振了,一般用示波器來看晶振引腳的波形,注意應(yīng)該使用示波器探頭的“X10”檔。另一個(gè)辦法是測(cè)量復(fù)位狀態(tài)下的IO口電平,按住復(fù)位鍵不放,然后測(cè)量IO口(沒接外部上拉的P0口除外)的電壓,看是否是高電平,如果不是高電平,則多半是因?yàn)榫д駴]有起振。另外還要注意的地方是,要將EA引腳拉高,因?yàn)槲覀冇玫氖瞧瑑?nèi)ROM,否則會(huì)出現(xiàn)程序亂跑的情況。有時(shí)用仿真器可以,而燒入片子不行,往往是因?yàn)镋A引

106、腳沒拉高的緣故(當(dāng)然,晶振沒起振也是原因只一)。經(jīng)過上面幾點(diǎn)的檢查,一般即可排除故障了。如果系統(tǒng)不穩(wěn)定的話,有時(shí)是因?yàn)殡娫礊V波不好導(dǎo)致的。在單片機(jī)的電源引腳跟地引腳之間接上一個(gè)0.1uF的電容會(huì)有所改善。如果電源沒有濾波電容的話,則需要再接一個(gè)更大濾波電容,例如220uF的。遇到系統(tǒng)不穩(wěn)定時(shí),就可以并上電容試試。</p><p>  5.1.2 故障點(diǎn)分析</p><p>  檢測(cè)故障點(diǎn)的

107、方法如下:</p><p> ?、贉y(cè)量電壓法。首先要確認(rèn)的是各芯片電源引腳的電壓是否正常,其次檢查各種參考電壓是否正常,另外還有各點(diǎn)的工作電壓是否正常等。</p><p> ?、谛盘?hào)注入法。將信號(hào)源加至輸入端,然后依次往后測(cè)量各點(diǎn)的波形,看是否正常,以找到故障點(diǎn)。有時(shí)我們也會(huì)用更簡單的辦法,例如用手握一個(gè)鑷子,去碰觸各級(jí)的輸入端,看輸出端是否有反應(yīng),</p><p>

108、; ?、郛?dāng)然,還有很多其它的尋找故障點(diǎn)的方法,例如看、聽、聞、摸等。“看”就是看元件有無明顯的機(jī)械損壞,例如破裂、燒黑、變形等;“聽”就是聽工作聲音是否正常,例如一些不該響的東西在響,該響的地方不響或者聲音不正常等;“聞”就是檢查是否有異味,例如燒焦的味道、電容電解液的味道等,對(duì)于一個(gè)有經(jīng)驗(yàn)的電子維修人員來說,對(duì)這些氣味是很敏感的;“摸”就是用手去試探器件的溫度是否正常,例如太熱,或者太涼。一些功率器件,工作起來時(shí)會(huì)發(fā)熱,如果摸上去是涼

109、的,則基本上可以判斷它沒有工作起來。但如果不該熱的地方熱了或者該熱的地方太熱了,那也是不行的。一般的功率三極管、穩(wěn)壓芯片等,工作在70度以下是完全沒問題的。70度大概是怎樣的一個(gè)概念呢?如果你將手壓上去,可以堅(jiān)持三秒鐘以上,就說明溫度大概在70度以下(注意要先試探性的去摸,千萬別把手燙傷了)。</p><p>  5.2軟件調(diào)試問題及解決</p><p>  一個(gè)應(yīng)用系統(tǒng)并非一次就可以正確

110、無誤地設(shè)計(jì)出來,尤其是設(shè)計(jì)的程序,必須經(jīng)過多次的調(diào)試才能確鑿無誤地工作。為避免浪費(fèi),并不把剛剛編寫好的程序直接寫到EPROM、EEPROM等中去,更不會(huì)急于生產(chǎn)安裝部分硬件,在專用的仿真器或開發(fā)試驗(yàn)臺(tái)上進(jìn)行。</p><p>  我們首先在KEIL軟件中編寫程序,來進(jìn)行C語言程序的調(diào)試。然后再把程序加載在PRETEUS軟件上進(jìn)行仿真調(diào)試。</p><p>  Keil C51軟件提供豐富的

111、庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。</p><p>  Keil軟件可以對(duì)我們寫的C語言程序進(jìn)行編譯,它能清晰的顯示出程序的各種信息,并能明確的指出程序的錯(cuò)誤之處和錯(cuò)誤的原由。以致我們能夠得到結(jié)構(gòu),書寫都無誤的C語言的程序。</p>&

112、lt;p>  Proteus 提供了比較豐富的測(cè)試信號(hào)用于電路的測(cè)試。這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。對(duì)于單片機(jī)硬件電路和軟件的調(diào)試,Proteus 提供了兩種方法:一種是系統(tǒng)總體執(zhí)行效果,一種是對(duì)軟件的分步調(diào)試以看具體的執(zhí)行情況。 對(duì)于總體執(zhí)行效果的調(diào)試方法,只需要執(zhí)行debug 菜單下的execute 菜單項(xiàng)或F12 快捷鍵啟動(dòng)執(zhí)行,用debug菜單下的pause&

113、#160;animation 菜單項(xiàng)或pause 鍵暫停系統(tǒng)的運(yùn)行;或用debug 菜單下的stop animation 菜單項(xiàng)或shift-break 組合鍵停止系統(tǒng)的運(yùn)行。其運(yùn)行方式也可以選擇工具欄中的相應(yīng)工具進(jìn)行。 對(duì)于軟件的分步調(diào)試,應(yīng)先執(zhí)行debug 菜單下的start/restart debugging 菜單項(xiàng)命令,此時(shí)可以選擇

114、stepover 、step into 和 step out 命令執(zhí)行程序(可以用快捷鍵F10、F11 和ctrl+F11),執(zhí)行的效果是單句執(zhí)行、進(jìn)入子程序執(zhí)行和跳出子程序執(zhí)行。在執(zhí)行了start / restart debuging 命令后,在debug 菜單的下面要出現(xiàn)仿真中所涉及到</p><

115、;p><b>  第六章 結(jié)束語</b></p><p><b>  6.1文總結(jié) </b></p><p>  通過這次的畢業(yè)設(shè)計(jì)使我對(duì)單片機(jī)又有了更深的認(rèn)識(shí),讓我對(duì)其從硬件和軟件都有了實(shí)質(zhì)性的探究,自己動(dòng)手設(shè)計(jì),組裝使自己的知識(shí)得到了系統(tǒng)化和產(chǎn)品化真正達(dá)到了學(xué)以致用。至此我要特別感謝學(xué)校和老師安排的這項(xiàng)活動(dòng)使我們脫離了高中只會(huì)理論不會(huì)

116、實(shí)踐的階段而真正進(jìn)入了實(shí)質(zhì)性的層次。使我們對(duì)將來的工作及研發(fā)奠定了一定的基礎(chǔ)。</p><p><b>  6.2工作展望</b></p><p>  單片機(jī)是一門復(fù)雜而又有創(chuàng)新空間的技術(shù),我會(huì)在以后的日子里更加的努力,爭(zhēng)取在有生之年取得一定的成績。中國的高科技產(chǎn)業(yè)比較的落后,和美國,日本等都有很大的差距我們這一代的大學(xué)生應(yīng)該擔(dān)負(fù)起這樣的責(zé)任為我國的科技發(fā)展做出貢獻(xiàn)。

117、我會(huì)不斷的努力爭(zhēng)取在單片機(jī)領(lǐng)域做出自己最大的努力。</p><p><b>  參考文獻(xiàn)、資料索引</b></p><p><b>  致  謝</b></p><p>  首先衷心地感謝我的導(dǎo)師XXX。本文從選題到完成,從理論上的探討到實(shí)際問題的解決,無處不飽含著劉翠鈴的心血。xx的悉心指導(dǎo)和建議給了我極大的幫助和支持,

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論