單片機(jī)交通燈系統(tǒng)設(shè)計(jì)報(bào)告_第1頁(yè)
單片機(jī)交通燈系統(tǒng)設(shè)計(jì)報(bào)告_第2頁(yè)
單片機(jī)交通燈系統(tǒng)設(shè)計(jì)報(bào)告_第3頁(yè)
單片機(jī)交通燈系統(tǒng)設(shè)計(jì)報(bào)告_第4頁(yè)
單片機(jī)交通燈系統(tǒng)設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 課程設(shè)計(jì)說明書課程設(shè)計(jì)名稱: 專業(yè)課程設(shè)計(jì) 課程設(shè)計(jì)題目: 交通燈模擬控制系統(tǒng) 學(xué) 院 名 稱: 信息工程學(xué)院 專業(yè): 電子信息工程 班級(jí): 學(xué)號(hào): 姓名: 評(píng)分: 教師: 20 13 年 7 月 2 日由每位學(xué)生填寫、由任教教師保存待查摘 要本論文是以十字路口交通燈的控制系統(tǒng)為研究對(duì)象,以交通控制基本理論為基礎(chǔ),運(yùn)用單片機(jī)技術(shù)原理和應(yīng)用,對(duì)智能交通的控制系統(tǒng)進(jìn)行分析研究并做出模擬應(yīng)用。文章論述了基于STC89C51單片機(jī)的交通燈控制系統(tǒng),以STC89C51作為系統(tǒng)的控制元件,擴(kuò)展一片8255芯片,8255的PA口作為基本輸出,點(diǎn)亮發(fā)光二極管,即控制紅黃綠等的亮滅。電路主要包括:?jiǎn)纹瑱C(jī)主控模

2、塊、8255擴(kuò)展模塊、紅綠燈顯示模塊、緊急放行按鍵模塊。本系統(tǒng)簡(jiǎn)單模擬現(xiàn)有的交通燈系統(tǒng),實(shí)現(xiàn)十字路口南北方向和東西方向交替亮綠燈即放行,且有黃燈閃爍3秒提醒放行方向即將改變,紅燈時(shí)間維持13秒,綠燈維持10秒。另外,系統(tǒng)還設(shè)計(jì)了緊急放行按鍵,可強(qiáng)行對(duì)相應(yīng)的方向放行。本系統(tǒng)實(shí)用性強(qiáng)、操作簡(jiǎn)單、擴(kuò)展功能強(qiáng)。關(guān)鍵詞:?jiǎn)纹瑱C(jī)、8255、交通燈目 錄摘要2第1章 設(shè)計(jì)要求4 1.1 設(shè)計(jì)要求4 1.2 設(shè)計(jì)思路4第2章 系統(tǒng)組成及工作原理5 2.1 系統(tǒng)組成52.1.1 單片機(jī)STC89C51介紹52.1.2 8255芯片介紹72.1.3 發(fā)光二極管92.1.4 緊急放行按鍵9 2.2 交通燈系統(tǒng)工作原

3、理9第3章 硬件電路方案設(shè)計(jì)10 3.1 設(shè)計(jì)方案10 3.2 單元電路設(shè)計(jì)103.2.1 時(shí)鐘電路模塊103.2.2 單片機(jī)控制模塊及緊急按鍵模塊103.2.3 8255擴(kuò)展模塊123.2.4 LED紅綠燈顯示13第4章 軟件設(shè)計(jì)14 4.1 單片機(jī)和8255資源使用情況14 4.2 軟件各模塊介紹14第5章 調(diào)試與結(jié)果16 5.1 軟件調(diào)試16 5.2 硬件調(diào)試18第6章 結(jié)論19參考文獻(xiàn)20附錄A21附錄B22附錄C2330第一章 設(shè)計(jì)要求 1.1 設(shè)計(jì)要求:1、用單片機(jī)擴(kuò)展一片8255,用12 個(gè)發(fā)光二極管模擬一個(gè)十字交叉路口的紅、綠、黃燈,并設(shè)置二個(gè)緊急放行按鍵。2、正常行駛時(shí),東西

