基于SPCExx1A單片機(jī)控制的模擬交通燈系統(tǒng)畢業(yè)論文_第1頁(yè)
基于SPCExx1A單片機(jī)控制的模擬交通燈系統(tǒng)畢業(yè)論文_第2頁(yè)
基于SPCExx1A單片機(jī)控制的模擬交通燈系統(tǒng)畢業(yè)論文_第3頁(yè)
基于SPCExx1A單片機(jī)控制的模擬交通燈系統(tǒng)畢業(yè)論文_第4頁(yè)
基于SPCExx1A單片機(jī)控制的模擬交通燈系統(tǒng)畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩38頁(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、xxxx畢畢 業(yè)業(yè) 設(shè)設(shè) 計(jì)計(jì) 任任 務(wù)務(wù) 書書專業(yè)專業(yè) 應(yīng)用電子技術(shù)應(yīng)用電子技術(shù)年級(jí)年級(jí) 20 xx 級(jí)級(jí)班級(jí)班級(jí) 一班一班姓名姓名 xx 學(xué)號(hào)學(xué)號(hào) 20 xx0203052畢業(yè)設(shè)計(jì)指導(dǎo)須知一、畢業(yè)設(shè)計(jì)是高職教學(xué)過(guò)程中一個(gè)十分重要的環(huán)節(jié)。是鍛煉學(xué)生運(yùn)用所學(xué)知識(shí)正確分析和解決實(shí)際問(wèn)題的一個(gè)重要方面,也是高職培養(yǎng)應(yīng)用型專門人才的要求。二、導(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ì)。三、學(xué)生應(yīng)以嚴(yán)肅認(rèn)真,實(shí)事求是的態(tài)度完成設(shè)計(jì)。要獨(dú)立思考,自己動(dòng)手,不得抄襲或找人代筆。四、畢業(yè)設(shè)計(jì)選題要符合

2、專業(yè)培養(yǎng)目標(biāo)的要求。論文(任務(wù)書)寫作要做到論點(diǎn)明確、論據(jù)充分,論理透徹,語(yǔ)言準(zhǔn)確恰當(dāng),書面整潔、字跡工整,圖紙應(yīng)清晰、工整,符合設(shè)計(jì)要求,符合國(guó)家有關(guān)標(biāo)準(zhǔn)和部頒標(biāo)準(zhǔn)。字?jǐn)?shù)、圖紙數(shù)量符合有關(guān)要求。并在規(guī)定的時(shí)間內(nèi)完成。五、答辯過(guò)程中學(xué)生要嚴(yán)認(rèn)真,文明禮貌,謙虛謹(jǐn)慎,認(rèn)真回答答辯主持人,委員等提出的問(wèn)題。六、填報(bào)有關(guān)表格時(shí),應(yīng)按項(xiàng)目要求逐項(xiàng)填實(shí)、填全、填清。學(xué)號(hào)20 xx0203052姓名xx學(xué)制三年專業(yè)應(yīng)用電子技術(shù)年級(jí)20 xx 級(jí)教學(xué)班負(fù)責(zé)人xx班級(jí)1 班指導(dǎo)教師姓名xx職務(wù)或職稱助教設(shè) 計(jì) 題 目模擬交通燈系統(tǒng)指導(dǎo)教師評(píng)語(yǔ):成績(jī): 指導(dǎo)教師簽名: 工作單位 年 月 日系復(fù)審意見(jiàn):成績(jī): 復(fù)

3、審人簽名: 職稱: 公章 年 月 日教務(wù)處終審意見(jiàn):公章 年 月 日答答 辯辯 情情 況況 記記 錄錄答 辯 情 況答 辯 題 目正確基本正確經(jīng)提示回 答不正確未回答此表由主持答辯的同志填寫。答辯委員會(huì)(或小組)評(píng)語(yǔ):成績(jī): 主持答辯人簽名: 職稱: 月 日一、畢業(yè)設(shè)計(jì)的任務(wù)和具體要求:(一)任務(wù)1鞏固和提高學(xué)生學(xué)過(guò)的基礎(chǔ)理論和專業(yè)知識(shí)。2提高學(xué)生運(yùn)用所學(xué)專業(yè)知識(shí)進(jìn)行獨(dú)立思考和綜合分析、解決實(shí)際問(wèn)題的能力。3培養(yǎng)學(xué)生掌握正確的思維方法和利用軟件和硬件解決實(shí)際問(wèn)題的基本技能。4增強(qiáng)學(xué)生對(duì)實(shí)際工藝技術(shù)、電子技術(shù)和設(shè)備技術(shù)等方面的認(rèn)識(shí),掌握分析處理方法,進(jìn)行調(diào)試、計(jì)算等基本技能的訓(xùn)練,使之具有一定程

4、度的實(shí)際工作能力。5使學(xué)生掌握科研、資料查詢的基本方法以及獲取新知識(shí)的能力。6促使學(xué)生學(xué)習(xí)和獲取新知識(shí),掌握自我學(xué)習(xí)的能力。7通過(guò)參與企業(yè)實(shí)際工作,使學(xué)生了解社會(huì)和工作,在職業(yè)道德、社會(huì)公德和綜合素質(zhì)具方面得到提高,具備一定的實(shí)際工作能力和社會(huì)適應(yīng)能。(二)具體要求1實(shí)事求是的態(tài)度完成設(shè)計(jì),要獨(dú)立思考,自己動(dòng)手,不得抄襲或找人代筆。2使學(xué)生復(fù)習(xí)、鞏固所學(xué)過(guò)的理論與專業(yè)知識(shí),并予以適當(dāng)?shù)纳罨?進(jìn)一步訓(xùn)練學(xué)生的基本技能(如:搜集資料、整理數(shù)據(jù)、制表繪圖、發(fā)現(xiàn)與分析問(wèn)題、尋求解決問(wèn)題的方案、撰寫學(xué)術(shù)論文等)。4論文(任務(wù)書)寫作要做到論點(diǎn)明確、論據(jù)充分,論理透徹,語(yǔ)言準(zhǔn)確恰當(dāng),書面整潔、字跡工整,

5、圖紙應(yīng)清晰、工整,符合設(shè)計(jì)要求,符合國(guó)家有關(guān)標(biāo)準(zhǔn)和部頒標(biāo)準(zhǔn)。字?jǐn)?shù)、圖紙數(shù)量符合有關(guān)要求。并在規(guī)定的時(shí)間內(nèi)完成。二、畢業(yè)設(shè)計(jì)應(yīng)完成的圖紙:圖 1-1 路口交通示意圖,見(jiàn) 2 頁(yè)圖 1-2 通行示意圖,見(jiàn) 2 頁(yè)圖 2-1 spcexx1a 內(nèi)部結(jié)構(gòu)圖,見(jiàn) 4 頁(yè)圖 2-2 61 板實(shí)物圖,見(jiàn) 9 頁(yè)圖 2-3 測(cè)試流程圖,見(jiàn) 10 頁(yè)圖 2-4 交通燈模組實(shí)物圖,見(jiàn) 11 頁(yè)圖 3-1 系統(tǒng)結(jié)構(gòu)框圖,見(jiàn) 12 頁(yè)圖 3-2 硬件連線圖,見(jiàn) 13 頁(yè)圖 3-3 功能框圖,見(jiàn) 13 頁(yè)圖 4-1 spcexx1a 最小系統(tǒng),見(jiàn) 14 頁(yè)圖 4-2 電源模塊電路圖,見(jiàn) 15 頁(yè)圖 4-3 交通燈模組

