基于單片機的交通燈控制器的設(shè)計_畢業(yè)設(shè)計_第1頁
基于單片機的交通燈控制器的設(shè)計_畢業(yè)設(shè)計_第2頁
基于單片機的交通燈控制器的設(shè)計_畢業(yè)設(shè)計_第3頁
基于單片機的交通燈控制器的設(shè)計_畢業(yè)設(shè)計_第4頁
基于單片機的交通燈控制器的設(shè)計_畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、安徽工程大學(xué)本科畢業(yè)設(shè)計(論文)專 業(yè): 電子信息科學(xué)與技術(shù) 題 目: 基于單片機的 交通燈控制器的設(shè)計 作 者 姓 名: 王同銳 導(dǎo)師及職稱 : 許鋼 副教授 導(dǎo)師所在單位: 電氣工程學(xué)院 2011 年 6 月 15 日安徽工程大學(xué)本科畢業(yè)設(shè)計(論文)任務(wù)書 2011 屆 電氣工程 學(xué)院 電子信息科學(xué)與技術(shù) 專業(yè)學(xué)生姓名: 王同銳 畢業(yè)設(shè)計(論文)題目中文:基于單片機的交通燈控制器的設(shè)計英文: The design of traffic light controller based on MCU 原始資料1 張毅剛.單片機原理及應(yīng)用M.高等教育出版社 2009.112 張麗.單片機的發(fā)展與應(yīng)

2、用J.科技咨詢導(dǎo)報,20073 汪然.智能交通信號控制系統(tǒng)的研究與開發(fā)D.重慶大學(xué),2006 畢業(yè)設(shè)計(論文)任務(wù)內(nèi)容題目:基于單片機的交通燈控制器的設(shè)計交通信號燈的控制系統(tǒng)目前朝著小型化、專用化和智能化方向發(fā)展。本課題要求學(xué)生運用電子測量、信號處理、單片機原理及應(yīng)用等基礎(chǔ)知識,基于單片機,用 C51 或匯編語言設(shè)計一個交通信號燈控制系統(tǒng),并按照既定的規(guī)則運行。要求學(xué)生獨立選擇芯片、設(shè)計電路、編制程序、仿真、調(diào)試,完成整個系統(tǒng)的功能。技術(shù)指標(biāo)及要求:1. 十字路口交通燈運行規(guī)則;2. 具有雙向六車道的規(guī)則管理能力;3. 具有等候時間顯示;具有進入交通管制狀態(tài)功能;4. 要求獨立選擇芯片、設(shè)計電

3、路、編制程序、仿真、調(diào)試,完成整個系統(tǒng)的功能。課題完成形式:1. 開題報告;2. 畢業(yè)論文(設(shè)計報告書) ;3. 電路原理圖;4. 完整的單片機源程序。指導(dǎo)教師(簽字) 教研室主任(簽字)批 準(zhǔn) 日 期 2011 年 1 月 5 日接 受 任 務(wù) 書 日 期 2011 年 1 月 9 日完 成 日 期 2011 年 6 月 15 日接受任務(wù)書學(xué)生(簽字)安徽工程大學(xué)畢業(yè)設(shè)計(論文)I基于單片機的交通燈控制器的設(shè)計基于單片機的交通燈控制器的設(shè)計摘摘 要要隨著世界范圍內(nèi)城市化和機動化進程的加快,城市交通越來越成為一個全球化的問題,所以這就需要一個更為合理和智能且成本不高的路口交通燈控制系統(tǒng)。本文主

4、要是對給予單片機交通燈控制系統(tǒng)進行設(shè)計,平時按照設(shè)定的程序進行控制。交通燈控制系統(tǒng)由 AT89C51 單片機、鍵盤、LED 指示燈。系統(tǒng)除具有基本交通燈功能外,還可以擴展 LED 信息顯示功能,對市交通實現(xiàn)有效控制。在本次設(shè)計中,查閱了相關(guān)資料,對設(shè)計內(nèi)容、意義方面有了比較深的認識和理解。比如說設(shè)計問題是在怎么樣的情況下提出的,課題研究的目的、意義和采用的研究方法等。另外,在設(shè)計中完成了整個設(shè)計系統(tǒng)的總體結(jié)構(gòu)設(shè)計,并繪制了硬件電路原路圖以及對設(shè)計電路原理圖的說明分析。從此次設(shè)計中,可以看出單片機功能之強大,應(yīng)用范圍及前景之廣。單片機的另外一個名稱就是嵌入式微控制器,原因在于它可以嵌入到任何微型

5、或小型儀器或設(shè)備中。目前,把單片機嵌入式系統(tǒng)和 Internet 連接已是一種趨勢。目前,為了把單片機為核心的嵌入式系統(tǒng)和 Internet 相連,已有多家公司在進行這方面的較多研究。關(guān)鍵詞關(guān)鍵詞:單片機;AT89C51;交通燈控制器;Proteus;KEIL王同銳:基于單片機的交通燈控制器的設(shè)計IIThe design of traffic light controller based on MCUAbstractWith the process of urbanization and the acceleration of motor becoming faster, Urban tran

6、sportation is increasingly becoming a global problem. So a more rational and intelligent traffic light control system is needed, which doesnt cost much. This paper is to design a traffic light control system, which is based on MCU. This system consist of the AT89C51 microcontroller, keypad, and LED

7、indicator. Traffic light system can extend the LED information display function to achieve effective control of the city traffic, in addition to the basic function.During this design, relevant information is inquired, and deep knowledge and understanding of the design are conveyed. For example, how

8、are design issues presented, the research purpose, meaning and use of research methods ,and so on. In addition, the design of the system and the entire design of the overall structural design are completed, and so are the hardware circuit diagram and schematic of the design description of analysis.

9、From this design, we can see a strong SCM function, the wide prospects and range of applications.Another name of the single chip is embedded microcontroller, because it can be embedded into any micro-or small-scale equipment or equipment. At present, the MCU embedded systems and Internet connection

10、has been a trend. In order to link Microcontroller as the core to the embedded systems with Internet , many companies are working hard in this area.Key words: MCU;AT89C51;traffic light;controller;proteus;KEIL 安徽工程大學(xué)畢業(yè)設(shè)計(論文)III目目 錄錄引引 言言 .1 1第第 1 1 章章 緒論緒論 .2 21.1 交通燈背景及意義 .21.2 單片機的應(yīng)用 .21.3 課題研究 .3第