4、或南北方向的燈按綠燈亮10 秒,黃燈閃爍3 秒,紅燈亮12 秒控制。3、 當(dāng)東西或南北方向的緊急放行按鍵按下時(shí),如果禁行方向?yàn)榧t燈,則紅燈 繼續(xù)維持12 秒;如果禁行方向?yàn)榫G燈,則立即變?yōu)辄S燈閃爍3 秒;如果禁行方向?yàn)辄S燈,則黃燈繼續(xù)維持。 1.2 設(shè)計(jì)思路1、分析目前交通路口的基本控制技術(shù)以及各種通行方案,并以此為基礎(chǔ)提出 自己的交通控制的初步方案。2、確定系統(tǒng)交通控制的總體設(shè)計(jì),包括,十字路口具體的通行禁行方案設(shè)計(jì)以及系統(tǒng)應(yīng)擁有的各項(xiàng)功能,在這里,本設(shè)計(jì)除了有信號(hào)燈狀態(tài)控制能實(shí)現(xiàn)基本的交通功能,還有倒計(jì)時(shí)顯示提示、緊急情況下,全面禁行、黃綠紅燈及左轉(zhuǎn)周期隨時(shí)可調(diào)這三項(xiàng)特殊功能。3、進(jìn)行顯示

5、電路,按鍵電路的設(shè)計(jì)和對(duì)各器件的選擇及連接,大體分配各個(gè)器件及模塊的基本功能要求。4、進(jìn)行軟件系統(tǒng)的設(shè)計(jì),對(duì)于本系統(tǒng),本人采用單片機(jī)匯編語(yǔ)言編寫,對(duì)單片機(jī)內(nèi)部結(jié)構(gòu)和工作情況做了充足的研究,了解中斷以及延時(shí)原理,總體上完成了軟件的編寫。然后在開發(fā)板上進(jìn)行硬件調(diào)試。 第二章 系統(tǒng)組成及工作原理 2.1 系統(tǒng)組成 本系統(tǒng)包括單片機(jī)主控模塊、8255擴(kuò)展模塊、紅綠燈顯示模塊、緊急放行按鍵模塊。系統(tǒng)框圖如圖2.1所示: 圖2.1 系統(tǒng)組成框圖 2.1.1 單片機(jī)STC89C51介紹 STC89C51提供以下標(biāo)準(zhǔn)功能:8字節(jié)FLASH閃速存儲(chǔ)器,256字節(jié)內(nèi)部 RAM , 32個(gè)I/O口線,3個(gè)16 位定

6、時(shí)計(jì)數(shù)器,一個(gè)6向量?jī)杉?jí)中斷結(jié)構(gòu), 一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí),AT89c52可降至零 赫茲的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電上作模式??臻e方式停止 CPU 的工作,但允許RAM,定時(shí)計(jì)數(shù)器串行通信口及中斷系統(tǒng)繼續(xù)工作。 掉電方式保存RAM 中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作 直到下一個(gè)硬件復(fù)位。STC89C52的引腳圖如圖2.2所示,下面是對(duì)部分引腳功能的介紹。P0:P0口是一組8位漏極開路型雙向1/O 口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí)每位能吸收電流的方式驅(qū)動(dòng)8個(gè)TTL 邏輯門電路,對(duì)端口P0 寫“1”時(shí),可作為高阻抗輸入端用。P0口也可

7、以配置為復(fù)低位地址/數(shù)據(jù)總線和內(nèi)存數(shù)據(jù)訪問外部程序。在這種模式下,P0具有內(nèi)部上拉電阻。在FLASH由編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。P2:P2 是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯電路。對(duì)端口P2寫“l(fā),通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(llt )。在訪問外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOvxDPTR 指令)時(shí),P2送出高8 位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)

8、器、如執(zhí)行MOVXRI指令)時(shí),P2口輸出P2鎖存器的內(nèi)容。FLASH編程或校驗(yàn)時(shí),P2亦接收高位地址和一些控制信號(hào)。 P3 :P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。對(duì)P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為AT89S52特殊功能(第二功能)使用。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。端口引腳第二功能P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 INTO(外中斷0) P3.3

9、INT1(外中斷1) P3.4 TO(定時(shí)/計(jì)數(shù)器0)P3.5 T1(定時(shí)/計(jì)數(shù)器1) P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) 此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。EA/VPP:外部訪問允許。欲使CPU 僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH ) , EA端必須保持低電平(接地)需注怠的是:如果加密位LBI被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端)。flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源