6、v3.0_led 板實(shí)物圖,見(jiàn) 15 頁(yè)圖 4-4 led 板電路,見(jiàn) 16 頁(yè)圖 4-5 交通燈模組 v3.0_led 驅(qū)動(dòng)板實(shí)物圖,見(jiàn) 16 頁(yè)圖 4-6 led 驅(qū)動(dòng)電路,見(jiàn) 17 頁(yè)圖 4-7 61 板上 j5 的選擇,見(jiàn) 17 頁(yè)圖 4-8 led 板與驅(qū)動(dòng)板的連接,見(jiàn) 18 頁(yè)圖 4-9 狀態(tài) 1,見(jiàn) 19 頁(yè)圖 4-10 狀態(tài) 3,見(jiàn) 20 頁(yè)圖 4-11 狀態(tài) 5,見(jiàn) 21 頁(yè)圖 4-12 狀態(tài) 7,見(jiàn) 22 頁(yè)圖 4-13 操作流程圖,見(jiàn) 23 頁(yè)圖 5-1 主程序流程圖,見(jiàn) 25 頁(yè)三、其他要求:無(wú)四、畢業(yè)設(shè)計(jì)的期限:自 2008 年 9 月 1 日 至 2008 年 10

7、 月 10 日五、畢業(yè)設(shè)計(jì)(論文)進(jìn)度計(jì)劃:起 至 日 期工 作 內(nèi) 容備 注09-01 到 09-xx09-07 到 09-2009-21 到 09-2810-01 到 10-10擬定課題,元件采購(gòu),c 語(yǔ)言學(xué)習(xí)分析原理,設(shè)計(jì)電路、程序搭建硬件電路,調(diào)試程序畢業(yè)論文撰寫模擬交通燈系統(tǒng)摘 要在現(xiàn)代社會(huì)城市交通越來(lái)越擁擠,塞車現(xiàn)象越來(lái)越嚴(yán)重。在北京塞車已經(jīng)是司空見(jiàn)慣的事情,塞上半個(gè)小時(shí)都不足為奇。交通指揮設(shè)施就變得越來(lái)越重要了,本論文結(jié)合實(shí)際應(yīng)用使用單片機(jī)完成模擬交通燈控制系統(tǒng)。本方案利用 spcexx1a 為主控制器,配合交通燈模組 v3.0 設(shè)計(jì)的交通燈控制系統(tǒng)。該系統(tǒng)在適當(dāng)?shù)臅r(shí)候控制點(diǎn)亮綠

8、色、黃色或者紅色的 led 燈,示意行人或者車輛可以通行或者不可以通行;另外通過(guò)數(shù)碼管倒計(jì)時(shí),示意車輛或者行人不可以通行時(shí)需要等待的時(shí)間或者通行時(shí)還有多少的剩余時(shí)間。 目 錄第 1 章 前言.11.1 選題背景.11.2 路口交通簡(jiǎn)介.21.3 交通燈的分類 .31.4 交通燈功能簡(jiǎn)介 .3第 2 章 芯片簡(jiǎn)介.42.1 spcexx1a 單片機(jī).42.1.1 spcexx1a 簡(jiǎn)介 .42.1.2 芯片特性.52.2 spcexx1a 精簡(jiǎn)開(kāi)發(fā)板 .72.2.1 61 板的功能簡(jiǎn)介 .72.2.2 61 板的自檢 .92.3 交通燈模組 v3.0 系統(tǒng)概述.102.3.1 功能簡(jiǎn)介 .102

9、.3.2 電氣參數(shù) .112.3.3 注意事項(xiàng) .11第 3 章系統(tǒng)總體方案.123.1 硬件框圖.123.2 電路連接圖.123.3 功能框圖.13第 4 章 系統(tǒng)硬件設(shè)計(jì).144.1 spcexx1a 最小系統(tǒng).144.2 電源模塊.144.3 led 板 .154.4 led 驅(qū)動(dòng)電路 .164.5 硬件連接步驟及流程 .17第 5 章 系統(tǒng)軟件設(shè)計(jì).245.1 軟件結(jié)構(gòu).245.2 主程序流程圖.245.3 主程序說(shuō)明 .25第 6 章 調(diào)試故障分析.27第 7 章 結(jié)語(yǔ).287.1 全文總結(jié).287.2 工作展望.28參考文獻(xiàn)、資料索引.29致 謝.30 模擬交通燈系統(tǒng)- 1 -第

10、1 章 前言1.1 選題背景 隨著社會(huì)經(jīng)濟(jì)的發(fā)展,城市交通問(wèn)題越來(lái)越引起人們的關(guān)注。人、車、路三者關(guān)系的協(xié)調(diào),已成為交通管理部門需要解決的重要問(wèn)題之一。城市交通控制系統(tǒng)是用于城市交通數(shù)據(jù)監(jiān)測(cè)、交通信號(hào)燈控制與交通疏導(dǎo)的計(jì)算機(jī)綜合管理系統(tǒng),它是現(xiàn)代城市交通監(jiān)控指揮系統(tǒng)中最重要的組成部分。 隨著城市機(jī)動(dòng)車量的不斷增加,許多大城市如北京、上海、南京等出現(xiàn)了交通超負(fù)荷運(yùn)行的情況,因此,自 80 年代后期,這些城市紛紛修建城市高速道路,在高速道路建設(shè)完成的初期,它們也曾有效地改善了交通狀況。然而,隨著交通量的快速增長(zhǎng)和缺乏對(duì)高速道路的系統(tǒng)研究和控制,高速道路沒(méi)有充分發(fā)揮出預(yù)期的作用。而城市高速道路在構(gòu)造

11、上的特點(diǎn),也決定了城市高速道路的交通狀況必然受高速道路與普通道路耦合處交通狀況的制約。所以,如何采用合適的控制方法,最大限度利用好耗費(fèi)巨資修建的城市高速道路,緩解主干道與匝道、城區(qū)同周邊地區(qū)的交通擁堵?tīng)顩r,越來(lái)越成為交通運(yùn)輸管理和城市規(guī)劃部門亟待解決的主要問(wèn)題。單片機(jī)技術(shù)的出現(xiàn)給現(xiàn)代工業(yè)測(cè)控領(lǐng)域帶來(lái)了一次技術(shù)革命。目前,單片機(jī)仍以其高可靠性、高性價(jià)比,在工業(yè)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、智能畫儀器儀表、智能家電等諸多領(lǐng)域得到了廣泛的應(yīng)用。作為將要從事單片機(jī)應(yīng)用系統(tǒng)開(kāi)發(fā)方面的技術(shù)人員,掌握單片機(jī)的應(yīng)用技術(shù)是必要的。 在單片機(jī)的應(yīng)用過(guò)程中,單片機(jī)只是應(yīng)用系統(tǒng)的一個(gè)核心部件,為把單片機(jī)系統(tǒng)應(yīng)用于不同的領(lǐng)域

