華科單片機(jī)課程設(shè)計(jì)_第1頁(yè)
華科單片機(jī)課程設(shè)計(jì)_第2頁(yè)
華科單片機(jī)課程設(shè)計(jì)_第3頁(yè)
華科單片機(jī)課程設(shè)計(jì)_第4頁(yè)
華科單片機(jī)課程設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 2015-2016學(xué)年度上學(xué)期計(jì)算機(jī)原理及應(yīng)用課程設(shè)計(jì)交通燈控制系統(tǒng)設(shè)計(jì) 姓 名: 學(xué) 號(hào): 班 級(jí): 指導(dǎo)教師: 目錄課程設(shè)計(jì)任務(wù)書(shū)1課題分析3第一章 80C51單片機(jī)51.1單片機(jī)的概念51.280C51單片機(jī)簡(jiǎn)介51.2.180C51單片機(jī)內(nèi)部邏輯結(jié)構(gòu)51.2.280C51單片機(jī)的封裝與信號(hào)引腳71.2.380C51單片機(jī)的內(nèi)部存儲(chǔ)器81.2.480C51單片機(jī)的時(shí)鐘與時(shí)序11第二章 總體方案122.1畫(huà)出原理框圖122.2實(shí)驗(yàn)實(shí)現(xiàn)過(guò)程12第三章 硬件系統(tǒng)設(shè)計(jì)133.1元器件的選擇133.1.1紅黃綠三色LED燈133.1.2倒計(jì)時(shí)顯示LED數(shù)碼管133.1.3控制開(kāi)關(guān)153.2單元電

2、路的設(shè)計(jì)153.3電路連接15第四章 軟件系統(tǒng)設(shè)計(jì)164.1程序流程圖164.2匯編程序16第五章 實(shí)驗(yàn)調(diào)試17 調(diào)試過(guò)程與結(jié)果. 17第六章 設(shè)計(jì)總結(jié)196.1心得體會(huì)19 6.2 致謝詞.196.3參考文獻(xiàn)20 附錄 21課程設(shè)計(jì)任務(wù)書(shū)題目:交通燈控制系統(tǒng)設(shè)計(jì)一、 設(shè)計(jì)要求1、 用發(fā)光二極管模擬交通信號(hào)燈,用按鍵開(kāi)關(guān)模擬急救車(chē)的到來(lái)。2、 十字路口的交通燈控制原理如圖4.2.1所示,每個(gè)道口各有紅、黃、綠燈一個(gè)。圖4.2.1 十字路口交通燈控制原理3、 不妨設(shè)東西方向?yàn)橹鞲傻?,南北方向?yàn)榇胃傻馈V鞲傻谰G、黃、紅燈點(diǎn)亮的時(shí)間依次為50s、6s、30s,次干道綠、黃、紅燈點(diǎn)亮的時(shí)間依次為24s

3、、6s、56s。4、 正常情況下,主干道綠、黃燈點(diǎn)亮?xí)r,次干道為紅燈;次干道綠、黃燈點(diǎn)亮?xí)r,主干道為紅燈。當(dāng)出現(xiàn)急救車(chē)等特種車(chē)輛時(shí),主干道、次干道都為紅燈,以使所有其它車(chē)輛停下,避讓急救車(chē)。5、 救急車(chē)到來(lái)時(shí)會(huì)發(fā)出“滴”、“噠”的警笛聲,控制系統(tǒng)通過(guò)檢測(cè)急救車(chē)的警笛聲,啟動(dòng)急救車(chē)避讓狀態(tài),即讓各方向的紅燈都亮。避讓狀態(tài)持續(xù)20s后,自動(dòng)恢復(fù)正常狀態(tài)運(yùn)行。6、 出現(xiàn)一次避讓狀態(tài)后,85s內(nèi)不再處理避讓狀態(tài),以避免遠(yuǎn)去的急救車(chē)聲音形成干擾,造成重復(fù)避讓。二、 主要功能模塊交通燈控制系統(tǒng)主要功能模塊包括電源電路、單片機(jī)主控電路、按鍵控制電路和道路顯示電路組成。根據(jù)具體情況選擇合適型號(hào)的單片機(jī),發(fā)光二

4、極管,開(kāi)關(guān)等硬件設(shè)備進(jìn)行設(shè)計(jì)。三、 要求完成的主要任務(wù)1. 根據(jù)功能要求完成硬件電路設(shè)計(jì),提供硬件電路圖。2. 使用匯編完成軟件部分設(shè)計(jì),實(shí)現(xiàn)相應(yīng)功能。要求程序加注釋并提供軟件流程圖。四、 時(shí)間安排2015.12.182015.12.21 收集資料,確定設(shè)計(jì)方案2012.12.222012.12.30 系統(tǒng)設(shè)計(jì)2012.12.312012.01.03 撰寫(xiě)課程設(shè)計(jì)論文及提交 課題分析一、 概述單片機(jī)是計(jì)算機(jī)技術(shù)、大規(guī)模集成電路技術(shù)和控制技術(shù)的綜合產(chǎn)物。經(jīng)過(guò)30多年的發(fā)展歷程,單片機(jī)應(yīng)用已經(jīng)十分廣泛和深入。可以毫不夸張的說(shuō),任何設(shè)備和產(chǎn)品的自動(dòng)化、數(shù)字化和智能化都離不開(kāi)單片機(jī)。這里我們選用當(dāng)今應(yīng)