10、VPP ,當(dāng)然這必須是該器件是使用12V編程電壓VPP 。XTAL1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端XTAL2:振蕩器反相放大器的輸出端。 圖2.2 STC89C51引腳圖 2.1.2 8255芯片介紹 8255是 可編程并行I/O接口芯片,有3個(gè)8位并行I/O口。具有3個(gè)通道3種工作方式的可編程并行接口芯片(40引腳)。8255作為主機(jī)與外設(shè)的連接芯片,必須提供與主機(jī)相連的3個(gè)總線接口,即數(shù)據(jù)線、地址線、控制線接口。同時(shí)必須具有與外設(shè)連接的接口A、B、C口。由于8255可編程,所以必須具有邏輯控制部分,因而8255內(nèi)部結(jié)構(gòu)分為3個(gè)部分:與CPU連接部分、與外設(shè)連接部分、控制部分。

11、1、 與CPU連接部分 根據(jù)定義,8255能并行傳送8位數(shù)據(jù),所以其數(shù)據(jù)線為8根D0D7。由于8255具有3個(gè)通道A、B、C,所以只要兩根地址線就能尋址A、B、C口及控制寄存器,故地址線為兩根A0A1。此外CPU要對(duì)8255進(jìn)行讀、寫與片選操作,所以控制線為片選、復(fù)位、讀、寫信號(hào)。8255引腳圖如圖2.3所示,各信號(hào)的引腳編號(hào)如下:(1)數(shù)據(jù)總線DB:編號(hào)為D0D7,用于8255與CPU傳送8位數(shù)據(jù)。(2)地址總線AB:編號(hào)為A0A1,用于選擇A、B、C口與控制寄存器。(3)控制總線CB:片選信號(hào)、復(fù)位信號(hào)RST、寫信號(hào)、讀信號(hào)。當(dāng)CPU要對(duì)8255進(jìn)行讀、寫操作時(shí),必須先向8255發(fā)片選信號(hào)

12、選中8255芯片,然后發(fā)讀信號(hào)或?qū)懶盘?hào)對(duì)8255進(jìn)行讀或?qū)憯?shù)據(jù)的操作。 2、與外設(shè)接口部分根據(jù)定義,8255有3個(gè)通道A、B、C與外設(shè)連接,每個(gè)通道又有8根線與外設(shè)連接,所以8255可以用24根線與外設(shè)連接,若進(jìn)行開關(guān)量控制,則8255可同時(shí)控制24路開關(guān)。各通道的引腳編號(hào)如下:(1)A口:編號(hào)為PA0PA7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù)。(2)B口:編號(hào)為PB0PB7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù)。(3)C口:編號(hào)為PC0PC7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù),當(dāng)8255工作于應(yīng)答I/O方式時(shí),C口用于應(yīng)答信號(hào)的通信。 3、控制器 8255將3個(gè)通道分為兩組,即P

13、A0PA7與PC4PC7組成A組,PB0PB7與PC0PC3組成B組。如圖7.5所示,相應(yīng)的控制器也分為A組控制器與B組控制器,各組控制器的作用如下:(1)A組控制器:控制A口與上C口的輸入與輸出。(2)B組控制器:控制B口與下C口的輸入與輸出。 圖2.3 8255引腳圖 2.1.3 發(fā)光二極管 發(fā)光二極管簡(jiǎn)稱為L(zhǎng)ED。由鎵(Ga)與砷(AS)、磷(P)的化合物制成的二極管,當(dāng)電子與空穴復(fù)合時(shí)能輻射出可見光,因而可以用來制成發(fā)光二極管。在電路及儀器中作為指示燈,或者組成文字或數(shù)字顯示。磷砷化鎵二極管發(fā)紅光,磷化鎵二極管發(fā)綠光,碳化硅二極管發(fā)黃光。發(fā)光二極管正極接高電平時(shí),負(fù)極為低電平則燈亮。