11、第 2 2 章章 總體方案設(shè)計總體方案設(shè)計 .4 42.1 設(shè)計方案選擇 .42.2 計時控制方案 .52.3 顯示控制方案 .52.4 鍵盤控制方案 .5第第 3 3 章章 硬件設(shè)計硬件設(shè)計 .6 63.1 系統(tǒng)設(shè)計 .63.2 主控模塊設(shè)計 .63.3 系統(tǒng)時鐘電路.83.4 系統(tǒng)復(fù)位電路.93.5 數(shù)碼管顯示電路.103.6 信號燈電路.123.7 按鍵電路設(shè)計.13第第 4 4 章章 軟件設(shè)計軟件設(shè)計 .15154.1 主程序模塊 .154.2 定時器 T0 服務(wù)子程序 .154.3 按鍵子程序設(shè)計 .164.4 顯示程序模塊 .17第第 5 5 章章 調(diào)試與檢測調(diào)試與檢測 .1919

12、5.1 KEIL 軟件使用說明 .195.2 PROTEUS軟件使用說明.205.3 用 PROTUES 繪制本設(shè)計電路 .225.4 檢測與調(diào)試.245.5 仿真結(jié)果與分析 .24致致 謝謝 .2929參考文獻參考文獻 .3030附錄附錄 A A:系統(tǒng)原理圖:系統(tǒng)原理圖.3131附錄附錄 B B:一片引用的英文文獻及其譯文:一片引用的英文文獻及其譯文.3232附錄附錄 C C:主要參考文獻的題錄及摘要:主要參考文獻的題錄及摘要.3939附錄附錄 D D:主要源程序:主要源程序.4141王同銳:基于單片機的交通燈控制器的設(shè)計IV插圖清單插圖清單圖 2-1 硬件整體框架示意圖.4圖 2-2 交通

13、燈示意圖.5圖 3-1 系統(tǒng)構(gòu)成.6圖 3-2 AT89C51 引腳結(jié)構(gòu) .7圖 3-3 AT89C51 內(nèi)部時鐘方式.8圖 3-4 AT89C51 外部時鐘方式.9圖 3-5 系統(tǒng)復(fù)位電路.9圖 3-6 七段 LED 顯示器.10圖 3-7 發(fā)光二極管示意圖.12圖 3-8 信號燈設(shè)計電路.12圖 3-9 數(shù)碼管及信號燈連接示意圖.13圖 3-10 獨立式鍵盤電路.14圖 4-1 主程序流程圖.15圖 4-2 按鍵過程.16圖 4-3 鍵盤事件流程圖.17圖 4-4 顯示程序流程圖.17圖 5-1 UVISION2 的界面圖.19圖 5-2 C51 工具包整體結(jié)構(gòu).20圖 5-3 PROTE

14、US界面示意圖.21圖 5-4 PROTEUS ISIS 原理圖輸入流程圖.23圖 5-5 南北方向綠燈亮.24圖 5-6 東西方向綠燈.25圖 5-7 東西方向黃燈亮.25安徽工程大學(xué)畢業(yè)設(shè)計(論文)V表格清單表格清單表 3-1 特殊功能口.8表 3-2 LED 對應(yīng)段碼.10表 3-3 數(shù)碼管字型編碼表.11表 5-1 電路圖的元件庫清單.23安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 1 -引引 言言交通信號燈關(guān)系著人們的生命和人才的安全,目前,紅綠燈安裝在各個道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段。但這一技術(shù)在 19 世紀(jì)就已出現(xiàn)了。1858 年,在英國倫敦主要街頭安裝了以燃煤氣為光源的

15、紅,藍兩色的扳手式信號燈,用以指揮馬車通行。這是世界上最早的交通信號燈。1868 年,英國機械工程師納伊特在倫敦威斯敏斯特區(qū)的議會大廈前的廣場上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩塊以旋轉(zhuǎn)式方形玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869年 1 月 2 日,煤氣燈爆炸,使警察受傷,遂被取消。1914 年,電氣啟動的紅綠燈出現(xiàn)在美國。這種紅綠燈由紅綠黃三色圓形的投光器組成,安裝在紐約市 5 號大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。1918 年,又出現(xiàn)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅綠燈,一種是把壓力探測器安在地下,當(dāng)車輛接近時,紅燈便變?yōu)榫G燈;另

16、一種是用擴音器來啟動紅綠燈,司機遇紅燈時按一下喇叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當(dāng)行人踏上對壓力敏感的路面時,它就能察覺到有人要過馬路。紅外光束能把信號燈的紅燈延長一段時間,推遲汽車放行,以免發(fā)生交通事故。信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。1968 年,聯(lián)合國道路交通和道路標(biāo)志信號協(xié)定對各種信號燈的含義作了規(guī)定。綠燈是通行信號,面對綠燈的車輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu)先通行。紅燈是禁行信號,面對紅燈的車輛必須在交叉路口的停車線后停車。黃燈

17、是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以進入交叉路口。隨著經(jīng)濟的發(fā)展,交通運輸中出現(xiàn)了一些傳統(tǒng)方法難以解決的問題。道路擁擠現(xiàn)象日趨嚴(yán)重,造成的經(jīng)濟損失越來越大,并一直保持大比例的增長?,F(xiàn)在交通系統(tǒng)已不能滿足經(jīng)濟發(fā)展的需求。由于生活水平的提高,人們對交通運輸?shù)陌踩约胺?wù)水平提出了更高的要求。在交通中管理引入單片機交通燈控制代替交管人員在交叉路口服務(wù),有助于提高交通運輸?shù)陌踩?、提高交通管理的服?wù)質(zhì)量。并在一定程度上盡可能的降低由道路擁擠造成的經(jīng)濟損失,同時也減小了工作人員的勞動強度。中國車輛數(shù)量不斷增加,交通控制在未來的交通管理中起著越來越重要的作用

18、。智能交通燈的管理比重修一條馬路無論在經(jīng)濟、交通運行速率上都有很好的效益、更加節(jié)約資源。使交管人員有更多的精力投入到管理整個城市交通控制,帶來更大的經(jīng)濟和社會效益,為創(chuàng)造美好的城市交通形象發(fā)揮更多的作用。王同銳:基于單片機的交通燈控制器的設(shè)計- - 2 -第第 1 章章 緒論緒論1.1 交通燈背景及意義隨著城市機動車量的不斷增加,許多大城市如北京、上海、南京等出現(xiàn)了交通超負荷運行的情況,因此,自 80 年代后期,這些城市紛紛修建城市高速道路,在高速道路建設(shè)完成的初期,它們也曾有效地改善了交通狀況。然而,隨著交通量的快速增長和缺乏對高速道路的系統(tǒng)研究和控制,高速道路沒有充分發(fā)揮出預(yù)期的作用。而城