5、用最為廣泛的8位單片機(jī)80C51來(lái)完成智能交通控制系統(tǒng)的設(shè)計(jì),并用實(shí)驗(yàn)箱進(jìn)行調(diào)試。智能交通的意義國(guó)內(nèi)的交通燈一般設(shè)在十字路口,在醒目位置用紅、綠、黃三種顏色的指示燈。加上一個(gè)倒計(jì)時(shí)的顯示計(jì)時(shí)器來(lái)控制行車(chē)。對(duì)于一般情況下的安全行車(chē),車(chē)輛分流尚能發(fā)揮作用,但根據(jù)實(shí)際行車(chē)過(guò)程中出現(xiàn)的情況,還存在以下缺點(diǎn):1. 經(jīng)常出現(xiàn)的情況是某一車(chē)道車(chē)輛較多,放行時(shí)間應(yīng)該長(zhǎng)一些,另一車(chē)道車(chē)輛較少,放行時(shí)間應(yīng)該短些。2. 沒(méi)有考慮緊急車(chē)通過(guò)時(shí),兩車(chē)道應(yīng)采取的措施,例如,消防車(chē)執(zhí)行緊急任務(wù)通過(guò)時(shí),兩車(chē)道的車(chē)都應(yīng)停止,讓緊急車(chē)通過(guò)。3、緊急車(chē)輛通過(guò)后應(yīng)該要有避免遠(yuǎn)去的急救車(chē)聲音形成干擾,造成重復(fù)避讓的功能?;趥鹘y(tǒng)交通燈

6、控制系統(tǒng)設(shè)計(jì)過(guò)于死板,紅綠燈交替是間過(guò)于程式化的缺點(diǎn),智能交通燈控制系統(tǒng)的設(shè)計(jì)就更顯示出了它的研究意義,它能根據(jù)道路交通擁護(hù),交叉路口經(jīng)常出現(xiàn)擁堵的情況。利用單片機(jī)控制技術(shù)提出了軟件和硬件設(shè)計(jì)方案,能夠?qū)崿F(xiàn)道路的最大通行效率。二、 要求分析1. 以箱實(shí)驗(yàn)的LED燈模擬交通信號(hào)燈,以核心板上的數(shù)碼管顯示倒計(jì)時(shí)。2. 兩車(chē)道交叉組成十字路口,分主干道和次干道。正常情況下,兩車(chē)道輪流放行,過(guò)程如下:Ø 狀態(tài)0:主干道綠燈亮,次干道紅燈亮,主干道放行,次干道禁行。轉(zhuǎn)至狀態(tài)3;狀態(tài)3:主干道紅燈亮,次干道黃燈亮,轉(zhuǎn)至狀態(tài)0。Ø 狀態(tài)1:主干道黃燈亮,次干道紅燈亮,主干道發(fā)出黃燈警告,

7、次干道禁止通行Ø 狀態(tài)2:主干道紅燈亮,次干道綠燈亮,次干道放行,主干道禁行Ø 狀態(tài)3:主干道紅燈亮,次干道黃燈亮,次干道發(fā)出黃燈警告,主干道禁止通行。3. 有緊急車(chē)輛通過(guò)時(shí),另有開(kāi)關(guān)設(shè)置主次干道均禁止通行20s,期間主次干道全部紅燈禁止通行。4. 在禁止通行20s后恢復(fù)原來(lái)通行,此時(shí)計(jì)時(shí)85S,在這個(gè)期間內(nèi)不許情況3重復(fù)發(fā)生,以免遠(yuǎn)去的救急車(chē)形成二次干擾,打破原來(lái)運(yùn)行系統(tǒng)。27第一章 80C51單片機(jī)單片機(jī)的概念單片機(jī)是集成在一個(gè)芯片上的計(jì)算機(jī),全稱(chēng)單片微型計(jì)算機(jī)SCMC(Single Chip Micro-Computer)。單片機(jī)是計(jì)算機(jī)、自動(dòng)控制和大規(guī)模集成電路技術(shù)

8、相結(jié)合的產(chǎn)物,融計(jì)算機(jī)結(jié)構(gòu)和控制功能于一體,是微型計(jì)算機(jī)的一個(gè)重要分支,也是頗具生命力的機(jī)種。單片微型計(jì)算機(jī)簡(jiǎn)稱(chēng)單片機(jī),特別適用于控制領(lǐng)域,故又稱(chēng)為微控制器。通常,單片機(jī)由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計(jì)算機(jī)的基本功能部件:中央處理器、存儲(chǔ)器和I/O接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個(gè)單片機(jī)控制系統(tǒng)。單片機(jī)經(jīng)過(guò)1、2、3三代的發(fā)展,目前單片機(jī)正朝著高性能和多品種方向發(fā)展,它們的CPU功能在增強(qiáng),內(nèi)部資源在增多,引角的多功能化,以及低電壓底功耗。80C51單片機(jī)簡(jiǎn)介80C51是8位單片機(jī)中一個(gè)最基本、最典型的芯片型號(hào),是MCS-51系列單片機(jī)中8051的改進(jìn)