14、2.1.4 緊急放行按鍵 本系統(tǒng)需兩個(gè)緊急按鍵,實(shí)現(xiàn)當(dāng)某個(gè)方向車流量較大時(shí)延長(zhǎng)放行時(shí)間或緊急改變放行方向。 2.2 交通燈系統(tǒng)工作原理 東西、南北兩干道交于一個(gè)十字路口,各干道有一組紅黃綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行,黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,切黃燈點(diǎn)亮?xí)r間為東西、南北兩干道的公共停車時(shí)間。程序設(shè)置初始狀態(tài)為東西方向綠燈、南北方向紅燈,單片機(jī)執(zhí)行程序,控制交通燈狀態(tài)轉(zhuǎn)換,包括延時(shí),緊急放行。擴(kuò)展的8255PA口輸出控制紅黃綠等的亮滅。第三章 硬件電路方案設(shè)計(jì)3.1 設(shè)計(jì)方案本設(shè)計(jì)采用單片機(jī)ATC89C51芯片擴(kuò)展一片8255,實(shí)現(xiàn)交通燈的

15、模擬控制。選用頻率為12MHz的晶振,則一個(gè)時(shí)鐘周期為1us(T=12/12MHz)。ATC89C51的P0口配置為復(fù)低位地址/數(shù)據(jù)總線與8255芯片的數(shù)據(jù)總線DB相連,P2送出高8 位地址數(shù)據(jù),外部中斷INT0和INT1接緊急放行按鍵。8255的PA口接發(fā)光二極管的負(fù)極,使PA口向外設(shè)輸出8位并行數(shù)據(jù),控制發(fā)光二極管的亮滅。 本實(shí)驗(yàn)包括四種狀態(tài): S1:東西綠燈亮,南北紅燈亮 S2:東西黃燈閃爍,南北紅燈亮 S3:東西紅燈亮,南北綠燈亮 S4:東西紅燈亮,南北黃燈閃爍3.2 單元電路設(shè)計(jì) 3.2.1 時(shí)鐘電路模塊 時(shí)鐘電路如圖3.1所示,電容選取30pF,晶振頻率為12MHz,一個(gè)時(shí)鐘周期為

16、1us(12/12MHz)。C2、C3為諧振電容,有起振作用。 圖3.1 時(shí)鐘電路模塊 3.2.2 單片機(jī)控制模塊及緊急按鍵模塊 本系統(tǒng)中單片機(jī)作為核心控制元件,提供定時(shí)器和中斷服務(wù),定時(shí)器T0工作在方式1,P0和P2口是擴(kuò)展8255的地址端,其中P2.7接8255片選信號(hào),使能8255,P2.6、P2.5分別接8255的端口選擇A1、A0。緊急放行按鍵接外部中斷,按下發(fā)送中斷請(qǐng)求。系統(tǒng)上電按初始化狀態(tài)東西綠燈亮,南北紅燈亮開始運(yùn)行,通過定時(shí)器定時(shí)實(shí)現(xiàn)延時(shí),達(dá)到紅綠燈維持的時(shí)間,按下緊急按鈕時(shí),系統(tǒng)響應(yīng)中斷請(qǐng)求,執(zhí)行中斷服務(wù)程序,實(shí)現(xiàn)緊急放行。具體硬件連線如圖3.2和圖3.3所示。 圖3.2

17、單片機(jī)控制模塊 圖3.3 緊急按鍵模塊 3.2.3 8255擴(kuò)展模塊 8255的D0D7為數(shù)據(jù)總線,接單片機(jī)P0口,PA口設(shè)向外輸出接紅綠黃燈(PA.0-PA.5)。在電路仿真時(shí)為了便于觀察紅綠黃燈維持時(shí)間,將PB口設(shè)輸出,接數(shù)碼管顯示紅綠燈時(shí)間,PC口低四位輸出,接數(shù)碼管顯示黃燈時(shí)間。因設(shè)計(jì)要求對(duì)數(shù)碼管顯示沒有要求,在實(shí)體電路中省略數(shù)碼管部分。具體設(shè)計(jì)如圖3.4和圖3.5所示。 圖3.4 8255擴(kuò)展模塊 圖3.5 數(shù)碼管顯示模塊 3.2.4 LED紅綠燈顯示 發(fā)光二極管正極接VCC,負(fù)極接8255 PA口,低電平燈亮。具體電路如圖3.6所示: 圖3.6 紅綠燈顯示模塊電路 第四章 軟件設(shè)計(jì)