19、市高速道路在構(gòu)造上的特點,也決定了城市高速道路的交通狀況必然受高速道路與普通道路耦合處交通狀況的制約。人們的消費水平不斷的提高,私人車輛不斷的增加。人多、車多道路少的道路交通狀況已經(jīng)很明顯了。我國是 13 億多人口的大國,到 2004年,全國的機動車保有量超過了 6000 萬,而全國公路通車總里程只有 14.3 萬公里。靜態(tài)比例為:人均車輛越 0.5 輛,而人均道路只有 0.00011 公里;每輛車均道路占有量約為 0.002 公里;且其中 90%的道路屬于機動車與非機動車和行人混雜。車輛的增加反映出了國家的整體進步,但是也給人民帶來了其他的一些負面的影響。今后幾年機動車輛數(shù)字還在急劇增加,道

20、路超負荷承載,致使交通事故逐年增加。在一個交通十字路口,如果還是像以前一樣由單純的一種信號燈和交通警察的協(xié)調(diào)來維持交通是不夠的。根據(jù)統(tǒng)計每年因交通事故死亡的人數(shù)占所有事故死亡總?cè)藬?shù)的 80%,而且這個比例還在不斷的增加。如果將每個交通十字路口的多余交通警察撤回,安排在最不利于管理和事故高發(fā)的地方,不但可以大大的降低交通事故的發(fā)生率,而且可以節(jié)省大量的人力財力?;谛滦鸵?guī)則的可編程交通控制系統(tǒng)(以下簡稱交通控制系統(tǒng))可以實現(xiàn)對車輛、行人的控制,使的交通便于管理。所以,采用單片機自動控制交通燈有現(xiàn)實的社會意義。1.2 單片機的應(yīng)用51 單片機是對目前所有兼容 Intel 8031 指令系統(tǒng)的單片機

21、的統(tǒng)稱。該系列單片機的始祖是 Intel 的 8031 單片機,后來隨著 Flash rom 技術(shù)的發(fā)展,8031 單片機取得了長足的進展,成為目前應(yīng)用最廣泛的 8 位單片機之一,其代表型號是 ATMEL 公司的AT89 系列,它廣泛應(yīng)用于工業(yè)測控系統(tǒng)之中。目前很多公司都有 51 系列的兼容機型推出,在目前乃至今后很長的一段時間內(nèi)將占有大量市場。51 單片機是基礎(chǔ)入門的一個單片機,還是應(yīng)用最廣泛的一種。需要注意的是 52 系列的單片機一般不具備自編程能力。51 系列單片機的典型產(chǎn)品有:AT89C51、8031、8751、80C51、80C31、87C51 等,AT89C51 內(nèi)部有 4kB R

22、OM,8751 內(nèi)部有 4kB EPROM,8031 片內(nèi)無 ROM。除此之外,三者的內(nèi)部結(jié)構(gòu)及引腳完全相同。AT89C51 是一種低功耗、高性能 CMOS8 位微控制器,具有 4K 在系統(tǒng)可編程Flash 存儲器。使用 Atmel 公司高密度非易失性存儲器技術(shù)制造,與工業(yè) 80C51 產(chǎn)品指令和引腳完全兼容。片上 Flash 允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的 8 位 CPU 和在系統(tǒng)可編程 Flash,AT89C51 為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。單片機是應(yīng)工業(yè)測控需要而產(chǎn)生的,最能反映其功能及形態(tài)的名稱是在一個應(yīng)用系統(tǒng)中,Sing

23、le-chip Micro-controller。按照測控系統(tǒng)的特點和要求,單片機的應(yīng)用可分安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 3 -為單機應(yīng)用和多機應(yīng)用兩大類。我們這次要完成的單片機課程設(shè)計就是它的單機應(yīng)用,下面在介紹一下單片機在單機應(yīng)用領(lǐng)域內(nèi)的主要內(nèi)容。(1)智能產(chǎn)品單片機與傳統(tǒng)機械產(chǎn)品相結(jié)合,使傳統(tǒng)機械產(chǎn)品結(jié)構(gòu)簡化,控制智能化,購成新一代機電一體化產(chǎn)品。目前,利用單片機構(gòu)成的智能產(chǎn)品已廣泛應(yīng)用于家用電器、辦公設(shè)備、數(shù)控機床、紡織機械、工業(yè)設(shè)備等行業(yè)。(2)智能儀表目前,各種傳感器、變送器、控制儀表已普遍采用單片機應(yīng)用系統(tǒng)。它集測量、處理、控制功能于一體,具有各種智能化功能,如存儲、數(shù)據(jù)處理、

24、查找、判斷、聯(lián)網(wǎng)和語音等功能。單片機構(gòu)成的智能儀表,能使儀表具有數(shù)字化、智能化、多功能化、綜合化、柔性化等優(yōu)點,賦予測量儀表以嶄新的面貌,使傳統(tǒng)的儀器、儀表發(fā)生根本性的變革,它代表了儀器儀表的發(fā)展趨勢。(3)測控技術(shù)用單片機構(gòu)成的各種工業(yè)控制系統(tǒng)中的數(shù)據(jù)采集系統(tǒng)具有工作穩(wěn)定可靠、抗干擾能力強的優(yōu)點,如爐溫恒溫控制系統(tǒng)、電鍍生產(chǎn)自動控制系統(tǒng)等。(4)智能接口在計算機系統(tǒng),特別是較大型的工業(yè)測控系統(tǒng)中,除通用外部設(shè)備外,還由許多外部通信、采集、多路分配管理、驅(qū)動控制等接口。這些外部設(shè)備與接口如果完全由主機進行管理,勢必會造成主機負擔(dān)過重,運行速度降低,接口的管理水平也不可能提高。如果用單片機進行接