9、型,使用相當(dāng)廣泛。1.2.1 80C51單片機(jī)內(nèi)部邏輯結(jié)構(gòu)80C51單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行I/O接口、串行接口、中斷系統(tǒng)、時(shí)鐘電路、位處理器等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,其邏輯結(jié)構(gòu)如圖1.1所示。 1. 中央處理器CPU中央處理器CPU(Central Processing Unit)是整個(gè)單片機(jī)的核心部件,包含運(yùn)算電路和控制電路兩大部分,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。2. 內(nèi)部數(shù)據(jù)存儲(chǔ)器(RAM)80C5

10、1內(nèi)部有128個(gè)8位用戶數(shù)據(jù)存儲(chǔ)單元和128個(gè)專(zhuān)用寄存器單元,它們是統(tǒng)一編址的,專(zhuān)用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問(wèn),而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個(gè),可存放讀寫(xiě)的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表。3. 內(nèi)部程序存儲(chǔ)器(ROM)包括ROM(4Kx8)和程序地址寄存器等。80C51共有4KB掩膜ROM,用于存放用戶程序、原始數(shù)據(jù)或表格,簡(jiǎn)稱(chēng)內(nèi)部ROM。圖1.1 80C51芯片邏輯結(jié)構(gòu)圖4. 定時(shí)/計(jì)數(shù)器(ROM)80C51共有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,用以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)功能,并以此產(chǎn)生的中斷對(duì)單片機(jī)進(jìn)行控制。5. 并行輸入輸出(I/O)口805

11、1共有4組8位I/O口(P0、 P1、P2或P3),以實(shí)現(xiàn)數(shù)據(jù)的并行輸入與輸出。6. 全雙工串行口8051內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。7. 中斷系統(tǒng)8051具備較完善的中斷功能,共有5個(gè)中斷源,即外中斷2個(gè)、定時(shí)/計(jì)數(shù)器中斷2個(gè)和串行中斷1個(gè)。全部中斷分為高級(jí)和低級(jí)共兩個(gè)優(yōu)先級(jí)別,可滿足不同的控制要求。8. 時(shí)鐘電路80C51內(nèi)置最高頻率達(dá)12MHz的時(shí)鐘電路,用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序,但石英晶體和微調(diào)電容需外接。9. 位處理器單片機(jī)主要用于控制,需要較強(qiáng)的位處理功能,因此,位處理器是它的必要組成部

12、分,也稱(chēng)布爾處理器。10. 內(nèi)部總線上述這些部件通過(guò)總線連接起來(lái),才能構(gòu)成一個(gè)完整的計(jì)算機(jī)系統(tǒng)。芯片內(nèi)的地址信號(hào)、數(shù)據(jù)信號(hào)和控制信號(hào)都是通過(guò)總線傳輸?shù)???偩€結(jié)構(gòu)減少了單片機(jī)的連線和引腳,提高了集成度和可靠性。總線結(jié)構(gòu)如圖1.2所示圖1.2 80C51內(nèi)部總線結(jié)構(gòu)1.2.2 80C51單片機(jī)的封裝與信號(hào)引腳1. 芯片封裝形式(a)引腳排列 (b)邏輯符號(hào)圖1.3 80C51單片機(jī)芯片引腳及邏輯符號(hào)80C51有40引腳雙列直插式DIP(Dual In line Package)和44引腳方形扁平式QFP(Quad Flat Package)共兩種封裝形式。本設(shè)計(jì)采用40引腳DIP形式,其引腳排列及

13、芯片邏輯符號(hào)如圖1.3所示。2. 芯片引腳簡(jiǎn)介80C51的40個(gè)引腳主要包括:Ø +5V電源VccØ 地線VssØ 外置石英振蕩器的時(shí)鐘線XTAL1和XTAL2Ø 復(fù)位信號(hào)RSTØ 訪問(wèn)程序存儲(chǔ)器控制信號(hào)EAØ 外部程序存儲(chǔ)器讀選通信號(hào)PSENØ 地址鎖存控制信號(hào)ALEØ 4組8位共32個(gè)I/O口線3. 芯片引腳的第二功能隨著單片機(jī)功能的增強(qiáng),而又由于簡(jiǎn)化、工藝或標(biāo)準(zhǔn)等原有,芯片引腳數(shù)目總是有限的,所以,“引腳復(fù)用”現(xiàn)象在單片機(jī)中十分常見(jiàn)。80C51的引腳復(fù)用主要集中在P3口線上,P3口線的第二功能見(jiàn)表1.1.表1