12、,只掌握單片機(jī)的基礎(chǔ)知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,要想構(gòu)成一個(gè)完善的應(yīng)用系統(tǒng),還要熟悉執(zhí)行機(jī)構(gòu)及硬件接口電路的應(yīng)用特性,同時(shí),還應(yīng)該掌握系統(tǒng)的結(jié)構(gòu)布局、印刷電路板的結(jié)構(gòu)布局及軟件的設(shè)計(jì)技巧這些書本上學(xué)不到的知識(shí),因此為設(shè)計(jì)出完善模擬交通燈系統(tǒng)- 2 -的應(yīng)用系統(tǒng),必須在實(shí)際工作中勤于實(shí)踐,逐步積累這方面的經(jīng)驗(yàn) 。本方案要求利用凌陽(yáng)科技公司的凌陽(yáng) 16 位單片機(jī) spcexx1a 作為主控芯片和交通燈模組 v3.0 包括一塊驅(qū)動(dòng)電路板(交通燈模組 v3.0_驅(qū)動(dòng)板)和四塊 led 板(交通燈模組v3.0_led 板)。充分利用 spcexx1a 精簡(jiǎn)開(kāi)發(fā)板(簡(jiǎn)稱 61 板)上面的三個(gè)按鍵,完成一個(gè)簡(jiǎn)易交通燈

13、系統(tǒng)。1.2 路口交通簡(jiǎn)介 十字路口交通情況如下圖所示:圖 1-1 路口交通示意圖(注:r 表示車輛右拐 l:表示車輛左拐 s:表示車輛直行 p:表示人行 數(shù)字1、2、3、4 表示路口 1、2、3、4)模擬交通燈系統(tǒng)- 3 -上圖中,常規(guī)交通燈的綠燈亮狀態(tài)(通行)順序?yàn)? 圖 1-2 通行示意圖其中, “1-2”表示 1p 和 2p 可以通過(guò)路口 2 通行;“2-3”表示 2p 和 3p 可以通過(guò)路口 3 通行;“3-4”表示 3p 和 4p 可以通過(guò)路口 4 通行;“4-1”表示 4p 和 1p 可以通過(guò)路口 1 通行。1.3 交通燈的分類 交通燈包括交通信號(hào)燈、交通工具信號(hào)燈和交通工具照明

14、燈三類:交通信號(hào)燈:它是為管理交通工具和行人的動(dòng)向,傳達(dá)一種命令而設(shè)置的一類固定不動(dòng)的燈具。交通信號(hào)包括用光的顏色、閃爍和排列組合成的燈光信號(hào)和能顯示發(fā)光文字、符號(hào)的燈光標(biāo)志兩種。后者只用于陸上道路交通中,起指示限速、導(dǎo)向和表示道路情況等的作用。交通信號(hào)燈可按交通的種類分為:用于陸上交通的鐵路信號(hào)燈、道路交通信號(hào)燈,用于水上交通的航標(biāo)燈(大型的稱燈塔)和用于空中交通的機(jī)場(chǎng)燈、障礙燈等。 交通工具信號(hào)燈:它是安裝在交通工具上以顯示其存在和運(yùn)動(dòng)狀態(tài)的一類燈具。包括飛機(jī)燈、船燈、火車燈和汽車燈。 交通工具照明燈:它是安裝在交通工具內(nèi)部或外部起照明作用的燈具。其中照明前方或搜索目標(biāo)的一類燈具稱強(qiáng)光照明

15、燈,它們有規(guī)定的光分布,如火車和汽車上的前照燈、船用探照燈、蘇伊士運(yùn)河燈和飛機(jī)的著陸滑行燈等。 不同類型的交通燈的外形、結(jié)構(gòu)、光源、光分布和供電方式等有所不同,但光色和外殼防護(hù)性能基本相同。1.4 交通燈功能簡(jiǎn)介本方案的交通燈就是一個(gè)簡(jiǎn)易的交通指示燈控制系統(tǒng), 由一套 spcexx1a 精簡(jiǎn)開(kāi)發(fā)模擬交通燈系統(tǒng)- 4 -板(簡(jiǎn)稱 61 板)和一套交通燈模組構(gòu)成,功能有: 1. 系統(tǒng)有兩個(gè)狀態(tài),設(shè)置狀態(tài)和顯示狀態(tài),利用 61 板的鍵盤的 key1 鍵盤可以進(jìn)行兩個(gè)狀態(tài)間的切換; 2. 開(kāi)機(jī)時(shí),系統(tǒng)為顯示狀態(tài),四個(gè)路口數(shù)碼管從默認(rèn)的倒計(jì)時(shí)時(shí)間(本系統(tǒng)四個(gè)路口分別為 24、24、49、74)開(kāi)始倒計(jì)時(shí)

16、; 3. 設(shè)置狀態(tài)時(shí)利用 61 板的 key1key3 鍵盤可以設(shè)置各路口直行通行倒計(jì)時(shí)時(shí)間,設(shè)置的路口數(shù)碼管閃爍顯示,各路口的通行時(shí)間可以不相等,其中 key2 為加 1 鍵,key3 為減1 鍵,key1 為確定鍵; 4. 顯示狀態(tài)時(shí),交通燈模組的四個(gè) led 板的數(shù)碼管進(jìn)行倒計(jì)時(shí);led 板各組的紅綠燈交通指示;如果一個(gè) led 板上有三個(gè)綠燈亮,這時(shí)候數(shù)碼管顯示的是通行時(shí)間,否則,數(shù)碼管顯示的是等待時(shí)間;顯示過(guò)程中按 key1 鍵可以重新進(jìn)入設(shè)置狀態(tài)。第 2 章 芯片簡(jiǎn)介2.1 spcexx1a 單片機(jī) 2.1.1 spcexx1a 簡(jiǎn)介spcexx1a 是凌陽(yáng)科技研發(fā)生產(chǎn)的性價(jià)比很高