25、口的控制與管理,單片機與主機可并行加工處理,可以大量降低接口的通信密度,極大的提高了接口控制管理水平。在一些通用計算機外部設(shè)備上,已實現(xiàn)了單片機的鍵盤管理、打印機控制、繪圖儀控制、硬盤驅(qū)動控制等。1.3 課題研究本課題要求學(xué)生運用電子測量、信號處理、單片機原理及應(yīng)用等基礎(chǔ)知識,基于單片機,用 C51 或匯編語言設(shè)計一個交通信號燈控制系統(tǒng),并按照既定的規(guī)則運行。要求學(xué)生獨立選擇芯片、設(shè)計電路、編制程序、仿真、調(diào)試,完成整個系統(tǒng)的功能。本次畢業(yè)設(shè)計的具體要求如下:(1) 、十字路口交通燈運行規(guī)則;(2) 、具有雙向六車道的規(guī)則管理能力;(3) 、具有等候時間顯示;具有進入交通管制狀態(tài)功能;(4)

26、、要求獨立選擇芯片、設(shè)計電路、編制程序、仿真、調(diào)試,完成整個系統(tǒng)的功能。本次設(shè)計采用 AT89C51 單片機作為智能交通燈控制系統(tǒng)處理器,使其能模仿城市十字路口交通燈的功能,并對滿足特殊的控制要求。每條道路上各配有一組紅、黃、綠交通信號燈,其中紅燈亮,表示該道路禁止通行;黃燈亮表示該道路上未過停車線的車輛禁止通行,已過停車線的車輛繼續(xù)通行;綠燈表示該道路允許通行。該電路自動控制十字路口兩組紅、黃、綠交通燈的狀態(tài)轉(zhuǎn)換,實現(xiàn)十字路口自動化。 王同銳:基于單片機的交通燈控制器的設(shè)計- - 4 -第第 2 章章 總體方案設(shè)計總體方案設(shè)計2.1 設(shè)計方案選擇能實現(xiàn)此電路的方法很多,具體設(shè)計可依自身的條件

27、選擇方案。第一種方案:采用數(shù)字電子技術(shù)實現(xiàn)。用基本的 555 芯片(利用單穩(wěn)態(tài)實現(xiàn)定時) ,計數(shù)芯片(如 74LS163,74LS160 等)完成計時功能,控制電路芯片,譯碼芯片(如74LS138)等基本芯片,結(jié)合電阻,電容等基本元件,通過邏輯電路實現(xiàn)交通燈的功能。第二種方案:用 EDA 技術(shù)實現(xiàn)交通燈功能。利用有限狀態(tài)機(判斷時間推回控制紅綠燈的轉(zhuǎn)換) ,用 PLD 來完成對交通燈的設(shè)計,可以實現(xiàn)交通燈主干道副干道黃紅綠燈的轉(zhuǎn)換。設(shè)計可基于超高速硬件描述語言 VHDL 和在 Altera 公司的 FLEX 系列的CBA56020A 芯片上編程實現(xiàn)。通過仿真,調(diào)試和測試,可達到所需要的技術(shù)指標(biāo)

28、。第三種方案:使用單片可編程來實現(xiàn)交通燈的功能。利用單片機的外圍擴展,加上液晶顯示電路和二極管構(gòu)成基本硬件。然后編程實現(xiàn)對定時,控制,顯示電路的控制,然后調(diào)試,完成設(shè)計。結(jié)合實際情況,現(xiàn)選用第三種方案對交通燈進行設(shè)計。根據(jù)課題要求,該系統(tǒng)具有交通燈的顯示功能,倒計時功能,緊急情況處理功能等,因此可以把該系統(tǒng)分為以下幾個模塊,包括信號狀態(tài)燈顯示電路,時間顯示,鍵盤,主控模塊。系統(tǒng)總體框架如圖 2-1 所示。主控模塊特殊功能按鍵時間顯示信號燈重啟按鍵圖 2-1 硬件整體框架示意圖本方案的主要思想是用時間控制交通燈狀態(tài)的轉(zhuǎn)換,時間變化是有規(guī)律的。先南北直行紅燈亮,而后黃燈亮 3 秒,再直行綠燈亮 2

29、7 秒,黃燈亮 3 秒;然后南北轉(zhuǎn)彎綠燈亮,黃燈亮,南北交通燈都亮紅燈;東西交通燈以同樣規(guī)律變化。(1)每次綠燈變紅燈時,要求黃燈先亮 3 秒,黃燈亮?xí)r,綠燈滅。(2)要求在綠燈亮(通行時間內(nèi))和紅燈亮(禁止通行時間內(nèi))時均有倒計時顯示。所以基本符合現(xiàn)實功能,能夠指揮車輛在十字路口完成左轉(zhuǎn)和不同路口的直行。2、基本功能、擴展功能分析考慮交通燈的功能,一個十字路口至少需 8 組交通燈:東西南北各兩組,一組指揮轉(zhuǎn)彎,一組指揮直行。而設(shè)計的關(guān)鍵是控制交通燈的亮滅??紤]南北、東西方向燈的亮滅規(guī)律相同,故可以考慮用四組交通燈來模擬實際的八組交通燈:東西兩組燈,南北兩組燈,分別用來指示轉(zhuǎn)彎和直行。可用計數(shù)

30、器控制安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 5 -時間,在不同的時間顯示不同的燈。根據(jù)設(shè)計分析,可以采用如下方案實現(xiàn)交通燈顯示:通過計數(shù)來計時,不同的時間輸出不同的使能信號,使各方向的不同交通燈顯示不同的顏色。倒計時顯示需設(shè)計不同的倒計時計數(shù)器,顯示不同方向交通燈的顯示時間,通過數(shù)碼管顯示時間,使行人方便。東西兩組燈,南北兩組燈,分別用來指示轉(zhuǎn)彎和直行。如圖 2-2 所示 圖 2-2 交通燈示意圖2.2 計時控制方案利用 MCS-51 內(nèi)部的定時器/計數(shù)器進行定時,配合軟件延時實現(xiàn)到計時。該方案節(jié)省硬件成本,切能夠使讀者在定時器/計數(shù)器的使用、中斷及程序設(shè)計方面得到鍛煉與提高,2.3 顯示控制方案顯