18、4.1 單片機(jī)和8255資源使用情況編寫匯編程序時(shí),用到了單片機(jī)的外部中斷0,并且讓它以下降沿有效方式工作;還用到定時(shí)器T0,讓它工作在定時(shí)器方式1.P0、P2、P3口均有用到,且有用到P3口的第二功能。P0、P2作為擴(kuò)展8255的端口地址,8255的PA、PB、PC均作為外設(shè)輸出,控制紅黃綠燈的亮滅和數(shù)碼管顯示倒計(jì)時(shí)。4.2 軟件各模塊介紹(1)延時(shí)子程序 延時(shí)程序?qū)崿F(xiàn)延時(shí)1s,在顯示函數(shù)中也有用到,由于時(shí)間比較短,就采用純軟件的方法延時(shí)。 定時(shí)初值的計(jì)算:(65536-a)x1us=50ms,a=15536D=3CB0H(2)按鍵處理和按鍵查詢程序 按鍵處理程序主要是將從INT0、INT1

19、取值向單片機(jī)發(fā)送中斷請(qǐng)求,按鍵查詢程序主要是判斷按鍵是否有按下,如果有則調(diào)用按鍵處理程序。(3)外部中斷程序 本設(shè)計(jì)是用外部中斷程序來實(shí)現(xiàn)緊急放行。外部中斷程序里面用到的延時(shí)1s和正常通車時(shí)用到的延時(shí)1s不是同一個(gè)延時(shí)函數(shù),因?yàn)榘存I掃描時(shí)加在正常通車時(shí)的延時(shí)1s中,這樣是為了防止其他按鍵影響中斷服務(wù)的運(yùn)行。(4)數(shù)碼管顯示子程序 顯示程序主要完成數(shù)碼管的動(dòng)態(tài)顯示,相應(yīng)的段控碼送往8255的PB口及PC口。實(shí)現(xiàn)顯示需要的字符信息。(5)主程序 主程序是程序的入口,在主程序中設(shè)置硬件電路的初始狀態(tài),按狀態(tài)轉(zhuǎn)換順序?qū)懭敫鳡顟B(tài),且一直調(diào)用延時(shí)子程序和顯示程序,實(shí)現(xiàn)通車時(shí)間的控制。(6)主程序流程圖 圖

20、4.1程序流程圖第5章 調(diào)試與結(jié)果5.1 軟件調(diào)試 軟件調(diào)試主要是利用proteus仿真軟件完成電路的搭建,運(yùn)行以發(fā)現(xiàn)設(shè)計(jì)中的錯(cuò)誤并及時(shí)改正。在此過程中有數(shù)碼管顯示倒計(jì)時(shí)時(shí)間,PB口和PC口低四位對(duì)數(shù)碼管輸入段控碼。加載在C51單片機(jī)中的程序是在keil中編譯生成的文件。圖5.1、圖5.2、圖5.3為仿真過程中的截圖。 圖5.1仿真運(yùn)行截圖圖5-1所示的狀態(tài)是狀態(tài)1,即東西方向綠燈,南北方向紅燈,數(shù)碼管左邊兩位顯示的是東西綠燈倒計(jì)時(shí)時(shí)間,右邊兩位是顯示黃燈倒計(jì)時(shí)時(shí)間。若此時(shí)按下緊急放行按鍵則黃燈開始閃爍,東西綠燈滅,3S后變?yōu)闁|西紅燈亮,南北綠燈亮如圖5.2。 圖5.2 仿真運(yùn)行截圖 圖5.3

21、仿真運(yùn)行截圖圖5.3所示的狀態(tài)是狀態(tài)4,即東西紅燈,南北黃燈閃爍,數(shù)碼管顯示的分別是東西紅燈倒計(jì)時(shí)時(shí)間和黃燈倒計(jì)時(shí)時(shí)間。5.2 硬件調(diào)試在軟件仿真成功的基礎(chǔ)上,領(lǐng)取元器件焊接實(shí)體電路。硬件調(diào)試主要是檢查是否有短路、斷路、虛焊等,所以在焊接電路時(shí)便一邊用萬(wàn)用表檢測(cè)是否存在這些問題。焊接完成后,使用單片機(jī)開發(fā)板將程序下載到單片機(jī)中,然后連接電源線和地線,上電觀察系統(tǒng)工作現(xiàn)象。下面是調(diào)試過程中遇到的一些問題及其解決辦法。(1) 第一次上電調(diào)試的現(xiàn)象是十二個(gè)發(fā)光二極管全亮。首先,檢查電源與地線是否全部接上,是否有接反。確認(rèn)無(wú)誤后繼續(xù)對(duì)照原理圖,檢查各個(gè)器件之間的連接是否連接正確,尤其是單片機(jī)與8255