17、的一款十六位單片機(jī),具有易學(xué)易用且效率較高的一套指令系統(tǒng)和集成開(kāi)發(fā)環(huán)境。在此環(huán)境中,支持標(biāo)準(zhǔn) c 語(yǔ)言,可以實(shí)現(xiàn) c語(yǔ)言與匯編語(yǔ)言的互相調(diào)用.spcexx1a 片內(nèi)還集成了一個(gè) ice(在線仿真電路)接口,使得對(duì)該芯片的編程、仿真變得非常方便,而 ice 接口不占用芯片上的硬件資源,結(jié)合凌陽(yáng)科技提供的集成開(kāi)發(fā)環(huán)境(unsp ide),用戶可以進(jìn)行在線調(diào)試、仿真;而程序的下載(燒寫)也是通過(guò)該接口完成。 模擬交通燈系統(tǒng)- 5 - 圖 2-1 spcexx1a 內(nèi)部結(jié)構(gòu)圖2.1.2 芯片特性1. 16 位 nsp 微處理器; 2. 工作電壓:內(nèi)核工作電壓 vdd 為 3.03.6v(cpu),io

18、 口工作電壓 vddh 為3.05.5v(i/o); 3. cpu 時(shí)鐘:0.32mhz49.152mhz; 4. 內(nèi)置 2k 字 sram; 5. 內(nèi)置 32k 字 flash; 6. 可編程音頻處理; 7. 晶體振蕩器; 8. 系統(tǒng)處于備用狀態(tài)下(時(shí)鐘處于停止?fàn)顟B(tài)),耗電小于 2a/3.6v; 9. 2 個(gè) 16 位可編程定時(shí)器/計(jì)數(shù)器(可自動(dòng)預(yù)置初始計(jì)數(shù)值); 模擬交通燈系統(tǒng)- 6 -10. 2 個(gè) 10 位 dac(數(shù)-模轉(zhuǎn)換)輸出通道; 11. 32 位通用可編程輸入/輸出端口; 12. 14 個(gè)中斷源可來(lái)自定時(shí)器 a/b,時(shí)基,2 個(gè)外部時(shí)鐘源輸入,鍵喚醒; 13. 具備觸鍵喚醒的

19、功能; 14. 使用凌陽(yáng)音頻編碼 sacm_s240 方式(2.4k 位/秒),能容納 210 秒的語(yǔ)音數(shù)據(jù); 15. 鎖相環(huán) pll 振蕩器提供系統(tǒng)時(shí)鐘信號(hào); 16. 32768hz 實(shí)時(shí)時(shí)鐘; 17. 7 通道 10 位電壓模-數(shù)轉(zhuǎn)換器(adc)和單通道聲音模-數(shù)轉(zhuǎn)換器; 18. 聲音模-數(shù)轉(zhuǎn)換器輸入通道內(nèi)置麥克風(fēng)放大器和自動(dòng)增益控制(agc)功能; 19. 具備串行設(shè)備接口; 20. 低電壓復(fù)位(lvr)功和低電壓監(jiān)測(cè)(lvd)功能; 21. 內(nèi)置在線仿真板(ice,in- circuit emulator)接口。另外,spcexx1a 單片機(jī)具有易學(xué)易用的效率較高的一套指令系統(tǒng)和集成開(kāi)

20、發(fā)環(huán)境。在此環(huán)境中,支持標(biāo)準(zhǔn) c 語(yǔ)言,可以實(shí)現(xiàn) c 語(yǔ)言與凌陽(yáng)匯編語(yǔ)言的互相調(diào)用,并且提供了語(yǔ)音錄放的庫(kù)函數(shù),只要了解庫(kù)函數(shù)的使用,就會(huì)很容易完成語(yǔ)音錄放,這些都為軟件開(kāi)發(fā)提供了方便的條件。 spcexx1a 具有 plcc84 和 lqfp80 兩種封裝形式,其引腳功能見(jiàn)表 1 和表 2:模擬交通燈系統(tǒng)- 7 -表 1模擬交通燈系統(tǒng)- 8 -表 22.2 spcexx1a 精簡(jiǎn)開(kāi)發(fā)板 2.2.1 61 板的功能簡(jiǎn)介spcexx1a精簡(jiǎn)開(kāi)發(fā)板(簡(jiǎn)稱61板),是以凌陽(yáng)16位單片機(jī)spcexx1a為核心的精簡(jiǎn)開(kāi)發(fā)仿真實(shí)驗(yàn)板,大小相當(dāng)于一張撲克牌,是“凌陽(yáng)科技大學(xué)計(jì)劃”專為大學(xué)生、電子愛(ài)好者等進(jìn)行

21、電子實(shí)習(xí)、課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)、電子制作及電子競(jìng)賽所設(shè)計(jì)的,也可作為單片機(jī)項(xiàng)目初期研發(fā)使用。61板除了具備單片機(jī)最小系統(tǒng)電路外,還包括有電源電路、音頻電路(含mic輸入部分和dac音頻輸出部分)、復(fù)位電路等,采用電池供電,方便學(xué)生隨身攜帶!使學(xué)生在掌握軟件的同時(shí),熟悉單片機(jī)硬件的設(shè)計(jì)制作,鍛煉學(xué)生的模擬交通燈系統(tǒng)- 9 -動(dòng)手能力,也為單片機(jī)學(xué)習(xí)者和開(kāi)發(fā)者創(chuàng)造了一個(gè)良好的學(xué)習(xí)條件和開(kāi)發(fā)新產(chǎn)品的機(jī)會(huì)! 61板上有調(diào)試器接口(probe接口)以及下載線(ez_probe)接口,分別可接凌陽(yáng)科技的在線調(diào)試器、簡(jiǎn)易下載線,配合unsp ide,可方便地在板上實(shí)現(xiàn)程序的下載、在線仿真調(diào)試。 61板上的主要

22、功能模塊如下: 1spcexx1a單片機(jī)最小系統(tǒng)外圍電路模塊; 2電源輸入模塊; 3音頻電路(包含mic輸入、dac音頻功放輸出)模塊; 4按鍵模塊; 5i/o端口接口模塊; 6調(diào)試、下載接口模塊; 下面將61板各區(qū)的功能進(jìn)行一下簡(jiǎn)要的介紹,以便在后面的編程調(diào)試時(shí)知道是要操作硬件的哪一部分。電源區(qū):為整個(gè)系統(tǒng)提供電源,通常采用系統(tǒng)配套的電池盒進(jìn)行供電,只要放入3節(jié)5號(hào)電池就可以滿足供電需求了。下載區(qū):程序就是通過(guò)這邊的接口下載到spcexx1a單片機(jī)的,當(dāng)然,在進(jìn)行在線調(diào)試時(shí)也能上傳一些硬件信息到開(kāi)發(fā)環(huán)境中。音頻區(qū):這里的麥克風(fēng)是用來(lái)進(jìn)行語(yǔ)音輸入的,還有一個(gè)喇叭的接口用來(lái)進(jìn)行語(yǔ)音播放。spce