31、示分為靜態(tài)示和動態(tài)顯示靜態(tài)顯示由于占用較多的接口,在單片機設(shè)計中常采用串行擴展來完成。該方案占用接口資源多,顯示亮度由保證,但硬件開銷大,電路復(fù)雜,信息刷新速度慢,實用于并行接口資源較少以及對顯示沒有要求的場合。LED動態(tài)顯示硬件連接簡單,但動態(tài)掃描的顯示方式需占用 CPU 較多的時間,在該系統(tǒng)中由于單片機除了掃描 AT89C51 芯片外沒有太多的實時測控任務(wù),故選用動態(tài)掃描方式。 2.4 鍵盤控制方案鍵盤分為獨立式鍵盤和行列式鍵盤,獨立式鍵盤接口電路配置靈活,硬件結(jié)構(gòu)簡單,工作可靠但每個按鍵必須占用一跟 I/O 接口線,I/O 接口線浪費較大,在單片機應(yīng)用系統(tǒng)中,有時只需要幾個簡單的按鍵向系

32、統(tǒng)輸入信息,可將按鍵直接在一根 I/O 接口線上,故只在按鍵數(shù)量不多時采用。而行列式鍵盤每條行線與列線在交叉處不直接相通,而是通過一個按鍵加以連接,當(dāng)按鍵較多時可采用行列式鍵盤以節(jié)省 I/O 接口。本設(shè)計采用四個按鍵,所以這里選用獨立式鍵盤。王同銳:基于單片機的交通燈控制器的設(shè)計- - 6 -安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 7 -第第 3 章章 硬件設(shè)計硬件設(shè)計3.1 系統(tǒng)設(shè)計根據(jù)原理框圖,可知本系統(tǒng)主要有主控模塊,時間顯示模塊,信號燈模塊,鍵盤模塊等組成。AT89C5174LS245時間顯示(數(shù)碼管)按鍵信號燈(LED)圖 3-1 系統(tǒng)構(gòu)成按鍵主要是用來設(shè)置各信號燈點亮的時間,74LS245

33、 用來驅(qū)動數(shù)碼管顯示時間,用發(fā)光二極管模擬信號燈。3.2 主控模塊設(shè)計主控模塊是對整個系統(tǒng)進行控制,是整個系統(tǒng)的“大腦”,在本次設(shè)計中,采用AT89C51 作為主控芯片。AT89C51 是美國 ATMEL 公司生產(chǎn)的低電壓,高性能 CMOS 8 位單片機,內(nèi)含 4k bytes 的可反復(fù)擦寫的只讀程序存儲器(PEROM)和 128 bytes 的隨機存取數(shù)據(jù)存儲器(RAM) ,器件采用 ATMEL 公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn) MCS-51 指令系統(tǒng),片內(nèi)置通用 8 位中央處理器(CPU)和 Flash 存儲單元,功能強大AT89C51 單片機可為您提供許多高性價比的應(yīng)用場合,

34、可靈活應(yīng)用各種控制領(lǐng)域。主要特性: 與 MCS-51 兼容4K 字節(jié)可編程閃爍存儲器壽命:1000 寫/擦循環(huán)數(shù)據(jù)保留時間:10 年全靜態(tài)工作:0Hz-24Hz三級程序存儲器鎖定128*8 位內(nèi)部 RAM32 可編程 I/O 線兩個 16 位定時器/計數(shù)器5 個中斷源可編程串行通道低功耗的閑置和掉電模式 片內(nèi)振蕩器和時鐘電路 王同銳:基于單片機的交通燈控制器的設(shè)計- - 8 -Vcc4039P0.0P0.13837P0.2P0.33635P0.4P0.53433P0.6P0.732313029P2.72827P2.6P2.52625P2.4P2.32423P2.2P2.12221P2.0P1.

35、012P1.1P1.234P1.3P1.456P1.5P1.678P1.7RST/VPD9101112P3.2P3.31314T0 P3.4T0 P3.51516P3.6P3.71718XTAL 2XTAL 11920VssWRRDpp/VEAPROGALE /PSENAT89C51RXDP3.1圖 3-2 AT89C51 引腳結(jié)構(gòu)引腳功能說明:引腳功能說明:VCC:供電電壓。GND:接地。P0 口:P0 口為一個 8 位漏級開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當(dāng) P1口的管腳第一次寫 1 時,被定義為高阻輸入。P0 能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位

36、。在 FIASH 編程時,P0 口作為原碼輸入口,當(dāng) FIASH進行校驗時,P0 輸出原碼,此時 P0 外部必須被拉高。P1 口:P1 口是一個內(nèi)部提供上拉電阻的 8 位雙向 I/O 口,P1 口緩沖器能接收輸出4TTL 門電流。P1 口管腳寫入 1 后,被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在 FLASH 編程和校驗時,P1口作為第八位地址接收。 P2 口:P2 口為一個內(nèi)部上拉電阻的 8 位雙向 I/O 口,P2 口緩沖器可接收,輸出 4個 TTL 門電流,當(dāng) P2 口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入

37、時,P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或 16 位地址外部數(shù)據(jù)存儲器進行存取時,P2 口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2 口輸出其特殊功能寄存器的內(nèi)容。P2 口在 FLASH 編程和校驗時接收高八位地址信號和控制信號。P3 口:P3 口管腳是 8 個帶內(nèi)部上拉電阻的雙向 I/O 口,可接收輸出 4 個 TTL 門電流。當(dāng) P3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3 口將輸出電流(ILL)這是由于上拉的緣故。P3 口也可作為

38、 AT89C51 的一些特殊功能口,如表 31 所示。安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 9 -表 31 特殊功能口引腳端口第二功能P3.0RXD (序列輸入端口)P3.1TXD (序列輸出端口)P3.2INT0 (外部中斷 0)P3.3INT1 (外部中斷 1)P3.4T0 (定時器 0)P3.5T1 (定時器 1)P3.6WR (外部數(shù)據(jù)存儲寫控制端)P3.7RD (外部數(shù)據(jù)存儲讀控制端)RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持 RST 腳兩個機器周期的高電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在 FLASH 編程期間,此引腳用于輸入編

39、程脈沖。在平時,ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個 ALE脈沖。如想禁止 ALE 的輸出可在 SFR8EH 地址上置 0。此時, ALE 只有在執(zhí)行MOVX,MOVC 指令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE 禁止,置位無效。PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次 PSEN 有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的 PSEN 信號將不出現(xiàn)。EA/VPP:當(dāng)/EA 保持低電平