22、之間的連線,結(jié)果也不存在問題。最后檢查連個(gè)芯片是否正常工作,通過查看C51的ALE4端是否有脈沖信號(hào)輸出來判斷單片機(jī)是否工作,結(jié)果發(fā)現(xiàn)單片機(jī)芯片是壞的,8255正常。(2) 更換芯片后重新上電調(diào)試,結(jié)果發(fā)光二極管全是暗的。經(jīng)過前面的檢查幾乎可以確定電路焊接是沒有問題的,需要改變檢查的思路。首先,分析燈亮的條件是發(fā)光二極管的負(fù)極即8255的PA口對(duì)應(yīng)的引腳要輸出低電平,檢測(cè)結(jié)果是PA口引腳均為高電平。仔細(xì)分析得到的結(jié)論是:在前一次上電調(diào)試時(shí)8255的PA口全部是高電平,而此次調(diào)試中沒有接8255的復(fù)位信號(hào),所以PA口仍是輸出高電平。將C51的RST引腳與8255的REST引腳連接后,再上電調(diào)試,

23、系統(tǒng)正常工作,功能與設(shè)計(jì)要求相符。第6章 結(jié)論 此次課程設(shè)計(jì)實(shí)現(xiàn)的是一個(gè)交通燈模擬控制系統(tǒng),用單片機(jī)擴(kuò)展一片8255,用12 個(gè)發(fā)光二極管模擬一個(gè)十字交叉路口的紅、綠、黃燈,并設(shè)置二個(gè)緊急放行按鍵。在正常情況下,東西、南北方向交替放行,綠燈維持10秒,紅燈維持13秒,黃燈在綠燈滅后閃爍3秒。當(dāng)東西或南北方向的緊急放行按鍵按下時(shí),如果禁行方向?yàn)榧t燈,則紅燈繼續(xù)維持12 秒;如果禁行方向?yàn)榫G燈,則立即變?yōu)辄S燈閃爍3 秒;如果禁行方向?yàn)辄S燈,則黃燈繼續(xù)維持。本系統(tǒng)能夠正常工作,切能實(shí)現(xiàn)設(shè)計(jì)要求中的各功能,此次課程設(shè)計(jì)是成功的。本次課程設(shè)計(jì)時(shí)間非常短暫,但獲得的收獲是非常大的。通過動(dòng)手實(shí)際操作,對(duì)編程

24、和焊接有了新的認(rèn)識(shí)。本系統(tǒng)的程序不同于平時(shí)實(shí)驗(yàn)課上要求的簡(jiǎn)單程序,所以應(yīng)該先編寫各個(gè)模塊的子程序,這樣看起來簡(jiǎn)潔,增加了程序的易讀性。本次課程設(shè)計(jì)為兩人一組,在編寫程序、硬件電路設(shè)計(jì)、焊接、調(diào)試等過程中都是一起努力,增強(qiáng)了同學(xué)之間學(xué)習(xí)上的交流,可以互相彌補(bǔ)各自的不足,也培養(yǎng)了團(tuán)隊(duì)合作能力。 參考文獻(xiàn)1 張先庭,等.單片機(jī)原理、接口與C51應(yīng)用程序設(shè)計(jì).北京:國(guó)防工業(yè)出 版社,2011.12.2 樓然苗,等.51 系列單片機(jī)設(shè)計(jì)實(shí)例.北京:北京航空航天出版社,2009.3.3 李廣弟,等.單片機(jī)基礎(chǔ).北京:北京航空航天出版社,2006.7.4 張友德,等.單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn).上海:復(fù)旦大