23、xx1a與周邊:這就是整塊板子的大腦,所有控制信息都是從這里發(fā)出的,那些周邊器件用來(lái)協(xié)助spcexx1a單片機(jī)正常工作。鍵控區(qū):采用這幾個(gè)按鍵我們可以做一些簡(jiǎn)單的試驗(yàn),比如說(shuō)當(dāng)板子里下載了復(fù)讀機(jī)的程序,按這幾個(gè)按鍵就可以分別用來(lái)進(jìn)行錄音、暫停和播放,如果下載了語(yǔ)音萬(wàn)年歷的程序,這幾個(gè)按鍵就可以用來(lái)設(shè)定初始時(shí)間和控制播放當(dāng)前時(shí)間等。復(fù)位區(qū):這里是由幾個(gè)簡(jiǎn)單的電子元器件組成,當(dāng)按下這里面的按鍵后,單片機(jī)就重新開(kāi)始工作,也可以說(shuō)成是單片機(jī)里的程序從第一條開(kāi)始重新運(yùn)行。端口區(qū):用于對(duì)外掛硬件的控制,或者獲取外部硬件的一些狀態(tài)以便spcexx1a來(lái)進(jìn)行處理。模擬交通燈系統(tǒng)- 10 -圖 2-2 61 板

24、實(shí)物圖2.2.2 61 板的自檢第一步 連接電源,可以連接電池盒(3節(jié)),也可以直接接5v的穩(wěn)壓源; 現(xiàn)象:當(dāng)電源接通時(shí),紅色的發(fā)光二極管會(huì)點(diǎn)亮。同時(shí)會(huì)有語(yǔ)音提示:“歡迎進(jìn)入自檢模式”,此時(shí)因?yàn)檫€沒(méi)有連線,所以會(huì)聽(tīng)到:“i/o測(cè)試失敗”的警告,進(jìn)行第二步的操作; 第二步 用排線分別將ioa口的低8位和iob口的低8位相連,ioa口的高8位和iob口的高8位相連,然后按下reset復(fù)位鍵; 現(xiàn)象:當(dāng)按下reset復(fù)位鍵后,程序重新開(kāi)始執(zhí)行,語(yǔ)音提示“歡迎進(jìn)入自檢模式”,當(dāng)聽(tīng)到語(yǔ)音提示“i/o測(cè)試成功”后,進(jìn)行第三步操作; 第三步 按k1鍵進(jìn)行睡眠功能測(cè)試; 現(xiàn)象:如果測(cè)試成功,會(huì)看到綠色的發(fā)光二

25、極管閃亮一下,并有語(yǔ)音提示 “睡眠測(cè)試成功”,否則提示“睡眠測(cè)試失敗”,然后進(jìn)行第四步操作; 第四步 按下k2鍵進(jìn)行a/d轉(zhuǎn)換的測(cè)試; 現(xiàn)象:語(yǔ)音提示:“a/d測(cè)試成功”,否則提示“a/d測(cè)試失敗”,進(jìn)入最后一步操作; 第五步 拔掉第一步測(cè)試時(shí)的排線,并按下k3鍵測(cè)試mic輸入及d/a轉(zhuǎn)換輸出是否正常;模擬交通燈系統(tǒng)- 11 -(注:在按下k3鍵后,喇叭會(huì)發(fā)出嘯叫聲,用手按在mic上可消除嘯叫聲。) 現(xiàn)象:可以在mic上輕輕的拍幾下,同時(shí)聽(tīng)是否有聲音輸出,如果有,則說(shuō)明mic輸入和d/a轉(zhuǎn)換輸出部分正常。 以上操作,只有當(dāng)i/o測(cè)試成功后,按鍵才會(huì)有效。 圖2-3 測(cè)試流程圖模擬交通燈系統(tǒng)-

26、12 -2.3 交通燈模組 v3.0 系統(tǒng)概述 2.3.1 功能簡(jiǎn)介1交通燈模組 v3.0 由一塊驅(qū)動(dòng)板(交通燈模組 v3.0_驅(qū)動(dòng)板)和四塊 led 板(交通燈模組 v3.0_led 板)構(gòu)成,使用時(shí),只需要把四塊 led 板分別插接(或者連接)在驅(qū)動(dòng)板的j1j4 四個(gè)接口上即可使用;通過(guò)軟件設(shè)計(jì),控制四塊 led 板上的數(shù)碼管倒計(jì)時(shí),并控制紅、綠、黃二極管的點(diǎn)亮與熄滅,就可以實(shí)現(xiàn)交通燈功能。2led 板中每個(gè)方向提供四組交通 led 燈(包括左轉(zhuǎn)、直行、右轉(zhuǎn)、人行道四組),每組交通燈包括紅、黃、綠三個(gè)燈,可以實(shí)現(xiàn)交通的通行控制; led 板中每個(gè)方向提供兩個(gè)數(shù)碼管,可以實(shí)現(xiàn) 100 以內(nèi)的

27、倒計(jì)時(shí)。 3交通燈模組實(shí)物圖如圖 24,使用時(shí),直接用 10pin 排線連接驅(qū)動(dòng)板的單片機(jī)接口和 61 板的 i/o 口即可使用。 圖2-4 交通燈模組實(shí)物圖2.3.2 電氣參數(shù) 1工作電壓:dc4.5v(推薦使用 5v 穩(wěn)壓源); 2尺寸: 驅(qū)動(dòng)電路板:78.7mm67.9mm; led 板:45.2mm53.2mm模擬交通燈系統(tǒng)- 13 -2.3.3 注意事項(xiàng) 1不要把 61 板的“+”、“-”與模組的“+”、“-”接反; 2為了保證數(shù)碼管及 led 燈的亮度,61 板上的 j5 接口要選擇 5v,推薦使用 5v 的穩(wěn)壓源給 61 板供電; 3向驅(qū)動(dòng)板上插(或者用排線連接)led 板時(shí)注意

28、不要接反。 第 3 章系統(tǒng)總體方案3.1 硬件框圖本系統(tǒng)由一套 61 板和一套交通燈模組構(gòu)成,如圖 31,spcexx1a 通過(guò) i/o 口控制交通燈模組中各 led 板的數(shù)碼管和發(fā)光二極管的顯示;通過(guò) 61 板上的三個(gè)鍵盤key1key3 可以設(shè)置各 led 板指示的路口通行倒計(jì)時(shí)時(shí)間。 圖 3-1 系統(tǒng)結(jié)構(gòu)框圖3.2 電路連接圖系統(tǒng)硬件連接如圖 32,把四個(gè) led 板連接到驅(qū)動(dòng)板上,利用三根 10pin 排線分別連接交通燈模組和 61 板的 j5 與 j9、j6 與 j6、j7 與 j7;連接 61 板電源,注意要把 61板的 j5 接口選擇為 5v。模擬交通燈系統(tǒng)- 14 -圖3-2