40、時,則在此期間外部程序存儲器(0000H-FFFFH) ,不管是否有內(nèi)部程序存儲器。注意加密方式 1 時,EA 將內(nèi)部鎖定為 RESET;當(dāng) EA 端保持高電平時,此間內(nèi)部程序存儲器。在 FLASH 編程期間,此引腳也用于施加 12V編程電源(VPP) 。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。3.3 系統(tǒng)時鐘電路AT89C51XTAL1XTAL2C1C2至內(nèi)部時鐘電路圖 3-3 AT89C51 內(nèi)部時鐘方式王同銳:基于單片機的交通燈控制器的設(shè)計- - 10 -時鐘是單片機的心臟,單片機的各功能部件的運行都是以時鐘的頻率為基準(zhǔn)的。因此,時鐘頻

41、率直接影響單片機的速度,時鐘的質(zhì)量也直接影響單片機系統(tǒng)的穩(wěn)定性。通常的時鐘電路有兩種方式:一種是內(nèi)部時鐘方式,如圖 3-3 示,另一種是外部時鐘方式,如圖 3-4。AT89C51 單片機內(nèi)部有一個用于構(gòu)成振蕩器的高增益反向放大器,該高增益反向放大器的輸入端為芯片引腳 XTAL1,輸出引腳 XTAL2。這兩個引腳跨接石英晶體振蕩器和微調(diào)電容,就構(gòu)成了一個穩(wěn)定的自激振蕩器。電路中的電容 C1和 C2典型值通常為 30pF 左右。電容的大小會影響振蕩器頻率的高低、振蕩器的穩(wěn)定性和起振的快速性。晶體的振蕩頻率的范圍通常為 1.2MHz12MHz 之間。晶體的頻率越高,則系統(tǒng)的時鐘頻率也就越高,單片機的

42、運行速度也就越快。但反過來運行速度快對存儲器的速度要求也就越高,對印刷電路板的要求也高,即要求線間的寄生電容要小。在本次畢業(yè)設(shè)計中,我們的 AT89C51 單片機選擇 6MHz。AT89C51XTAL1XTAL2VCCVSSTTL外部時鐘信號圖 3-4 AT89C51 外部時鐘方式如圖 3-4 所示,外部時鐘方式是使用外部振蕩脈沖信號,由于出自同一個時鐘信號,在實際使用時,常用于多片單片機同時工作,以便于同步,能達到很高的精度要求。一般的電路,對外部脈沖信號只要求高電平的持續(xù)時間大于 20uS,一般為低于12MHz 的方波。3.4 系統(tǒng)復(fù)位電路復(fù)位電路我采用上電按鈕復(fù)位的方式。當(dāng)開關(guān)打開時,R

43、ST 通過電阻接地,當(dāng)有開關(guān)閉合時由于電容的作用使電源 VCC 通過電阻施加在單片機復(fù)位端 RST 上,實現(xiàn)單片機復(fù)位。只是可惜,在進行仿真器調(diào)試過程中,該復(fù)位電路是不起作用的。具體電路如圖 3-5 所示。安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 11 -圖 3-5 系統(tǒng)復(fù)位電路3.5 數(shù)碼管顯示電路LED 顯示器是由發(fā)光二極管顯示字段的單片機輸出設(shè)備。單片機應(yīng)用系統(tǒng)常采用七段 LED 數(shù)碼管作為顯示器,這重顯示器具有耗電低、配置靈活、線路簡單、安裝方便、耐轉(zhuǎn)動、價格低廉且壽命長等優(yōu)點。因此應(yīng)用比較廣泛。LED 數(shù)碼管顯示器可以分為共陰極和共陽極兩種結(jié)構(gòu)。(1)共陰極結(jié)構(gòu):如果所有的發(fā)光二極管的陰極接在

44、一起,稱為共陰極結(jié)構(gòu),則數(shù)碼顯示段輸入高電平有效,當(dāng)某段輸入高電平該段便發(fā)光,如圖 3-6(a)所示。(2)共陽極結(jié)構(gòu):如果所有的發(fā)光二極管的陽極接在一起,稱為共陽極結(jié)構(gòu),則數(shù)碼顯示段輸入低平有效,當(dāng)某段輸入低電平該段便發(fā)光,如圖 3-6(b)所示。abcdefgdpabcdefgdpabcdefgdpa bcdefgdpcomcom(a)共陰極(b)共陽極(c)外形及引腳圖 3-6 七段 LED 顯示器在 LED 顯示器中,為了顯示數(shù)字,就要為 LED 顯示器提供段碼。七段發(fā)光二極管,再加上一個小數(shù)點位,共計 8 段。因此提供給 LED 顯示器的段碼正好一個字節(jié)。在本次設(shè)計中。各段與字節(jié)中各

45、位的對應(yīng)關(guān)系如表 3-2 所示:表 3-2 LED 對應(yīng)段碼代碼位D7D6D5D4D3D2D1D0顯示段dpgfedcba在 7 段 LED 顯示器中,如圖 35 所示,LED 的顯示有共陽和共陰極之分。每個不同的設(shè)計,根據(jù)其在設(shè)計中的具體情況,采用的是不同的編碼表。本次設(shè)計采用的是表 3-3 所示的共陽極編碼方式。其編碼表如表 3-3 所示:王同銳:基于單片機的交通燈控制器的設(shè)計- - 12 -表 3-3 數(shù)碼管字型編碼表共 陽 極D7D6D5D4D3D2D1D0數(shù)據(jù)顯示字符dpgfedcba字型碼011000000C0H111111001F9H210100100A4H310110000B0

46、H41001100199H51001001092H61000001082H711111000F8H81000000080H91001000090H共 陰 極D7D6D5D4D3D2D1D0數(shù)據(jù)顯示字符dpgfedcba字形碼0001111113FH10000011006H2010110115BH3010011114FH40110011066H5011011016DH6011111017DH70000011107H8011111117FH9011011116FH(3)LED 動態(tài)顯示接口:LED 動態(tài)顯示就是利用單片機依次輸出每一位數(shù)碼管的段選碼和對應(yīng)于該位數(shù)碼管的位選控制信號,一位一位輪流點亮