14、.1 P3口線的第二功能口線特殊功能信號(hào)名稱(chēng)P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2INT0外部中斷0輸入口P3.3TNT1外部中斷1輸入口P3.4T0定時(shí)器0外部輸入口P3.5T1定時(shí)器1外部輸入口P3.6WR寫(xiě)選通輸出口P3.7RD讀選通輸出口1.2.3 80C51單片機(jī)的內(nèi)部存儲(chǔ)器一般的,單片機(jī)芯片的內(nèi)部存儲(chǔ)器包括數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器。1. 內(nèi)部數(shù)據(jù)存儲(chǔ)區(qū)80C51單片機(jī)的數(shù)據(jù)存儲(chǔ)器共有256個(gè)單元,按照功能又把其劃分為兩部分:低128單元區(qū)和高128單元區(qū),如圖1.4所示。低128單元區(qū)包括:Ø 寄存器區(qū),內(nèi)部RAM前32個(gè)單元,分為4組Ø 位尋址

15、區(qū),內(nèi)部RAM的20H-2FH單元Ø 用戶數(shù)據(jù)區(qū),內(nèi)部RAM的30H-7FH單元高128單元區(qū)共專(zhuān)用寄存器(SFR)使用,單元地址為80H-FFH,用于存放相應(yīng)功能部件的控制命令、狀態(tài)、或數(shù)據(jù)。80C51除去程序計(jì)數(shù)器PC外,還有21個(gè)專(zhuān)用寄存器。參看表1.2。圖1.4 80C51內(nèi)部數(shù)據(jù)存儲(chǔ)器2. 內(nèi)部程序存儲(chǔ)器在80C51中,程序存儲(chǔ)器被用來(lái)存放程序、常數(shù)或表格等。其片內(nèi)有4K字節(jié)的ROM存儲(chǔ)單元,地址為0000H0FFFH。在程序存儲(chǔ)器中,以下6個(gè)單元具有特殊含義:Ø 0000H:?jiǎn)纹瑱C(jī)復(fù)位后,PC0000H,程序從0000H開(kāi)始執(zhí)行指令。 Ø 0003H:

16、外部中斷0入口地址。Ø 000BH:定時(shí)器0中斷入口地址。 0013H:外部中斷1入口地址。Ø 001BH:定時(shí)器1中斷入口地址。Ø 0023H:串行口中斷入口地址。在系統(tǒng)中斷相應(yīng)之后,將自動(dòng)轉(zhuǎn)到各中斷入口地址處執(zhí)行程序,而中斷服務(wù)程序一般無(wú)法存放于幾個(gè)單元之內(nèi),因此在中斷入口地址處往往存放一條無(wú)條件轉(zhuǎn)移指令進(jìn)行跳轉(zhuǎn),以便執(zhí)行中斷服務(wù)程序。表1.2 80C51專(zhuān)用寄存器一覽表1.2.4 80C51單片機(jī)的時(shí)鐘與時(shí)序?yàn)榱吮WC同步工作方式的實(shí)現(xiàn),單片機(jī)必須有時(shí)鐘信號(hào),一是以使系統(tǒng)在時(shí)鐘信號(hào)的控制下按時(shí)序協(xié)調(diào)工作。時(shí)序是指令執(zhí)行過(guò)程中各信號(hào)之間的相互時(shí)間關(guān)系。1. 時(shí)鐘

17、電路Ø 內(nèi)部時(shí)鐘方式單片機(jī)的時(shí)鐘電路由振蕩電路和分頻電路組成。在80C51芯片內(nèi)部有一個(gè)高增益反相放大器,其輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2,在芯片的外部通過(guò)這兩個(gè)引腳跨接晶體振蕩器和微調(diào)電容,形成反饋電路,就構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器。電路中的電容一般取30pF左右,而晶體的振蕩頻率范圍通常是1.2MHz33MHz。Ø 外部時(shí)鐘方式在由多片單片機(jī)組成的系統(tǒng)中,為了各單片機(jī)之間時(shí)鐘信號(hào)的同步,引入唯一的外部脈沖信號(hào)作為各單片機(jī)的振蕩脈沖。這時(shí)外部的脈沖信號(hào)是經(jīng)XTAL1引腳注入,XTAL2引腳懸空。2. 機(jī)器周期80C51采用同步控制方式,因此有固有的機(jī)器

18、周期。一個(gè)機(jī)器周期共有12個(gè)震蕩脈沖周期,則當(dāng)晶振頻率為12MHz時(shí),一個(gè)機(jī)器周期為1us。第二章 總體方案畫(huà)出原理框圖在仔細(xì)分析設(shè)計(jì)要求的前提下,把系統(tǒng)要完成的任務(wù)分配給若干個(gè)單元電路,畫(huà)出一個(gè)能表示各單元功能和關(guān)系的原理框圖。依靠原理框圖,可為下一步的器件選擇和布線提供依據(jù)和參考。原理框圖如圖2.1所示。圖2.1 智能交通設(shè)計(jì)原理2.2、實(shí)驗(yàn)實(shí)現(xiàn)過(guò)程:1. 路口的紅綠燈分為四種狀態(tài)。狀態(tài)0:主干道綠燈亮,次干道紅燈亮,轉(zhuǎn)至狀態(tài)1;狀態(tài)1:主干道黃燈亮,次干道紅燈亮,轉(zhuǎn)至狀態(tài)2;狀態(tài)2:主干道紅燈亮,次干道綠燈亮,轉(zhuǎn)至狀態(tài)3;狀態(tài)3:主干道紅燈亮,次干道黃燈亮,轉(zhuǎn)至狀態(tài)0。紅綠燈狀態(tài)表如下:

19、(1表示燈亮,0表示燈滅)狀態(tài)主干道次干道綠黃紅綠黃紅01000011010001200110030010102. 對(duì)于該設(shè)計(jì)而言,需要控制6盞燈,可利用單片機(jī)內(nèi)部I/O口上P1口的6個(gè)引腳來(lái)控制6個(gè)信號(hào)燈。3. 通過(guò)延時(shí)時(shí)間顯示,用數(shù)碼管顯示倒計(jì)時(shí)時(shí)間。4. 有外部中斷時(shí),先進(jìn)行現(xiàn)場(chǎng)保護(hù),再將主干道、次干道上紅燈點(diǎn)亮,延時(shí)20s,并屏蔽85s中斷,恢復(fù)現(xiàn)場(chǎng)。第三章 硬件系統(tǒng)設(shè)計(jì)元器件的選擇由設(shè)計(jì)要求和原理框圖可知,在試驗(yàn)箱中實(shí)現(xiàn)交通燈系統(tǒng)所需的元器件包括:80C51單片機(jī)、紅黃綠三色LED燈、倒計(jì)時(shí)顯示LED數(shù)碼管和控制開(kāi)關(guān),80C51單片機(jī)已在前面介紹,下面就其他幾個(gè)器件一一介紹。3.1.

20、1 紅黃綠三色LED燈實(shí)驗(yàn)箱右上角有LED燈,內(nèi)部采用共陰極接法,對(duì)外有3個(gè)引腳,選取三個(gè),分別對(duì)應(yīng)一種顏色的燈,使用時(shí)只要令需點(diǎn)亮的燈接高電平,不需點(diǎn)亮的燈接低電平即可,接線方便簡(jiǎn)單。TRAFFIC LIGHTS如圖3.1所示。圖3.1 TRAFFIC LIGHTS3.1.2 倒計(jì)時(shí)顯示LED數(shù)碼管(a)7SEG-MPX2-CA模塊 (b)符號(hào)和引腳 (c)內(nèi)部共陽(yáng)極接法圖3.2 8段LED數(shù)碼管由于設(shè)計(jì)要求中需要顯示的倒計(jì)時(shí)最長(zhǎng)為5s,2位8段的數(shù)碼管足以滿足設(shè)計(jì)要求。實(shí)驗(yàn)箱提供了這種顯示數(shù)碼管。7SEG-MPX2-CA內(nèi)部采用共陽(yáng)極接法,A-G引腳分別對(duì)應(yīng)“8”字形的其中一段,共7段,相

21、應(yīng)段的引腳接低電平是點(diǎn)亮,接高電平時(shí)熄滅,DP為小數(shù)點(diǎn)對(duì)應(yīng)的引腳。符號(hào)和引腳關(guān)系如圖3.2(b)所示,內(nèi)部接法如圖3.2(c)所示。1. 段碼所謂段碼就是為數(shù)碼管顯示提供的各段狀態(tài)組合,字形代碼。7段數(shù)碼管的段碼為7位,8段數(shù)碼管的段碼為8位,用一個(gè)字節(jié)即可表示。在段碼字節(jié)中代碼位與各段發(fā)光二極管的對(duì)應(yīng)關(guān)系如下: 段碼D7D6D5D4D3D2D1D0段名dpgfedcba段碼的值與數(shù)碼管公共引腳的接法(共陽(yáng)極和共陰極)有關(guān)。以8段數(shù)碼管共陽(yáng)極為例,顯示十六進(jìn)制數(shù)的段碼值如表3.1所示。表3.1共陽(yáng)極十六進(jìn)制數(shù)段碼表顯示數(shù)值 驅(qū)動(dòng)代碼0123456789 C0H F9H A4H B0H 99H

22、92H 82H F8H 80H 90H2. 動(dòng)態(tài)顯示LED顯示器多采用動(dòng)態(tài)顯示方式,全部數(shù)碼管共用一套段碼驅(qū)動(dòng)電路。顯示時(shí)通過(guò)位控信號(hào)采用掃描的方法逐位地循環(huán)點(diǎn)亮各位數(shù)碼管。動(dòng)態(tài)顯示雖然在任一時(shí)刻只有一位數(shù)碼管被點(diǎn)亮,但是由于人眼具有的視覺(jué)暫留效應(yīng),看起來(lái)與全部數(shù)碼管持續(xù)點(diǎn)亮的效果完全一樣。LED顯示器動(dòng)態(tài)顯示需要為各位提供段碼以及相應(yīng)的位控制,此即通常所說(shuō)的段控和位控。3.1.3 控制開(kāi)關(guān)在本次課程設(shè)計(jì)中采用按鍵式開(kāi)關(guān)。單元電路的設(shè)計(jì)根據(jù)系統(tǒng)指標(biāo)和功能框圖,明確任務(wù),進(jìn)行各單元電路的設(shè)計(jì),每個(gè)單元電路設(shè)計(jì)前都需明確本單元電路的任務(wù),詳細(xì)擬定出單元電路的性能指標(biāo)。注意各單元電路之間的相互配合和