29、硬件連線圖3.3 功能框圖圖 3-3 功能框圖模擬交通燈系統(tǒng)- 15 -第 4 章 系統(tǒng)硬件設(shè)計(jì)4.1 spcexx1a 最小系統(tǒng)spcexx1a 最小系統(tǒng)包括 spcexx1a 芯片及其外圍的基本模塊,其中外圍的基本模塊有:晶振輸入模塊(osc)、鎖相環(huán)外圍電路(pll)、復(fù)位電路(reset)、指示燈(led)等,如圖 4.1 所示。 圖 4-1 spcexx1a 最小系統(tǒng)4.2 電源模塊61板電源模塊電路如圖 42,spcexx1a的內(nèi)核供電為3.3v,而i/o端口可接3.3v5v,所以在電源模塊(61板上)中有一個(gè)端口電平選擇跳線,如圖中的j5。 模擬交通燈系統(tǒng)- 16 -圖4-2 電

30、源模塊電路圖4.3 led 板led板電路如圖44,led板包含兩位數(shù)碼管u1、12個(gè)led燈d1d12和一個(gè)26的接口j1。其中,12個(gè)led燈構(gòu)成26的連接方式,d1d6的陰極連接到一個(gè)公共段g3上,d7d12的陰極連接到一個(gè)公共段g4上。當(dāng)g3為低電平、a為高電平的時(shí)候就可以點(diǎn)亮d1;同樣,如果要點(diǎn)亮d10,只要使g4為低電平、d為高電平即可。使用時(shí)可以直接通過(guò)j1口與驅(qū)動(dòng)板連接。 圖4-3 交通燈模組v3.0_led板實(shí)物圖 模擬交通燈系統(tǒng)- 17 -圖4-4 led板電路4.4 led 驅(qū)動(dòng)電路 如圖46,uln2803是常見(jiàn)的驅(qū)動(dòng)芯片,一片可提供8路的驅(qū)動(dòng)信號(hào)(關(guān)于uln2803的

31、詳細(xì)資料,請(qǐng)參考uln2803的datasheet),兩片uln2803共16路,用來(lái)驅(qū)動(dòng)8位數(shù)碼管及8組16led燈(每個(gè)led板上有兩組,4個(gè)led板共8組,詳細(xì)參考led板的電路圖)的陰極,其中u1為數(shù)碼管的驅(qū)動(dòng)芯片,u2為led燈的陰極驅(qū)動(dòng)芯片;8個(gè)三極管q1q8組成的共集電極電路用來(lái)驅(qū)動(dòng)8位數(shù)碼管的段及l(fā)ed燈的陽(yáng)極。 圖 4-5 交通燈模組 v3.0_led 驅(qū)動(dòng)板實(shí)物圖模擬交通燈系統(tǒng)- 18 -圖 4-6 led 驅(qū)動(dòng)電路4.5 硬件連接步驟及流程第一步:按照?qǐng)D 47 所示連接硬件,連接好下載線或者 probe,打開(kāi)電源。注意 61板上的 j5 要選擇 5v;led 板不要插反。

32、如圖 47 和圖 48 為正確連接。 圖4-7 61板上j5的選擇 模擬交通燈系統(tǒng)- 19 -圖4-8 led板與驅(qū)動(dòng)板的連接第二步:在交通燈模組v3.0democodetraffic路徑下雙擊打開(kāi)traffic.spj工程;rebuild all工程,把工程下載到61板上; 第三步:全速運(yùn)行,這時(shí)候可以觀察四個(gè)led板的數(shù)碼管和led燈的變化,體驗(yàn)交通燈的控制順序。此時(shí)四個(gè)led板數(shù)碼管倒計(jì)時(shí)和led燈的亮滅8種狀態(tài)循環(huán)進(jìn)行,如下: 狀態(tài)1:如圖49,紅綠燈亮滅及數(shù)碼管倒計(jì)時(shí)狀態(tài)為1s,1l,1-2p,3r,4r通行,路口1(j1)倒計(jì)時(shí)顯示24(表示直行和左拐通行時(shí)間),路口2(j2)倒計(jì)

33、時(shí)顯示24(表示直行和左拐等待時(shí)間),路口3(j3)倒計(jì)時(shí)顯示49(表示直行和左拐等待時(shí)間),路口4(j4)倒計(jì)時(shí)顯示74(表示直行和左拐等待時(shí)間)。所有數(shù)碼管開(kāi)始倒計(jì)時(shí),當(dāng)路口2的數(shù)碼管顯示3時(shí),進(jìn)入狀態(tài)2。(1表示j1、2表示j2、3表示j3、4表示j4,s表示直行,l表示左拐,r表示右拐,p表示人行) 模擬交通燈系統(tǒng)- 20 -圖4-9 狀態(tài)1狀態(tài)2:路口1倒計(jì)時(shí)顯示03,路口2倒計(jì)時(shí)顯示03,路口3倒計(jì)時(shí)顯示28,路口4倒計(jì)時(shí)顯示53。此時(shí)1s,1l,1-2p,3r由綠燈變黃燈,2s,2l,2-2p,1r由紅燈變黃燈閃爍。繼續(xù)倒計(jì)時(shí),路口1倒計(jì)時(shí)到00后,從74開(kāi)始倒計(jì)時(shí);路口2倒計(jì)時(shí)

34、到00后從24開(kāi)始倒計(jì)時(shí),進(jìn)入狀態(tài)3。 狀態(tài)3:如圖 410,紅綠燈亮滅及數(shù)碼管倒計(jì)時(shí)狀態(tài)為2s,2l,2-3p,4r,1r通行,路口1倒計(jì)時(shí)顯示74,路口2倒計(jì)時(shí)顯示24,路口3倒計(jì)時(shí)顯示24,路口4倒計(jì)時(shí)顯示49。模擬交通燈系統(tǒng)- 21 -圖4-10 狀態(tài)3狀態(tài)4:路口2倒計(jì)時(shí)顯示02,路口3倒計(jì)時(shí)顯示02,路口4倒計(jì)時(shí)顯示27,路口1倒計(jì)時(shí)顯示52。此時(shí)2s,2l,2-3p,4r由綠燈變黃燈,3s,3l,3-4p,2r由紅燈變黃燈。繼續(xù)倒計(jì)時(shí),路口2倒計(jì)時(shí)到00后,從74開(kāi)始倒計(jì)時(shí);路口3倒計(jì)時(shí)到00后從24開(kāi)始倒計(jì)時(shí),進(jìn)入狀態(tài)5。 狀態(tài)5:如圖4-11,紅綠燈亮滅及數(shù)碼管倒計(jì)時(shí)狀態(tài)為3

35、s,3l,3-4p,1r,2r通行,路口2倒計(jì)時(shí)顯示74,路口3倒計(jì)時(shí)顯示24,路口4倒計(jì)時(shí)顯示24,路口1倒計(jì)時(shí)顯示49。模擬交通燈系統(tǒng)- 22 -圖4-11 狀態(tài)5狀態(tài)6:路口3倒計(jì)時(shí)顯示02,路口4倒計(jì)時(shí)顯示02,路口1倒計(jì)時(shí)顯示27,路口2倒計(jì)時(shí)顯示52。此時(shí)3s,3l,3-4p,1r由綠燈變黃燈,4s,4l,4-1p,3r由紅燈變黃燈。繼續(xù)倒計(jì)時(shí),路口3倒計(jì)時(shí)到00后,從74開(kāi)始倒計(jì)時(shí);路口4倒計(jì)時(shí)到00后從24開(kāi)始倒計(jì)時(shí),進(jìn)入狀態(tài)7。 狀態(tài)7:如圖4-12,紅綠燈亮滅及數(shù)碼管倒計(jì)時(shí)狀態(tài)為4s,4l,4-1p,2r,3r通行,路口3倒計(jì)時(shí)顯示74,路口4倒計(jì)時(shí)顯示24,路口1倒計(jì)時(shí)顯