47、各七段數(shù)碼管。對每位數(shù)碼管來說,每隔一段時間點亮一次,如此循環(huán)。利用人眼的“視覺暫留”效應(yīng),只要每位顯示間隔足夠短就可以給人以同時顯示的感覺。在動態(tài)顯示方式中,同一時刻,只有一位 LED 數(shù)碼管在顯示,其他各位是關(guān)閉的。在段選碼和位選碼每送出一次后,應(yīng)保持 1ms 左右,這個時間應(yīng)根據(jù)實際情況而定。不能太小,因而發(fā)光二極管從導(dǎo)通到發(fā)光有一定的延時,導(dǎo)通時間太小,發(fā)光太弱人眼無法看清。但也不能太大,因為安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 13 -畢竟要受限于臨界閃爍頻率,而且此時間越長,占用 CPU 時間也越多。采用動態(tài)顯示方式比較節(jié)省 I/O 接口,硬件電路也較靜態(tài)顯示方式簡單,但其亮度不如靜態(tài)顯

48、示方式,而且在顯示位數(shù)較多時,CPU 要依次掃描,占用 CPU 較多的時間。所以本次設(shè)計采用動態(tài)掃描方式。另外,在本次設(shè)計中,LED 數(shù)碼管需要驅(qū)動電路,為此,我采用 74LS245 作為驅(qū)動芯片。74LS245 是我們常用的芯片,用來驅(qū)動 LED 或者其他的設(shè)備,它是 8 路同相三態(tài)雙向總線收發(fā)器,可雙向傳輸數(shù)據(jù)。74LS245 還具有雙向三態(tài)功能,既可以輸出,也可以輸入數(shù)據(jù)。當(dāng)單片機的 P0 口總線負載達到或超過 P0 最大負載能力時,必須接入74LS245 等總線驅(qū)動器。當(dāng)片選端低電平有效時,DIR=“0”,信號由 B 向 A 傳輸;CE(接收) 。DIR=“1”,信號由 A 向 B 傳

49、輸;(發(fā)送)當(dāng)為高電平時,A、B 均為高阻CE態(tài)。由于 P2 口始終輸出地址的高 8 位,接口時 74LS245 的三態(tài)控制端 1G 和 2G 接地,P2 口與驅(qū)動器輸入線對應(yīng)相連。P0 口與 74LS245 輸入端相連,端接地,保證數(shù)據(jù)CE現(xiàn)暢通。AT89C51 的和相與后接 DIR,使得或有效時,74LS245RDPSENRDPSEN輸入(P0.iDi) ,其它時間處于輸出(P0.iDi)3.6 信號燈電路在設(shè)計交通燈時,采用了發(fā)光二極管代替信號燈。先介紹一下二極管,見圖 3-7。二極管工作原理是單向?qū)?,即只有正極電壓高于負極電壓某特定值時才會導(dǎo)通,而負極電壓高于正極電壓是不導(dǎo)通的。圖

50、3-7 發(fā)光二極管示意圖發(fā)光二極管是一種特殊的二極管,導(dǎo)通時會發(fā)光(發(fā)光二極管導(dǎo)通壓降一般為1.7V1.9V) 。此外,工作電流要滿足該二極管的工作電流。 王同銳:基于單片機的交通燈控制器的設(shè)計- - 14 -圖 3-8 信號燈設(shè)計電路發(fā)光二極管的正負極可以用萬用表進行判斷,把萬用表撥至二極管檔或電阻擋,用兩個表筆分別接觸二極管的兩個引出腳。若發(fā)光二極管被點亮,則與紅表筆相接的引出腳為正極。從外觀上看,發(fā)光二極管的正極引腳的長度也比較長。 一般發(fā)光二極管與 I/O 端口之間都會再連接一個電阻,其作用在于限制通過二極管的電流,從而達到減少功耗或者滿足端口對最大電流的限制。一般發(fā)光二極管的點亮電流

51、為 5mA 至 10mA。 路燈設(shè)計時我采用了紅、黃、綠三種發(fā)光二級管。如圖 3-8 所示。在本次設(shè)計中,電路的具體連接方式如圖 3-9 所示,P0 口經(jīng)過 74LS245 與數(shù)碼管相連,P1 口經(jīng)電阻與 LED 相連。阻值大小計算如下,在本次設(shè)計中,電源電壓為+5V,LEDLEDI/O電源電壓壓降電平所需阻值電阻上的電流壓降為 1.5V,I/O 口電壓為 0.2V,電阻上流過的電流一般為 110mA,所以,按照題目要求,設(shè)計中采用 2.7k 阻值的電阻。圖 3-9 數(shù)碼管及信號燈連接示意圖3.7 按鍵電路設(shè)計在單片機應(yīng)用系統(tǒng)中,常用鍵盤作為輸入設(shè)備,通過它將數(shù)據(jù)、內(nèi)存地址、命令及指令等輸入到

52、系統(tǒng)中,來實現(xiàn)簡單的人機通信。常用的鍵盤接口分為獨立式按鍵接口與矩陣式鍵盤接口。在本次設(shè)計中,由于所需的按鍵較少,我們采用獨立式按鍵。如圖 310 所示:獨立式鍵盤的接口電路:在單片機應(yīng)用系統(tǒng)中,有時只需要幾個簡單的按鍵向系統(tǒng)輸入信息。這時,可將每個按鍵直接接在一根 I/O 接口線上,這種連接方式的鍵盤稱為獨立式鍵盤。如圖 310 所示,每個獨立按鍵單獨占有一根 I/O 接口線,每根 I/O安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 15 -接口線的工作狀態(tài)不會影響到其他 I/O 接口線。這種按鍵接口電路配置靈活,硬件結(jié)構(gòu)簡單,但每個按鍵必須占用一根 I/O 線,I/O 接口線浪費較大。故只在按鍵數(shù)量不多

53、時采用這種按鍵電路。在此電路中,按鍵輸入都采用低電平有效。上拉電阻保證了按鍵斷開時,I/O 接口線有確定的高電平。當(dāng) I/O 接口內(nèi)部有上拉電阻時,外電路可以不配置上拉電阻。 +5VAT89C51P1.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1INTOAT89C51P1.0P1.7P1.6P1.5P1.4P1.3P1.2P1.1+5V(a)(b)圖 3-10 獨立式鍵盤電路在圖 3-10 中(a)為中斷方式的獨立按鍵工作電路,圖(b)為查詢方式的獨立式按鍵電路。按鍵直接與 AT89C51 的 I/O 口線相連,通過 I/O 口,判定各 I/O 口的電平狀態(tài),即可識別出按下的按鍵