23、前后級(jí)之間的關(guān)系,盡量簡(jiǎn)化電路結(jié)構(gòu)。注意各部分輸入信號(hào)、輸出信號(hào)和控制信號(hào)的關(guān)系。選擇單元電路的組成形式,模仿成熟的先進(jìn)的電路,或進(jìn)行創(chuàng)新或改進(jìn),但都必須保證性能要求。本智能交通燈系統(tǒng)所需的單元電路由開(kāi)關(guān)控制電路、80C51單片機(jī)主電路、紅黃綠三色燈電路和倒計(jì)時(shí)顯示電路構(gòu)成,各個(gè)單元之間的關(guān)系較為簡(jiǎn)單和明確,只需和主電路以此進(jìn)行連接即可。電路連接所采用的實(shí)驗(yàn)箱已經(jīng)完成好了實(shí)驗(yàn)電路連接,采用P2口連接到LED燈即可。第四章 軟件系統(tǒng)設(shè)計(jì)程序流程圖4.1、實(shí)驗(yàn)流程圖:主程序: 中斷程序: 4.2、實(shí)驗(yàn)程序見(jiàn)附錄。第五章:實(shí)驗(yàn)調(diào)試與結(jié)果 調(diào)試過(guò)程:2015年12月20日,我們到實(shí)驗(yàn)室進(jìn)行了第一次調(diào)試

24、,將所編寫(xiě)的程序進(jìn)行了第一遍調(diào)試,不出所料地不成功,而后我們將程序分為三個(gè)模塊進(jìn)行分別的實(shí)驗(yàn)調(diào)試:第一步:將燈的循環(huán)作為第一部分程序: 此程序比較簡(jiǎn)單,我們順利完成。第二步:將顯示的程序作為第二部分程序: 在此次調(diào)試過(guò)程中,共遇到了三個(gè)問(wèn)題:(1) 我的程序始終只顯示初始值解決過(guò)程: 推理:在明白只顯示初始值的情況,便可以知道是進(jìn)行第二遍的數(shù)字賦值出現(xiàn)了問(wèn)題或是重復(fù)掉用顯示程序的地方出現(xiàn)了問(wèn)題。經(jīng)過(guò)自己再一遍的仔細(xì)推敲之后,找到的原因是:原本實(shí)驗(yàn)所給的顯示程序在無(wú)數(shù)遍的刷新數(shù)據(jù)單元的賦給的值,而在循環(huán)顯示的時(shí)候未包含賦初值的部分,最終導(dǎo)致只顯示初始值。(2) 我的程序可以顯示,但是是一位位的顯

25、示,不能夠同時(shí)顯示六位數(shù)。 推理:本程序采用的是串行動(dòng)態(tài)顯示,出現(xiàn)一位位的顯示,說(shuō)明是刷新的太慢,不足以做到視覺(jué)暫留的現(xiàn)象發(fā)生。 最總將延時(shí)程序改為了0.1MS左右,成功的解決了這個(gè)問(wèn)題。(3) 可以顯示六位數(shù),但不能夠精確的一秒一個(gè)數(shù)的顯示: 推理:是延時(shí)的地方出現(xiàn)了問(wèn)題。 這是一個(gè)困擾了我許久的問(wèn)題,怎樣保證程序在不斷的刷新,又只在一秒后換下一個(gè)數(shù)據(jù)刷新,當(dāng)時(shí)的想法是將顯示程序放入延時(shí)子程序中調(diào)用。后來(lái)在周四給老師的交方案的時(shí)候,在老師的指點(diǎn)下將它解決了:算出循環(huán)一次的時(shí)間,在顯示程序中算出達(dá)到一秒需要刷新的次數(shù),便可以實(shí)現(xiàn)。(這是在第二次調(diào)試中實(shí)現(xiàn)的) 第三步:添加子程序中斷,完成救急車(chē)

26、到來(lái)的控制。(12月28日,第三次調(diào)試) 在本次的實(shí)驗(yàn)調(diào)試中,外部中斷0的調(diào)試挺順利的,因?yàn)楫?dāng)切換到緊急狀況后,按20S的顯示,而后進(jìn)入下一個(gè)正常狀態(tài),恢復(fù)正常的紅綠燈的狀態(tài),并未出現(xiàn)什么問(wèn)題。 在做定時(shí)器中斷的時(shí)候,比較苦惱,由于知道單片機(jī)同一時(shí)間只能干一件事情,所以布置如何將85S的關(guān)中段和正常狀態(tài)的運(yùn)行同時(shí)操作,后來(lái)想到了定時(shí)器中斷0按方式一工作每50ms產(chǎn)生中斷,定義一個(gè)數(shù)據(jù)單元加一,每20次,定義另一的數(shù)據(jù)單元加一,最后直至下一個(gè)數(shù)據(jù)單元到85次,即達(dá)到85s,最后成功的實(shí)現(xiàn)85S的關(guān)中斷。思路如此,但在實(shí)現(xiàn)過(guò)程中出現(xiàn)了關(guān)了一次,并沒(méi)有出現(xiàn)想要的結(jié)果。 當(dāng)時(shí)采取的方法是:自己閱讀程序