25、學(xué)出版社,2006.5 蘇家健,等.單片機(jī)原理即應(yīng)用技術(shù).北京:高等教育出版社,2004.6 李光飛.單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo).北京:北京航空航天大學(xué)出版社, 2004.附錄A表一 元件清單元件名稱性能參數(shù)數(shù)量元件名稱性能參數(shù)數(shù)量STC89C511個(gè)82551個(gè)電容30pF2個(gè)電容47uF1個(gè)電阻10K3個(gè)電阻330歐12個(gè)電阻5K1個(gè)發(fā)光二極管紅、黃、綠各4個(gè)晶振12MHz1個(gè)開關(guān)2個(gè)附錄B 整體電路圖附錄C程序清單;*主程序ORG 0000H ;起始偽指令A(yù)JMP STORG 000BH ;000BH為定時(shí)器0中斷源服務(wù)程序入口地址 AJMP INT_0ORG 0100HST: MOV SP

26、,#67H MOV R1,#00HMOV TMOD,#01H ;選擇定時(shí)器T0,方式1SETB EA ;EA=1,開放中斷SETB ET0 ;ET0=1,T0的溢出中斷允許MOV DPTR,#7FFFH ;送8255控制口地址MOV A,#80H ;送8255控制字,選擇PA口方式0輸出,PBMOVX DPTR,A 口方式0輸出,PC口輸出 ;*狀態(tài)1LP:MOV DPTR,#1FFFH ;8255A口地址MOV A,#0DEH ;紅綠燈初始狀態(tài),東西綠燈,南北紅燈MOVX DPTR,ASETB 40H CLR 41HMOV 31H,#200 MOV R2,#10 ;綠燈維持10S MOV 3

27、6H,#13 ;紅燈維持13SACALL DLY_S ;調(diào)用延時(shí)子程序MOV R7,#03H SETB 41HMOV R2,#2 ;*狀態(tài)2LP0: MOV DPTR,#1FFFH MOV A,#0EEH ;東西黃燈亮,南北紅燈亮MOVX DPTR,AMOV 31H,#10ACALL DLY_S ;調(diào)用延時(shí)子程序MOV DPTR,#1FFFHMOV A,#0FEH ;東西黃燈滅,南北紅燈亮MOVX DPTR,AMOV 31H,#10ACALL DLY_S DJNZ R7,LP0 ;通過黃燈交替亮滅三次實(shí)現(xiàn)黃燈閃爍3次 ;*狀態(tài)3MOV DPTR,#1FFFHMOV A,#0F3H ;東西紅燈,

28、南北綠燈CLR 40HCLR 41HMOVX DPTR,AMOV 31H,#200MOV R2,#13MOV 36H,#10ACALL DLY_SMOV R7,#03H MOV 36H,#2 ;*狀態(tài)4LP1: MOV A,#0F5H ;南北黃燈亮,東西紅燈SETB 41HMOV DPTR,#1FFFHMOVX DPTR,AMOV 31H,#10ACALL DLY_SMOV DPTR,#1FFFHMOV A,#0F7H ;南北黃燈滅,東西紅燈MOVX DPTR,AACALL DLY_SDJNZ R7,LP1 ;黃燈閃爍三次AJMP LP ;*延時(shí)子程序DLY_S: CLR F0 MOV 30H

29、,#00HSETB TR0 ;啟動(dòng)定時(shí)器T0MOV TH0,#3CH ;送定時(shí)初值,3CB0H對(duì)應(yīng)定時(shí)時(shí)間50msMOV TL0,#0B0H (65536-a)x1us=50ms,a=15536D=3CB0H;*按鍵查詢D0:JB P3.2,D1 ;查詢外部中斷0是否有中斷請(qǐng)求,即按鍵是否ACALL MEGENT 按下SJMP D2D1:JB P3.3,D2 ;查詢外部中斷0是否有中斷請(qǐng)求,即按鍵是否 ACALL MEGENT1 按下D2:MOV R6,#20HDJNZ R6,$ ;R6不減為0,則等待,20x50ms=1sACALL DISPL ;調(diào)用數(shù)碼管顯示子程序JNB F0,D0CLR TR0RET ;*緊急放行按鍵處理MEGENT: ;南北放行按鍵處理 JNB40H,M1 JB 41H,M1 ;東西綠燈,南北紅燈時(shí)響應(yīng)中斷,改變放行方 SETB F0 向 M1:RETMEGENT

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論