54、。王同銳:基于單片機的交通燈控制器的設(shè)計- - 16 -第第 4 章章 軟件設(shè)計軟件設(shè)計通過課題設(shè)計任務(wù)分析,要是設(shè)計具有相應(yīng)的功能,系統(tǒng)的工作流程可以按如下方式進行。系統(tǒng)工作流程:(1) 、程序設(shè)置初始時間,通過 AT89C51 單片機內(nèi)部相應(yīng)寄存器來實現(xiàn)。(2) 、由 AT89C51 單片機的定時器每秒鐘通過 P0 口向 74LS245 的數(shù)據(jù)端口送信息,由 74LS245 的輸出口顯示紅、綠、黃燈的燃亮?xí)r間情況;由 AT89C51 的P1.0、P1.1、P1.2、P1.3,P1.4,P1.5 口顯示每個燈的燃亮情況。(3) 、AT89C51 通過程序設(shè)置各個信號燈的燃亮?xí)r間,通過程序設(shè)置

55、黃、綠、紅時間依次為 3 秒、27 秒、31 秒循環(huán)(本設(shè)計可實現(xiàn)設(shè)置信號燈點亮?xí)r間功能,次時間為預(yù)設(shè)時間) ,由 AT89C51 的 P0 口向 74LS245 的數(shù)據(jù)口輸出。(4) 、AT89C51 本身不具有看門狗,當(dāng)系統(tǒng)出現(xiàn)異常,將發(fā)出溢出中斷。通過專用端口輸出,引起 RESET 復(fù)位信號復(fù)位系統(tǒng)。根據(jù)整個設(shè)計的課題要求,本軟件系統(tǒng)可以分為以下幾個部分,主程序模塊,定時器 T0 服務(wù)子程序,顯示模塊。4.1 主程序模塊主程序初始化和按鍵控制,首先將時間、中斷、次數(shù)、和顯示分別進行初始化,然后啟動定時器對時間進行判斷,將時間送數(shù)據(jù)緩沖區(qū),調(diào)用顯示程序,同時掃描按鍵程序,用無條件跳轉(zhuǎn)指令返

56、回,再調(diào)用顯示程序,如此周而復(fù)始的循環(huán),如圖 4-1所示開始T0初始化中斷初始化次數(shù)初始化顯示初始化啟動T0查燈狀態(tài)表查時間表保存表地址調(diào)用顯示掃描按鍵圖 4-1 主程序流程圖4.2 定時器 T0 服務(wù)子程序定時方法我們采用軟硬件結(jié)合的方法,在主程序中設(shè)定一個初值為 20 的軟件計數(shù)安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 17 -器使定時器 0 工作于方式 1 定時 50 毫秒,這樣每當(dāng) T0 到 50 毫秒時 CPU 就響應(yīng)它的溢出中斷請求,進入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU 先使軟件計數(shù)器減 1,然后判斷它是否為零。為零表示 1 秒已到。定時器工作時必須給計數(shù)器送初值,將這個值送到

57、 TH 和 TL 中。他是以加法記數(shù)的,并能從全 1 到全 0 時自動產(chǎn)生溢出中斷請求。因此工作于方式 1,定時器為 16 位計數(shù)器其定時時間由下式計算:16X12定時時間()振蕩周期216X122定時時間振蕩周期式中 X 為 T0 的初始值,該值和計數(shù)器工作方式有關(guān)。如單片機的主脈沖頻率為 12MHZ,經(jīng)過 12 分頻方式 0 毫秒1318.1922定時時間微秒方式 1 16165.5362定時時間微秒毫秒秒鐘已經(jīng)超過了計數(shù)器的最大定時間,所以我們只有采用定時器和軟件相結(jié)合的辦法才能解決這個問題,定時器需定時 50 毫秒,故 T0 工作于方式 1,定時 20 次,就可定時一秒。 4.3 按鍵

58、子程序設(shè)計目前,MCS51 單片機應(yīng)用系統(tǒng)上的按鍵常采用機械觸點式按鍵,它在斷開、閉合時輸入電壓波形如圖 4-2 所示圖 4-2 按鍵過程.可以看出機械觸點在閉合及斷開瞬間均有抖動過程,時間長短與開關(guān)的機械特性有關(guān),一般為 510ms。由于抖動,會造成被查詢的開關(guān)狀態(tài)無法準(zhǔn)確讀出。例如,一次按鍵產(chǎn)生的正確開關(guān)狀態(tài),由于鍵的抖動,CPU 多次采集到底電平信號,會被誤認為按鍵被多次按下,就會多次進行鍵輸入操作,這是不允許的。為了保證 CPU 對鍵的一次閉合僅在按鍵穩(wěn)定時作一次鍵輸入處理,必須消除產(chǎn)生的前沿(后沿)抖動影響。去除抖動,可以從軟件方面得到實現(xiàn),如下就是針對一按鍵的去抖程序:Unsign

59、ed char key_det(void) /key detected: return 1 static buf = 0 xff;buf=1;if(KEY) buf = 0 x01;王同銳:基于單片機的交通燈控制器的設(shè)計- - 18 -if(buf &0 x1f)=0 x10) /判斷是否是抖動return 1;return 0;本設(shè)計中使用了四個按鍵,根據(jù)其功能,得到其相應(yīng)程序流程圖,如圖 4-3 所示進入鍵盤處理程序判斷鍵值相應(yīng)鍵值程序P1.1=0?YN按下鍵盤返回主程序圖 4-3 鍵盤事件流程圖4.4 顯示程序模塊判斷顯示完了嗎?將位碼左移調(diào)用延時將下一段碼送P0口子程序返回NY

60、進入顯示子程序?qū)⒍未a送P0口將位碼送P1口安徽工程大學(xué)畢業(yè)設(shè)計(論文)- 19 -圖 4-4 顯示程序流程圖顯示程序采用動態(tài)顯示,由位碼控制那一個數(shù)碼管顯示,由段碼控制數(shù)碼管顯示什么數(shù)值,根據(jù)中斷程序顯示時間來查表顯示數(shù)值,從第一位到第四位逐個點亮,同時每顯示一位判斷一次四位顯示完了嗎?沒有顯示完進行顯示下一位,顯示完了從頭開始再循環(huán)。如圖 4-4 所示。王同銳:基于單片機的交通燈控制器的設(shè)計- - 20 -第第 5 章章 調(diào)試與檢測調(diào)試與檢測本次設(shè)計,要進行軟件仿真,所以采用 KEIL 軟件和 Proteus 軟件聯(lián)合調(diào)試,具體過程可以概括為以下兩點:(1) 、在 KEIL 軟件上編寫程序,編譯生

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論