27、,用筆繪畫(huà)他的過(guò)程圖,而后利用軟件的單步執(zhí)行,最終找到了問(wèn)題的所在: 沒(méi)有再次開(kāi)定時(shí)器中斷計(jì)時(shí)??上驳氖亲罱K實(shí)現(xiàn)了題目要求,完成了課程設(shè)計(jì)。 總的來(lái)說(shuō),調(diào)試過(guò)程充滿艱辛和無(wú)奈,多少次的調(diào)試都無(wú)果而終,多少次都著急卻又無(wú)可奈何,多少次灰心失望,但是這些過(guò)程讓我學(xué)到一些東西:1、 要學(xué)會(huì)合作,學(xué)會(huì)利用軟件功能來(lái)調(diào)試,學(xué)會(huì)利用眼前資源2、 理論與實(shí)際有著不可跨越的鴻溝,真正的掌握是真正的會(huì)在實(shí)際中運(yùn)用。3、 學(xué)會(huì)了尊重任何一個(gè)人的學(xué)術(shù)成果,都是包含了作者無(wú)數(shù)的時(shí)間和精力的奉獻(xiàn)。4、 珍惜眼前的學(xué)習(xí)機(jī)會(huì),任何一次學(xué)習(xí)和實(shí)驗(yàn)都涵蓋了很多人的付出,不僅僅只是自己。驗(yàn)收結(jié)果: 在12月30日的下午,進(jìn)行了試

28、驗(yàn)結(jié)果的驗(yàn)收,在徐老師和張老師的考核下,我們順利的實(shí)現(xiàn)了紅綠燈的狀態(tài)的轉(zhuǎn)換,實(shí)現(xiàn)了緊急車(chē)輛到來(lái)后的狀態(tài)的變換已經(jīng)段時(shí)間內(nèi)的中斷無(wú)效,成功的完成了實(shí)驗(yàn)要求,達(dá)到了實(shí)驗(yàn)?zāi)康摹?第六章:設(shè)計(jì)總結(jié)6.1、心得體會(huì)通過(guò)這次交通燈的課程設(shè)計(jì),使我得到了一次用專(zhuān)業(yè)知識(shí)、專(zhuān)業(yè)技能分析和解決現(xiàn)實(shí)問(wèn)題的能力。使我在單片機(jī)的基本原理、單片機(jī)應(yīng)用學(xué)習(xí)過(guò)程中,以及在常用編程設(shè)計(jì)思路技巧的掌握方面都能向前邁了一大步,為日后成為一名合格的應(yīng)用型人才打下良好的基礎(chǔ)。綜合課程設(shè)計(jì)讓我把以前學(xué)習(xí)到的知識(shí)得到鞏固和進(jìn)一步的提高認(rèn)識(shí),對(duì)已有知識(shí)有了更深層次的理解和認(rèn)識(shí)。在此,由于自身能力有限,在課程設(shè)計(jì)中碰到了很多的問(wèn)題,我通過(guò)查閱

29、相關(guān)書(shū)籍、資料以及和周?chē)瑢W(xué)交流得到解決。還有交通燈是我們生活中非常常見(jiàn)的一種東西,對(duì)于我們學(xué)以致用的這種能力得到了很好鍛煉,能夠?yàn)槲覀円院蟮墓ぷ饔趯W(xué)習(xí)打下基礎(chǔ)。通過(guò)合作,我們的合作意識(shí)得到加強(qiáng)。合作能力得到提高。上大學(xué)后,很多同學(xué)都沒(méi)有過(guò)深入的交流,在設(shè)計(jì)的過(guò)程中,我們用了分工與合作的方式,每個(gè)人互責(zé)一定的部分,同時(shí)在一定的階段共同討論,以解決分工中個(gè)人不能解決的問(wèn)題,在交流中大家積極發(fā)言,和提出意見(jiàn),同時(shí)我們還向別的同學(xué)請(qǐng)教。在此過(guò)程中,每個(gè)人都想自己的方案得到實(shí)現(xiàn),積極向同學(xué)說(shuō)明自己的想法。能過(guò)比較選出最好的方案。在這過(guò)程也提高了我們的表過(guò)能力。 在設(shè)計(jì)的過(guò)程中我們還得到了老師的幫助與意