36、示24,路口2倒計(jì)時(shí)顯示49。模擬交通燈系統(tǒng)- 23 -圖4-12 狀態(tài)7狀態(tài)8:路口4倒計(jì)時(shí)顯示02,路口1倒計(jì)時(shí)顯示02,路口2倒計(jì)時(shí)顯示27,路口3倒計(jì)時(shí)顯示52。此時(shí)4s,4l,4-1p,2r由綠燈變黃燈,1s,1l,1-2p,4r由紅燈變黃燈。繼續(xù)倒計(jì)時(shí),路口4倒計(jì)時(shí)到00后,從74開(kāi)始倒計(jì)時(shí);路口1倒計(jì)時(shí)到00后從24開(kāi)始倒計(jì)時(shí),進(jìn)入狀態(tài)1,如此循環(huán)。第四步:如果要自己設(shè)置各路口的通行時(shí)間,按 61 板上的 key1 鍵進(jìn)入設(shè)置狀態(tài)。按 key1 開(kāi)始設(shè)置第一個(gè)(j1)led 板的數(shù)碼管顯示的通行時(shí)間,此時(shí)第一個(gè) led 板的數(shù)碼管閃爍,key2 為加 1 鍵,key3 位減 1

37、鍵;設(shè)置完第一個(gè),按 key1 鍵設(shè)置第二個(gè) led板,設(shè)置方法和設(shè)置第一個(gè) led 板相同;設(shè)置完成后設(shè)置第三個(gè)、第四個(gè),全部設(shè)置完成后,如果設(shè)置正確,按 key1 鍵后 4 個(gè) led 板的數(shù)碼管開(kāi)始顯示,且其發(fā)光二極管進(jìn)行相應(yīng)指示;如果沒(méi)有設(shè)置正確,系統(tǒng)不會(huì)進(jìn)行倒計(jì)時(shí),這時(shí)候需要按 key1 鍵重新進(jìn)行設(shè)計(jì)。 注意:由于每個(gè)路口只有兩位數(shù)碼管顯示倒計(jì)時(shí)時(shí)間,所以無(wú)論是通行時(shí)間,還是等待時(shí)間,都不能超過(guò) 99;一個(gè)路口的等待時(shí)間等于其他三個(gè)路口通行時(shí)間之和,如果模擬交通燈系統(tǒng)- 24 -相鄰三個(gè)路口設(shè)置的通行時(shí)間之和大于 99,則設(shè)置錯(cuò)誤,需要重新設(shè)置,按 key1 會(huì)自動(dòng)進(jìn)入設(shè)置狀態(tài)進(jìn)行

38、設(shè)置。 四個(gè)路口的通行時(shí)間可以設(shè)置相同,也可以不同。 操作流程如圖 4-13: 圖4-13 操作流程圖模擬交通燈系統(tǒng)- 25 -第 5 章 系統(tǒng)軟件設(shè)計(jì)5.1 軟件結(jié)構(gòu)本系統(tǒng)軟件包括 main.c、diguser.c、dig.asm、key.c、isr.asm 5 個(gè)源文件,其中: main.c 文件為主程序文件,控制系統(tǒng)在兩個(gè)狀態(tài)(設(shè)置狀態(tài)與顯示狀態(tài))的切換,設(shè)置狀態(tài)時(shí)通行時(shí)間的設(shè)置和顯示狀態(tài)時(shí)各數(shù)碼管的倒計(jì)時(shí)和發(fā)光二極管的點(diǎn)亮與熄滅。 diguser.c 為一個(gè)用戶函數(shù)文件,這個(gè)函數(shù)里定義了倒計(jì)時(shí)、顯示、熄滅等與數(shù)碼管和發(fā)光二極管相關(guān)的函數(shù)。 dig.asm 是一個(gè)針對(duì)交通燈模組專門寫的一

39、個(gè)數(shù)碼管和發(fā)光二極管寫的驅(qū)動(dòng)函數(shù)文件,包括初始化函數(shù)和動(dòng)態(tài)掃描函數(shù),其中動(dòng)態(tài)掃描函數(shù)要求在 1khz 的中斷服務(wù)函數(shù)中調(diào)用;同時(shí),通過(guò)這個(gè)文件可以設(shè)置 i/o 口。 key.c 是一個(gè)鍵盤掃描文件,包含鍵盤 i/o 口的初始化和鍵掃描函數(shù); isr.asm 是中斷服務(wù)函數(shù)文件,本系統(tǒng)中用到了兩個(gè)中斷服務(wù)函數(shù)文件,其中 2hz 中斷用來(lái)倒計(jì)時(shí),1khz 中斷用來(lái)刷新顯示。 5.2 主程序流程圖本系統(tǒng)有兩個(gè)狀態(tài):設(shè)置狀態(tài)和顯示狀態(tài),設(shè)置狀態(tài)時(shí)通過(guò)鍵盤來(lái)設(shè)置 4 個(gè)路口的通行時(shí)間(默認(rèn) 4 個(gè)路口的通行時(shí)間相同,各為 25s),被設(shè)置的路口數(shù)碼管會(huì)閃爍顯示;顯示狀態(tài)中又分了東邊路口指示直行通行,南邊

40、路口指示直行通行,西邊路口指示直行通行,北邊路口指示直行通行四個(gè)顯示狀態(tài);四個(gè)路口數(shù)碼管顯示倒計(jì)時(shí)時(shí)間。 主程序流程如圖 5-1 所示:上電后為顯示狀態(tài),系統(tǒng)按照默認(rèn)的倒計(jì)時(shí)時(shí)間進(jìn)行倒計(jì)時(shí)顯示,從東邊路口通行狀態(tài)開(kāi)始,按照東、南、西、北的方式順序進(jìn)行;在顯示的過(guò)程中,如果有 key1 鍵按下,則進(jìn)入設(shè)置狀態(tài)。 設(shè)置狀態(tài)時(shí),按 key1 進(jìn)入第一個(gè)路口的指示通行時(shí)間設(shè)置,按 key2 和 key3 進(jìn)行設(shè)置,設(shè)置完成后按 key1 切換到下一個(gè)路口設(shè)置,四個(gè)路口都設(shè)置完成后,先判斷設(shè)置模擬交通燈系統(tǒng)- 26 -是否正確,如果不正確,返回繼續(xù)設(shè)置。 由于一個(gè)路口通行完成后,需要等待其他三個(gè)路口通行