30、見(jiàn)。在學(xué)習(xí)的過(guò)程中,不是每一個(gè)問(wèn)題都能自己解決,向老師請(qǐng)教或向同學(xué)討論是一個(gè)很好的方法.6.2、致謝詞: 在這次課程設(shè)計(jì)中特別感謝三個(gè)人,一是我的合作伙伴吳雨晴同學(xué),一是我的單片機(jī)任課教師徐雁老師,還有我的實(shí)驗(yàn)指導(dǎo)老師張紅老師。感謝合作伙伴在整個(gè)課設(shè)中和我一起討論,在程序中給我找出錯(cuò)誤,給我很多啟發(fā),帶來(lái)很多靈感,共同度過(guò)了一個(gè)艱難而又頗有收獲的課設(shè)過(guò)程。感謝我的任課老師在一學(xué)期中的單片機(jī)的辛勤教導(dǎo),在課設(shè)過(guò)程中方案的仔細(xì)評(píng)判,在問(wèn)答中恰到好處的點(diǎn)撥。感謝實(shí)驗(yàn)老師連續(xù)兩周的不間斷開(kāi)放實(shí)驗(yàn)室,給我們提供可學(xué)習(xí)實(shí)驗(yàn)的地方,重要的是感謝老師能夠單獨(dú)的借我一塊實(shí)驗(yàn)核心板帶回宿舍自己做。最終在所有人的努

31、力下,完成了課程設(shè)計(jì),感謝你們的幫助,指導(dǎo)與教誨。6.3參考文獻(xiàn)【1】汪建等.單片原理及應(yīng)用技術(shù).武漢:華中科技大學(xué)出版社,2012【2】單片機(jī)實(shí)驗(yàn)指導(dǎo)書(shū),華中科技大學(xué)實(shí)驗(yàn)室編附錄:實(shí)驗(yàn)程序如下: ORG 0000H LJMP STARTORG 0003HLJMP INT_T0ORG 000BHLJMP INT_T1ORG 0100HSTART:MOV SP,#60H ;;初始化堆棧指針CLR IT0 ;; 低電平觸發(fā)MOV IP,#02H ; ;外部中斷低優(yōu)先級(jí),定時(shí)器中斷高優(yōu)先級(jí)SETB EA ; ; 開(kāi)總中斷SETB EX0 ; ;開(kāi)外部中段0SETB ET0 ;;開(kāi)定時(shí)器中斷0SETB

32、 TR0 ; ;開(kāi)始計(jì)數(shù)MOV TMOD, #01H ;;定時(shí)方式1MOV TL0, #0B0HMOV TH0, #3CH ; ; 賦初值LIGHT EQU60H;定義指示燈數(shù)據(jù)存放地址單元D_DAT0EQU6AHD_DAT1EQU6BHD_DAT2EQU6CHD_DAT3EQU6DHD_DAT4EQU6EHD_DAT5EQU6FHD_DAT6 EQU 70HD_DAT7 EQU 71HD_DAT8 EQU 72HDATAED EQU 73H;定義顯示數(shù)據(jù)單元 MOVLIGHT,#21H;初始化指示燈數(shù)據(jù) MOV D_DAT8,#1 MAIN: LCALL ZT0;調(diào)用狀態(tài)0子程序 LCALL

33、ZT1;調(diào)用狀態(tài)1子程序 LCALLZT2;調(diào)用狀態(tài)2子程序 LCALLZT3;調(diào)用狀態(tài)3子程序 AJMP MAIN ;*;4種狀態(tài)子程序;*ZT0: MOV A,LIGHT CPL A MOV P2,A MOV R2, #56 MOV R4, #50 MOV R7, #7 LCALLSHOW;調(diào)用數(shù)碼管循環(huán)點(diǎn)亮子程序 NOP RETZT1: MOV LIGHT,#11H MOV A,LIGHT CPL A MOV P2,A MOV R2, #6 MOV R4, #6 MOV R7, #0 LCALLSHOW;調(diào)用數(shù)碼管循環(huán)點(diǎn)亮子程序NOP RETZT2: MOV LIGHT,#0CH MOV

34、 A,LIGHT CPL A MOV P2,A MOV R2, #24 MOV R4, #30 MOV R7, #0 LCALLSHOW;調(diào)用數(shù)碼管循環(huán)點(diǎn)亮子程序NOP RETZT3: MOV LIGHT,#0AH MOV A,LIGHT CPL A MOV P2,A MOV R2, #6 MOV R4, #6 MOV R7, #0 LCALLSHOW;調(diào)用數(shù)碼管循環(huán)點(diǎn)亮子程序NOP RET SHOW: MOV R3,#250MOV DATAED , #4 MOV A, R2 MOV B, #100 DIV AB MOVD_DAT0, A MOV A, B MOV B, #10 DIV AB MOV D_DAT1,A MOV A, B MOV D_DAT2, A MOV A, R4 MOV B, #100 DIV AB MOVD_DAT3, A MOV A, B MOV B, #10 DIV AB MOV D_DAT4,A MOV A, B MOV D_DAT5, A MOVP0,#0CLRP1.1;初始化有關(guān)I/O口CLRP1.2MOVR0,#D_DAT0;初始化顯示指針寄存器 ;R0指向第一位顯示數(shù)字MOVR1,#01H;初始化需點(diǎn)亮數(shù)碼管位置代碼NOPMAIN1:LCALLDISP;調(diào)用數(shù)碼管循環(huán)點(diǎn)亮子程序LCALLDELAY4;延時(shí)子程序同前,應(yīng)修

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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)論