41、完成,所以等待的最大時(shí)間為其他三個(gè)路口的通行時(shí)間之和,如果其他三個(gè)路口的直行時(shí)間之和大于 100,系統(tǒng)就認(rèn)為設(shè)置出錯(cuò),這是因?yàn)閿?shù)碼管最多顯示 99。 開(kāi)始初始化為顯示狀態(tài)設(shè)置狀態(tài)?n鍵盤掃描,取鍵值ykey1?key2?key3?確認(rèn)yyyyyyyyynnnnnnnnn加一減一重新設(shè)置閃爍顯示全部設(shè)置完成?設(shè)置正確?設(shè)置為顯示狀態(tài)計(jì)算東邊路口指示的通行時(shí)間和其他路口指示的等待時(shí)間設(shè)置為東邊路口直行通行狀態(tài)。東邊路口指示直行通行設(shè)置為南邊路口直行通行狀態(tài)。南邊路口指示直行通行設(shè)置為西邊路口直行通行狀態(tài)。西邊路口指示直行通行設(shè)置為北邊路口直行通行狀態(tài)。北邊路口指示直行通行設(shè)置為設(shè)置狀態(tài)是否為顯示狀

42、態(tài)?是否為顯示狀態(tài)?是否為顯示狀態(tài)?是否為顯示狀態(tài)?圖 5-1 主程序流程圖5.3 主程序說(shuō)明圖 5-1 中,顯示狀態(tài)時(shí),各路口的直行狀態(tài),其實(shí)是圖 1-2 通行示意圖四個(gè)通行狀態(tài)的其中一個(gè)狀態(tài),所以這個(gè)狀態(tài)不但要允許直行通行,同時(shí)要允許圖 1-2 中各狀態(tài)下其他方向通行。比如在東邊路口直行通行狀態(tài)下,事實(shí)上該狀態(tài)函數(shù)里,按照?qǐng)D 1-模擬交通燈系統(tǒng)- 27 -2,應(yīng)該是 1l、1s、1-2p、3r、4r 狀態(tài),所以不但要允許東邊路口指示直行通行,也要允許東邊路口左拐和人行道指示通行,還要允許西邊和北邊路口右拐指示通行,程序段如下:ledshow(east_l,leftgrn,strtgrn,r

43、igtred,mansgrn); /東邊路口左拐、直行、人行道綠燈亮,右拐紅燈亮 ledshow(south_l,leftred,strtred,rigtred,mansred); /南邊路口全部紅燈亮 ledshow(west_l,leftred,strtred,rigtgrn,mansred); /西邊路口左拐、直行、人行道紅燈亮,右拐綠燈亮 ledshow(north_l,leftred,strtred,rigtgrn,mansred); /北邊路口左拐、直行、人行道紅燈亮,右拐綠燈亮另外,在四個(gè)顯示狀態(tài)里,都調(diào)用了鍵盤掃描函數(shù),如果 key1 按下,結(jié)束顯示狀態(tài),進(jìn)入設(shè)置狀態(tài)。程序段如

44、下:ikey = keyscan(); /取鍵值 if(ikey=1) /判斷 key1 是否按下 dirflag = 0; status = 1; /是,進(jìn)入設(shè)置狀態(tài) 這也是每次進(jìn)入一個(gè)顯示狀態(tài)前,先判斷是否為顯示狀態(tài)的原因。 每個(gè)顯示狀態(tài)的直行通行路口從設(shè)置好的通行時(shí)間開(kāi)始倒計(jì)時(shí),倒計(jì)時(shí)到 0 時(shí),從其他三個(gè)路口的通行時(shí)間之和開(kāi)始倒計(jì)時(shí);其他路口正常減 1 倒計(jì)時(shí)。程序段如下:while(status=show) max = snumset+wnumset+nnumset-1;/設(shè)置通行后的等待時(shí)間 dirflag = east_g; /設(shè)置方向狀態(tài)標(biāo)志為東邊路口車輛直行通行狀態(tài),east

45、_g 為 east green enum = enumset-1; /東邊路口數(shù)碼管從 enumset(設(shè)置通行時(shí)間)-1 開(kāi)始倒計(jì)時(shí) eaststrough(); /進(jìn)入 1l,1s,1p,3r,4r(通行 25s)狀態(tài),該函數(shù)在 diguser.c 文件中定義 if(status=show) max = wnumset+nnumset+enumset-1; /設(shè)置通行后的等待時(shí)間 dirflag = south_g; /設(shè)置方向狀態(tài)標(biāo)志為南邊路口車輛直行通行狀態(tài),south_g 為 south green snum = snumset-1; /南邊路口數(shù)碼管從 snumset(設(shè)置通行時(shí)間

46、)-1 開(kāi)始倒計(jì)時(shí) southstrough(); /進(jìn)入 2l,2s,2p,4r,1r(通行 25s)狀態(tài),該函數(shù)在 diguser.c 文件中定義 if(status=show) 模擬交通燈系統(tǒng)- 28 -max = nnumset+enumset+snumset-1; /設(shè)置通行后的等待時(shí)間 dirflag = west_g; /設(shè)置方向狀態(tài)標(biāo)志為西邊路口車輛直行通行狀態(tài),west_g 為 west green wnum = wnumset-1; /西邊路口數(shù)碼管從 wnumset(設(shè)置通行時(shí)間)-1 開(kāi)始倒計(jì)時(shí) weststrough(); /進(jìn)入 3l,3s,3p,1r,2r(通行

47、25s)狀態(tài),該函數(shù)在 diguser.c 文件中定義 if(status=show) max = enumset+snumset+nnumset-1; /設(shè)置通行后的等待時(shí)間 dirflag = north_g; /設(shè)置方向狀態(tài)標(biāo)志為北邊路口車輛直行通行狀態(tài),north_g 為 north green nnum = nnumset-1; /北邊路口數(shù)碼管從 nnumset(設(shè)置通行時(shí)間)-1 開(kāi)始倒計(jì)時(shí) northstrough(); /進(jìn)入 4l,4s,4p,1r,2r(通行 25s)狀態(tài),該函數(shù)在 diguser.c 文件中定義 *p_watchdog_clear = 0 x0001; 第 6 章 調(diào)試故障分析1.上電后數(shù)碼管不顯示,led 燈也不點(diǎn)亮,為什么? 答:檢查交通燈模組的驅(qū)動(dòng)板電源指示燈是否點(diǎn)亮,如果沒(méi)有點(diǎn)亮,切斷電源,檢查是否正負(fù)極接反。 2.驅(qū)動(dòng)板電源指示燈亮,可是數(shù)碼管和發(fā)光二極管顯示不正常,或者發(fā)光二極管變化顯示,數(shù)碼管顯示亂七八糟。 答:可能由兩種情況造成:第一,交通燈模組和 61 板連接不正確,注意 61 板和交通燈模組驅(qū)動(dòng)板的連接順序是 j5

溫馨提示

  • 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)論