單片機,交通燈系統(tǒng)控制實現(xiàn)、課程設計報告書_第1頁
單片機,交通燈系統(tǒng)控制實現(xiàn)、課程設計報告書_第2頁
單片機,交通燈系統(tǒng)控制實現(xiàn)、課程設計報告書_第3頁
單片機,交通燈系統(tǒng)控制實現(xiàn)、課程設計報告書_第4頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、通信系統(tǒng)實習報告題目名稱:模擬交通燈控制系統(tǒng)姓名:聯(lián)系:指導教師:所在班級:通信所在學院:計算機工程學院提交時間:2013 年 12月 15日目錄1引言.62交通燈控制系統(tǒng)概要設計 .62.1單片機交通燈控制系統(tǒng)通行方案設計 .62.2單片機交通控制系統(tǒng)的功能要求 .82.2.1顯示模塊功能 .82.2.2按鍵模塊功能 .82.3單片機交通控制系統(tǒng)的基本構成及原理 .83系統(tǒng)硬件電路詳細設計 .103.1系統(tǒng)硬件總電路構成 .103.2單片機系統(tǒng) .103.2.1單片機引腳介紹 .113.2.2單片機最小系統(tǒng) .153.3顯示系統(tǒng) .163.3.1 LED 顯示 .163.3.2數(shù)碼管顯示 .

2、173.4信號顯示驅動電路 .173.5鍵盤輸入電路 .184系統(tǒng)軟件程序詳細設計 .194.1程序主體設計流程 .194.2子程序模塊設計 .194.3protel的應用 .215系統(tǒng)測試 .215.1裝配注意事項 .215.2功能性的檢驗 .225.2.1仿真測試 .225.2.2實物焊接結束后的測試 .225.3指標參數(shù)的測量235.4結果分析23總結與展望24致25實習分工情況摘 要近年來隨著科技的飛速發(fā)展, 單片機的應用正在不斷深入, 同時帶動傳統(tǒng)控制檢測技術日益更新。 在實時檢測和自動控制的單片機應用系統(tǒng)中, 單片機往往作為一個核心部件來使用, 僅單片機方面知識是不夠的, 還應根據(jù)

3、具體硬件結構軟硬件結合,加以完善。十字路口車輛穿梭,行人熙攘,車行車道,人行人道,有條不紊。那么靠什么來實現(xiàn)這井然秩序呢?靠的就是交通信號燈的自動指揮系統(tǒng)。 交通信號燈控制方式很多。本系統(tǒng)采用 STC89C51單片機以及單片機最小系統(tǒng)和 74HC245電路以及外圍的按鍵和數(shù)碼管顯示等部件, 設計一個基于單片機的交通燈設計。 設計通過兩位一體共陰極數(shù)碼管顯示, 并能通過按鍵對定時進行設置。 本系統(tǒng)實用性強、操作簡單、擴展功能強。關鍵詞:交通燈,單片機,顯示,計時1 引言當前,大量的信號燈電路正向著數(shù)字化、小功率、多樣化、方便人、車、路三者關系的協(xié)調, 多值化方向發(fā)展隨著社會經濟的發(fā)展, 城市交通

4、問題越來越引起人們的關注。 這些城市紛紛修建城市高速道路, 在高速道路建設完成初期, 它們也曾有效地改善了交通狀況。 然而,隨著交通量的快速增長和缺乏對高速道路的系統(tǒng)研究和控制, 高速道路沒有充分發(fā)揮出預期的作用。 而城市高速道路在構造上的特點,也決定了城市高速道路的交通狀況必然受高速道路與普通道路耦合處交通狀況的制約。人、車、路三者關系的協(xié)調,已成為交通管理部門需要解決的重要問題之一。城市交通控制系統(tǒng)是用于城市交通數(shù)據(jù)檢測、 交通信號燈控制與交通疏導的計算機綜合管理系統(tǒng),它是現(xiàn)代城市交通監(jiān)控指揮系統(tǒng)中最重要的組成部分。2 交通燈控制系統(tǒng)概要設計2.1單片機交通燈控制系統(tǒng)通行方案設計設在十字路

5、口, 分為東西向和南北向, 在任一時刻只有一個方向通行,另一方向禁行,持續(xù)一定時間,經過短暫的過渡時間,將通行禁行方向對換。其具體狀態(tài)如下圖所示。 說明:黑色表示亮,白色表示滅。交通狀態(tài)從狀態(tài)1 開始變換,直至狀態(tài) 6 然后循環(huán)至狀 1,周而復始,即如圖(圖2-1 )所示:直至狀態(tài)6 然后循環(huán)至狀態(tài) 1,通過具體的路口交通燈狀態(tài)的演示分析我們可以把這四個狀態(tài)歸納如下:圖 2-1 交通狀態(tài)東西方向紅燈滅,同時綠燈亮,南北方向黃燈滅,同時紅燈亮,倒計時20秒。此狀態(tài)下,東西向禁止通行,南北向允許通行。東西方向綠燈滅,同時黃燈亮,南北方向紅燈亮,倒計時5 秒。此狀態(tài)下,除了已經正在通行中的其他所以車

6、輛都需等待狀態(tài)轉換。南北方向紅燈滅,同時綠燈亮,東西方向黃燈滅,同時紅燈亮,倒計時30秒。此狀態(tài)下,東西向允許通行,南北向禁止通行。南北方向綠燈滅,同時黃燈亮,東西方向紅燈亮,倒計時5 秒。此狀態(tài)下,除了已經正在通行中的其他所以車輛都需等待狀態(tài)轉換。下面我們可以用圖表表示燈狀態(tài)和行止狀態(tài)的關系如下:表 2-1 交通狀態(tài)及紅綠燈狀態(tài)狀態(tài) 1狀態(tài) 3狀態(tài) 4狀態(tài) 6東西向禁行等待變換通行等待變換南北向通行等待變換禁行等待變換東西紅燈1100東西黃燈0001東西綠燈0010南北紅燈0011南北綠燈1000南北黃燈0100東西南北四個路口均有紅綠黃3 燈和數(shù)碼顯示管4 個,在任一個路口, 遇紅燈禁止通

7、行, 轉綠燈允許通行, 之后黃燈亮警告行止狀態(tài)將變換。狀態(tài)及紅綠燈狀態(tài)如表 2-1 所示。說明: 0 表示滅, 1 表示亮。硬件設計方面:本設計是由 STC89S52單片機作為主控器件, 二位共陽的數(shù)碼管, 8*8 點陣作為受控器件的交通燈模擬系統(tǒng)。軟件設計方面:程序的設計主要是控制整個系統(tǒng)的運行。它包括系統(tǒng)的初始化程序、 顯示子程序、定時器、時間轉換子程序。 通過單片機運行以上各個子程序實現(xiàn)整個系統(tǒng)的設計功能。具體設計見源程序清單。2.2單片機交通控制系統(tǒng)的功能要求本設計能模擬基本的交通控制系統(tǒng), 用紅綠黃燈表示禁行, 通行和等待的信號發(fā)生,還能進行倒計時顯示。 按鍵可以控制禁行、 深夜模式

8、、復位、東西通行、南北通行、時間加、時間減、切換等功能。共四個二位陰極數(shù)碼管,東南西北各一個顯示時間,四個數(shù)碼管的陰極都接到 STC89C51的 P1 口,陽極接到 74HC245 芯片上,通過 P0 口控制 74HC245芯片,起到驅動放大作用。 共 12 個發(fā)光二極管,四個路口每個路口各有一個紅(禁行) 、黃(警告)發(fā)光二極管,四個路口的二極管接到 P2 口,按鍵接 P3 口。2.2.1顯示模塊功能顯示模塊分數(shù)碼管顯示和LED顯示,數(shù)碼管倒計時顯示可以提醒駕駛員在信號燈顏色發(fā)生改變的時間、在“停止”和“通過”兩者間作出合適的選擇。駕駛員和行人普遍都愿意選擇有倒計時顯示的信號控制方式,并且認

9、為有倒計時顯示的路口更安全。倒計時顯示是用來減少駕駛員在信號燈色改變的關鍵時刻做出復雜判斷的一種方法, 它可以提醒駕駛員燈色發(fā)生改變的時間,幫助駕駛員在 “停止”和“通過”兩者間作出合適的選擇。通過兩種顯示結合,是本設計更合理可靠。2.2.2按鍵模塊功能本系統(tǒng)要求的按鍵控制不多,且 I 0 口足夠,可直接采用獨立式。按鍵可以設置系統(tǒng)的運行狀態(tài),禁行狀態(tài)為數(shù)碼管均顯示“ 00”,紅燈全亮;復位按鍵可以將整個系統(tǒng)復位; 東西通行是東西方向的綠燈亮, 南北方向上的紅燈亮; 南北通行為南北方向上的綠燈亮, 東西方向上的紅燈亮; 時間加減可以設置通行和等待通行的時間; 切換按鍵可以切換加減的方向時間。

10、通過安檢模塊的控制, 使得整個系統(tǒng)具有靈活性,實用性。2.3單片機交通控制系統(tǒng)的基本構成及原理十字路口車輛穿梭,行人熙攘,車行車道,人行人道,有條不紊。那么靠什么來實現(xiàn)這井然秩序呢?靠的就是交通信號燈的自動指揮系統(tǒng)。 交通信號燈控制方式很多。本系統(tǒng)采用 STC89C51單片機以及單片機最小系統(tǒng)和 74HC245驅動電路以及外圍的按鍵和數(shù)碼管顯示等部件, 設計一個基于單片機的交通燈設計。 設計通過兩位一體共陰極數(shù)碼管顯示, 并能通過按鍵對定時進行設置。 本系統(tǒng)實用性強、操作簡單、擴展功能強。在相同的時間里提高通車的質量、 效率。并能在高峰期根據(jù)實際狀況結合方程式控制按鈕來調整主次干道的通車時間,

11、 降低交通擁擠堵塞現(xiàn)象。 并使交通控制系統(tǒng)具有緊急控制,使救護車、救護車通過時, 使兩個方向均亮紅燈,救護車和消防車通過后,恢復原來狀態(tài),增加對出現(xiàn)特殊情況的處理能力。本單片機控制交通燈系統(tǒng), 可用單片機直接控制信號燈的狀態(tài)變化, 基本上可以指揮交通的具體通行, 當然,接入 LED數(shù)碼管就可以顯示倒計時以提醒行使者,更具人性化。本系統(tǒng)在此基礎上,單片機對此進行具體處理,及時調整控制指揮。如圖(圖 2-2 )所示:鍵盤設置模塊對系統(tǒng)輸入模式選擇及具體通行時間設置的信號, 系統(tǒng)進入正常工作狀態(tài),執(zhí)行交通燈狀態(tài)顯示控制, 同時將時間數(shù)據(jù)倒計時輸入到 LED數(shù)碼管上實時顯示。 在此過程中還要實時捕捉違

12、規(guī)檢測和緊急按鍵信號, 以達到對異常狀態(tài)進行實時控制的目的。急停按鍵和違規(guī)檢測隨時調用中斷。8 段 LED 數(shù)碼管復位電路驅動顯示單片機最小系統(tǒng)按鍵控制外圍接口單片機紅黃綠信號燈圖 2-2系統(tǒng)的總體框圖據(jù)此,本設計系統(tǒng)以單片機為控制核心,連接成最小系統(tǒng), 和按鍵設置模塊等產生輸入,信號燈狀態(tài)模塊,LED倒計時模塊和接受輸出。系統(tǒng)的總體框圖如上所示。3 系統(tǒng)硬件電路詳細設計3.1系統(tǒng)硬件總電路構成實現(xiàn)本設計要求的具體功能,可以選用stc89C51 單片機及外圍器件構成最小控制系統(tǒng), 12 個發(fā)光二極管分成4 組紅綠黃三色燈構成信號燈指示模塊,8個 LED東西南北各兩個構成倒計時顯示模塊, 若干按

13、鍵組成時間設置和模式選擇按鈕和緊急按鈕等。本系統(tǒng)以單片機為核心,組成一個處理、自動控制為一身的閉環(huán)控制系統(tǒng)。系統(tǒng)硬件電路由單片機、狀態(tài)燈、 LED顯示、驅動電路、按鍵等組成。其具體的硬件電路總圖如圖 3-1 所示。其中 P0, P1,用于送顯 LED數(shù)碼管的型和位, P2 用于控制紅綠黃發(fā)光二極管, XTAL1和 XTAL2接入晶振時鐘電路, REST引腳接上復位電路, P3 用于口按鍵控制。3.2單片機系統(tǒng)單片微型計算機是隨著微型計算機的發(fā)展而產生和發(fā)展的。 自從 1975 年美國德克薩斯儀器公司的第一臺單片微型計算機 ( 簡稱單片機) TMS-1000 問世以來,迄今為止,單片機技術已成為

14、計算機技術的一個獨特分支, 單片機的應用領域也越來越廣泛,特別是在工業(yè)控制中經常遇到對某些物理量進行定時采樣與控制的問題,在儀器儀表智能化中也扮演著極其重要的角色。如果將 8 位單片機的推出作為起點, 那么單片機的發(fā)展歷史大致可以分為以下幾個階段:第一階段(19761978):單片機的探索階段。 以 Intel公司的 MCS-48為代表。 MCS-48的推出是在工控領域的探索,參與這一探索的公司還有Motorola 、Zilog等。都取得了滿意的效果。這就是SCM的誕生年代,“單片機”一詞即由此而來。第二階段( 19781982):單片機的完善階段。 Intel公司在 MCS-48基礎上推出了

15、完善的、典型的單片機系列MCS-51。它在以下幾個方面奠定了典型的通用總線型單片機體系結構。(1)完善的外部總線。 MCS-51設置了經典的 8 位單片機的總線結構,包括8 位數(shù)據(jù)總線、 16 位地址總線、控制總線及具有多機通信功能的串行通信接口。(2)CPU外圍功能單元的集中管理模式。(3)體現(xiàn)工控特性的地址空間及位操作方式。(4)指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控制功能的指令。第三階段(19821990):8 位單片機的鞏固發(fā)展及 16 位單片機的推出階段,也是單片機向微控制器發(fā)展的階段。 Intel 公司推出的 MCS-96系列單片機,將一些用于測控系統(tǒng)的模數(shù)轉換器、 程序運行

16、監(jiān)視器、 脈寬調制器等納入片中, 體現(xiàn)了單片機的微控制器特征。第四階段( 1990):微控制器的全面發(fā)展階段。隨著單片機在各個領域全面、深入地發(fā)展和應用,出現(xiàn)了高速、大尋址圍、強運算能力的8 位/16 位/32位通用型單片機,以及小型廉價的專用型單片機。單片機是在集成電路芯片上集成了各種元件的微型計算機,這些元件包括中央處理器 CPU、數(shù)據(jù)存儲器 RAM、程序存儲器 ROM、定時 / 計數(shù)器、中斷系統(tǒng)、時鐘部件的集成和I/O 接口電路。由于單片機具有體積小、價格低、可靠性高、開發(fā)應用方便等特點, 因此在現(xiàn)代電子技術和工業(yè)領域應用較為廣泛,在智能儀表中單片機是應用最多、最活躍的領域之一。在控制領

17、域中, 現(xiàn)如今人們更注意計算機的底成本、小體積、運行的可靠性和控制的靈活性。在各類儀器、儀表中引入單片機,使儀器儀表智能化, 提高測試的自動化程度和精度,提高計算機的運算速度,簡化儀器儀表的硬件結構,提高其性能價格比。3.2.1單片機引腳介紹單片機主要特點:(1)有優(yōu)異的性能價格比。(2)集成度高、體積小、有很高的可靠性。單片機把各功能部件集成在一塊芯片上,部采用總線結構, 減少了各芯片之間的連線,大大提高了單片機的可靠性和抗干擾能力。另外,其體積小,對于強磁場環(huán)境易于采取屏蔽措施,適合在惡劣環(huán)境下工作。(3)控制功能強。為了滿足工業(yè)控制的要求,一般單片機的指令系統(tǒng)中均有極豐富的轉移指令、 I

18、/O 口的邏輯操作以及位處理功能。單片機的邏輯控制功能及運行速度均高于同一檔次的微機。(4)低功耗、低電壓,便于生產便攜式產品。(5)外部總線增加了I2C ( Inter-Integrated Circuit)及SPI(SerialPeripheral Interface)等串行總線方式,進一步縮小了體積,簡化了結構。(6)單片機的系統(tǒng)擴展和系統(tǒng)配置較典型、規(guī),容易構成各種規(guī)模的應用系統(tǒng)。優(yōu)異的性能價格比。1)集成度高、體積小、有很高的可靠性。單片機把各功能部件集成在一塊芯片上,部采用總線結構, 減少了各芯片之間的連線,大大提高了單片機的可靠性與抗干擾能力。另外,其體積小,對于強磁場環(huán)境易于采

19、取屏蔽措施,適合于在惡劣環(huán)境下工作。此外,程序多采取固化形式也可以提高可靠性。2)控制功能強。為了滿足工業(yè)控制要求,一般單片機的指令系統(tǒng)中均有極豐富的轉移指令、I/O 口的邏輯操作以及位處理功能。單片機的邏輯控制功能及運行速度均高于同一檔次的微機。單片機的系統(tǒng)擴展、系統(tǒng)配置較典型、規(guī),容易構成各種規(guī)模的應用系統(tǒng)。VCC :STC89C52 電源正端輸入,接 +5V。GND:電源地端。XTAL1:單芯片系統(tǒng)時鐘的反相放大器輸入端。XTAL2:系統(tǒng)時鐘的反相放大器輸出端,一般在設計上只要在XTAL1 和XTAL2 上接上一只石英振蕩晶體系統(tǒng)就可以動作了,此外可以在兩引腳與地之間加入一 20PF 的

20、小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機。RESET:STC89C52的重置引腳,高電平動作,當要對晶片重置時,只要對此引腳電平提升至高電平并保持兩個機器周期以上的時間,AT89S51便能完成系統(tǒng)重置的各項動作,使得部特殊功能寄存器之容均被設成已知狀態(tài),并且至地址0000H處開始讀入程序代碼而執(zhí)行程序。EA/Vpp:EA 為英文 External Access的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當此引腳接低電平后, 系統(tǒng)會取用外部的程序代碼 (存于外部 EPROM中)來執(zhí)行程序。因此在 8031 及 8032 中, EA引腳必須接低電平,因為其部無程序存儲器空間。 如果是

21、使用 8751 部程序空間時,此引腳要接成高電平。此外,在將程序代碼燒錄至 8751 部 EPROM時,可以利用此引腳來輸入 21V 的燒錄高壓( Vpp)。ALE/PROG: ALE是英文 Address Latch Enable 的縮寫,表示地址鎖存器啟用信號。 STC89C52可以利用這支引腳來觸發(fā)外部的 8 位鎖存器(如 74LS373),將端口 0 的地址總線( A0A7)鎖進鎖存器中,因為 STC89C52是以多工的方式送出地址及數(shù)據(jù)。平時在程序執(zhí)行時 ALE 引腳的輸出頻率約是系統(tǒng)工作頻率的1/6 ,因此可以用來驅動其他周邊晶片的時基輸入。此外在燒錄 8751 程序代碼時,此引腳

22、會被當成程序規(guī)劃的特殊功能來使用。PSEN:此為 Program Store Enable 的縮寫,其意為程序儲存啟用,當8051被設成為讀取外部程序代碼工作模式時(EA=0),會送出此信號以便取得程序代碼,通常這支腳是接到EPROM的 OE腳。 STC89C52可以利用 PSEN及 RD引腳分別啟用存在外部的RAM與 EPROM,使得數(shù)據(jù)存儲器與程序存儲器可以合并在一起而共用 64K 的定址圍。PORT0(P0.0 P0.7 ):端口 0 是一個 8 位寬的開路汲極( OpenDrain )雙向輸出入端口,共有8 個位, P0.0 表示位 0,P0.1 表示位 1,依此類推。其他三個I/O

23、端口( P1、P2、P3)則不具有此電路組態(tài),而是部有一提升電路,P0 在當做I/O 用時可以推動 8 個 LS 的 TTL負載。如果當 EA引腳為低電平時(即取用外部程序代碼或數(shù)據(jù)存儲器) ,P0 就以多工方式提供地址總線(A0 A7)及數(shù)據(jù)總線( D0D7)。設計者必須外加一鎖存器將端口 0 送出的地址栓鎖住成為 A0A7,再配合端口 2 所送出的 A8A15 合成一完整的 16 位地址總線,而定址到 64K 的外部存儲器空間。PORT2(P2.0 P2.7 ):端口 2 是具有部提升電路的雙向 I/O 端口,每一個引腳可以推動 4 個 LS的 TTL 負載,若將端口 2 的輸出設為高電平

24、時,此端口便能當成輸入端口來使用。 P2 除了當做一般 I/O 端口使用外,若是在 STC89C52擴充外接程序存儲器或數(shù)據(jù)存儲器時,也提供地址總線的高字節(jié) A8A15,這個時候 P2 便不能當做 I/O 來使用了。PORT1(P1.0 P1.7 ):端口 1 也是具有部提升電路的雙向I/O 端口,其輸出緩沖器可以推動4 個 LS TTL 負載,同樣地若將端口1 的輸出設為高電平,便是由此端口來輸入數(shù)據(jù)。如果是使用8052 或是 8032 的話, P1.0 又當做定時器2的外部脈沖輸入腳,而 P1.1 可以有 T2EX功能,可以做外部中斷輸入的觸發(fā)腳位。PORT3(P3.0 P3.7 ):端口

25、 3 也具有部提升電路的雙向I/O 端口,其輸出緩沖器可以推動 4 個 TTL 負載,同時還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計時計數(shù)控制及外部數(shù)據(jù)存儲器容的讀取或寫入控制等功能。其引腳分配如下:P3.0 :RXD,串行通信輸入。P3.1 :TXD,串行通信輸出。P3.2 :INT0,外部中斷 0 輸入。P3.3 :INT1,外部中斷 1 輸入。P3.4 :T0,計時計數(shù)器 0 輸入。P3.5 :T1,計時計數(shù)器 1 輸入。P3.6 :WR:外部數(shù)據(jù)存儲器的寫入信號。P3.7 :RD,外部數(shù)據(jù)存儲器的讀取信號。RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周

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

27、期間,每個機器周期兩次 /PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。/EA/VPP:當 /EA 保持低電平時,則在此期間外部程序存儲器 (0000H-FFFFH),不管是否有部程序存儲器。注意加密方式端保持高電平時,此間部程序存儲器。在 12V 編程電源( VPP)單片機引腳圖如下:1 時, /EA 將部鎖定為 RESET;當 /EA FLASH編程期間,此引腳也用于施加圖 3-1單片機引腳圖3.2.2單片機最小系統(tǒng)單片機芯片還有一項主要容就是并行I/O 口。 STC89C51共有 4 個 8 位的并行 I/O 口,分別記作 P0、 P1、P2、 P3。每個口

28、都包含一個鎖存器、一個輸出驅動器和輸入緩沖器。 實際上,它們已被歸入專用寄存器之列, 并且具有字節(jié)尋址和位尋址功能。 在訪問片外擴展存儲器時, 低 8 位地址和數(shù)據(jù)由 P0口分時傳送,高 8 位地址由 P2 口傳送。在無片外擴展存儲器的系統(tǒng)中,這4 個口的每一位均可作為雙向的 I/O 端口使用。單片機的 4 個 I/O 口都是 8 位雙向口,這些口在結構和特性上是基本相同的,但又各具特點。STC89C51單片機的時鐘信號通常有兩種方式產生:一是部時鐘方式,二是外部時鐘方式。 在單片機部有一振蕩電路, 只要在單片機的XTAL1和 XTAL2引腳外接石英晶體(簡稱晶振) ,就構成了自激振蕩器并在單

29、片機部產生時鐘脈沖信號。圖中電容C1 和 C2 的作用是穩(wěn)定頻率和快速起振,電容值在5-30pF,典型值為 30pF。晶振 CYS的振蕩頻率圍在1.2-12MHz 間選擇,典型值為12MHz和11.0592MHz。當在 STC89C51單片機的 RST引腳引入高電平并保持2 個機器周期時,單片機部就執(zhí)行復位操作 (若該引腳持續(xù)保持高電平, 單片機就處于循環(huán)復位狀態(tài)) 。復位電路通常采用上電自動復位和按鈕復位兩種方式。最簡單的上電自動復位電路中上電自動復位是通過外部復位電路的電容充電來實現(xiàn)的。只要 Vcc 的上升時間不超過1ms,就可以實現(xiàn)自動上電復位。時鐘頻率用6MHZ時 C 取 22uF,R

30、取 1K。除了上電復位外,有時還需要按鍵手動復位。本設計就是用的按鍵手動復位。按鍵手動復位有電平方式和脈沖方式兩種。其中電平復位是通過RST端經過電阻與電源Vcc 接通而實現(xiàn)的。系統(tǒng)圖如圖3-2 所示圖 3-2單片機最小系統(tǒng)原理圖3.3顯示系統(tǒng)3.3.1 LED顯示LED 英文單詞的縮寫,主要含義:LED = Light Emitting Diode,發(fā)光二極管,是一種能夠將電能轉化為可見光的固態(tài)的半導體器件,它可以直接把電轉化為光;它改變了白熾燈鎢絲發(fā)光與節(jié)能燈三基色粉發(fā)光的原理,而采用電場發(fā)光。據(jù)分析, LED的特點非常明顯,壽命長、光效高、輻射低與功耗低。作為目前全球最受矚目的新一代光源

31、,LED因其高亮度、低熱量、長壽命、無毒、可回收再利用等優(yōu)點,被稱為是21 世紀最有發(fā)展前景的綠色照明光源。我國的LED產業(yè)起步于 20 世紀 70 年代,經過近 40 年的發(fā)展,產品廣泛應用于景觀照明和普通照明領域,我國已成為世界第一大照明電器生產國和第二大照明電器出口國。近幾年來,隨著人們對半導體發(fā)光材料研究的不斷深入, LED制造工藝的不斷進步和新材料(氮化物晶體和熒光粉)的開發(fā)和應用,各種顏色的超高亮度LED取得了突破性進展,其發(fā)光效率提高了近 1000 倍,色度方面已實現(xiàn)了可見光波段的所有顏色, 其中最重要的是超高亮度白光 LED的出現(xiàn),使 LED應用領域跨越至高效率照明光源市場成為

32、可能。 曾經有人指出, 高亮度 LED將是人類繼愛迪生發(fā)明白熾燈泡后,最偉大的發(fā)明之一。 交通燈利用發(fā)光二極管來顯示不同顏色的信號指示燈。圖 3-3 LED 燈3.3.2數(shù)碼管顯示數(shù)碼管是一種半導體發(fā)光器件, 其基本單元是發(fā)光二極管。 數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極管單元(多一個小數(shù)點顯示);按能顯示多少個“ 8”可分為 1 位、 2 位、 4 位等等數(shù)碼管:按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。 共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極 (COM)的數(shù)碼管,共陽數(shù)碼管在應用時應將公共極 COM接到 +5V,當某一

33、字段發(fā)光二極管的陰極為低電平時,相應字段就點亮, 當某一字段的陰極為高電平時, 相應字段就不亮。 共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極 (COM)的數(shù)碼管,共陰數(shù)碼管在應用時應將公共極 COM接到地線 GND上,當某一字段發(fā)光二極管的陽極為高電平時,相應字段就點亮,當某一字段的陽極為低電平時,相應字段就不亮。由于它的價格便宜使用簡單在電器特別是家電領域應用極為廣泛。圖 3-4 數(shù)碼管顯示3.4信號顯示驅動電路74HC245譯碼器可接受3 位二進制加權地址輸入(A0, A1和A2),并當使能時,提供8 個互斥的低有效輸出(Y0 至 Y7)。74HC245特有3 個使能輸入端:

34、兩個低有效(E1和E2)和一個高有效(E3)。除非E1 和 E2 置低且E3 置高,否則74HC138將保持所有輸出為高。利用這種復合使能特性,僅需4 片 74HC245芯片和 1 個反相器,即可輕松實現(xiàn)并行擴展,組合成為一個1-32 (5 線到32 線)譯碼器。任選一個低有效使能輸入端作為數(shù)據(jù)輸入,而把其余的使能輸入端作為選通端,則 74HC245亦可充當一個 8 輸出多路分配器, 未使用的使能輸入端必須保持綁定在各自合適的高有效或低有效狀態(tài)。74HC245作用原理于高性能的存貯譯碼或要求傳輸延遲時間短的數(shù)據(jù)傳輸系統(tǒng) , 在 高性能存貯器系統(tǒng)中 , 用這種譯碼器可以提高譯碼系統(tǒng)的效率。將快速

35、賦能電路用于高速存貯器時, 譯碼器的延遲時間和存貯器的賦能時間通常小于存貯器的典型存取時間 , 這就是說由肖特基鉗位的系統(tǒng)譯碼器所引起的有效系統(tǒng)延遲可以忽略不計。 HC138 按照三位二進制輸入碼和賦能輸入條件, 從 8 個輸出端中譯出一個低電平輸出。兩個低電平有效的賦能輸入端和一個高電平有效的賦能輸入端減少了擴展所需要的外接門或倒相器 , 擴展成 24 線譯碼器不需外接門 ; 擴展成 32 線譯碼器 , 只需要接一個外接倒相器。 在解調器應用中 , 賦能輸入端可用作數(shù)據(jù)輸入端。圖 3-5 74HC245 電路圖設計中將 1 腳接 VCC,19 腳接地,整個芯片是輸入端輸入高則輸出端輸出高,輸

36、入端輸入低則輸出端輸出地,只是相當于驅動作用。3.5鍵盤輸入電路單片機鍵盤有獨立鍵盤和矩陣式鍵盤兩種:獨立鍵盤每一個I/O口上只接一個按鍵,按鍵的另一端接電源或接地(一般接地),這種接法程序比較簡單且系統(tǒng)更加穩(wěn)定; 而矩陣式鍵盤式接法程序比較復雜,但是占用的 I/O 少。根據(jù)本設計的需要這里選用了獨立式鍵盤接法。獨立式鍵盤的實現(xiàn)方法是利用單片機I/O 口讀取口的電平高低來判斷是否有鍵按下。將常開按鍵的一端接地, 另一端接一個 I/O 口,程序開始時將此 I/O口置于高電平,平時無鍵按下時 I/O 口保護高電平。當有鍵按下時,此I/O 口與地短路迫使 I/O 口為低電平。按鍵釋放后,單片機部的上

37、拉電阻使I/O 口仍然保持高電平。我們所要做的就是在程序中查尋此I/O 口的電平狀態(tài)就可以了解我們是否有按鍵動作了。在用單片機對鍵盤處理的時候涉及到了一個重要的過程,那就是鍵盤的去抖動。這里說的抖動是機械的抖動, 是當鍵盤在未按到按下的臨界區(qū)產生的電平不穩(wěn)定正?,F(xiàn)象,并不是我們在按鍵時通過注意可以避免的。 這種抖動一般 10200 毫秒之間,這種不穩(wěn)定電平的抖動時間對于人來說太快了, 而對于時鐘是微秒的單片機而言則是慢長的。 硬件去抖動就是用部分電路對抖動部分加之處理, 軟件去抖動不是去掉抖動, 而是避抖動部分的時間, 等鍵盤穩(wěn)定了再對其處理。 所以這里選擇了軟件去抖動,實現(xiàn)法是先查尋按鍵當有

38、低電平出現(xiàn)時立即延時10200 毫秒以避開抖動(經典值為 20 毫秒),延時結束后再讀一次 I/O 口的值,這一次的值如果為 1 表示低電平的時間不到 10200 毫秒,視為干擾信號。 當讀出的值是 0 時則表示有按鍵按下,調用相應的處理程序。 硬件電路如圖 3-7 所示:K1K2K3K7K5ad dK41212121212121234343434343434sto pd xn bo kK6d ecq ieh u an圖 3-7鍵盤控制電路圖4 系統(tǒng)軟件程序詳細設計4.1程序主體設計流程全部控制程序實際上分為若干模塊:鍵盤設置處理程序,狀態(tài)燈控制程序,LED顯示程序,消抖動延時程序, 次狀態(tài)判

39、斷及處理程序, 緊?;蜻`規(guī)判斷程序,中斷服務子程序,車流量計數(shù)程序,紅綠燈時間調整程序等。整個軟件程序方面主要分兩大部分:按鍵處理程序和50ms掃描程序。流程圖如圖(圖 4-1 )所示。定義狀態(tài)數(shù)組初始化外部中設置字型碼和字位宏定義斷碼,完成顯示I/O 初始化定義字位碼函數(shù)進入環(huán)while(1)循返回while(1) 函數(shù)定義共陰極字型編碼表進入主函數(shù)調用顯示控制函數(shù)main()void display ()定義函數(shù)變量并初始化定時器 0 初始 化調用Buzzer() 函數(shù)圖 4-1 系統(tǒng)總的流程圖4.2子程序模塊設計按鍵模塊的控制是調用中斷來實現(xiàn)控制的,獨立式鍵盤的實現(xiàn)方法是利用單片機 I/

40、O 口讀取口的電平高低來判斷是否有鍵按下。 將常開按鍵的一端接地, 另一端接一個 I/O 口,程序開始時將此 I/O 口置于高電平,平時無鍵按下時 I/O 口保護高電平。當有鍵按下時,此 I/O 口與地短路迫使 I/O 口為低電平。按鍵釋放后,單片機部的上拉電阻使I/O 口仍然保持高電平。 我們所要做的就是在程序中查尋此 I/O 口的電平狀態(tài)就可以了解我們是否有按鍵動作了。INT1INT0南北通行東西通行東西綠燈亮東西綠燈亮南北紅燈亮南北紅燈亮保持中斷保持中斷中斷返回中斷返回圖 4-2 中斷子程序定時中斷子程序是本設計的重點,定時器一但啟動, 它便在原來的數(shù)值上開始加 1 計數(shù),若在程序開始時

41、, 我們沒有設置 TH0和 TL0,它們的默認值都是0,假設時鐘頻率為 12MHz, 12 個時鐘周期為一個機器周期,那么此時機器周期為1us,記滿 TH0和 TL0 就需要 216 -1 個數(shù),再來一個脈沖計數(shù)器溢出,隨即向CPU申請中斷。因此溢出一次共需 65536us, 約等于 65.6ms,如果我們要定時 50ms 的話,那么就需要先給 TH0 和 TL0 裝一個初值,在這個初值的基礎上記 50000 個數(shù)后,定時器溢出,此時剛好就是 50ms中斷一次,當需要定時 1s 時,我們寫程序時當產生20 次 50ms的定時器中斷后便認為是1s,這樣便可精確控制定時時間啦負責完成數(shù)碼管輸出數(shù)據(jù)

42、刷新和各個狀態(tài)的處理切換。中斷子程序包括數(shù)碼管輸出數(shù)據(jù)刷新程序和各狀態(tài)處理程序。中斷程序的流程圖如圖所示。定時中斷入口定義 1s啟動定時器中斷設置字型碼和字位碼,完成數(shù)碼管倒計時顯示初始化定時器0關閉定時器0計數(shù)變量自加1圖 4-3定時中斷流程圖4.3protel的應用Protel 軟件是由澳大利亞的 Protel Technolgy 公司推出的,一直是從事印刷電路板設計的首選軟件。 在 1990 年,Protel 軟件由 DOS平臺發(fā)展到 Windos 平臺,是世界上第一家運行在 Windos 平臺的 EDA(電子設計自動化)軟件。Protel99 SE 是由 Protel 99版本發(fā)展而來

43、的,是基于Windos 環(huán)境下的 EDA軟件。Protel 99 SE主要的功能模塊電路原理圖 (Schematic) 設計模塊。該模塊主要包括設計原理圖的原理圖編輯器,用于修改、生成原件符號的元件庫編輯器以及各種報表的生成器。印刷電路板 (PCB)設計模塊。該模塊主要包括用于設計電路板的 PCB編輯器,用于 PCB自動布線的 Route 模塊。用于修改、生成元件封裝的元件封裝庫編輯器以及各種報表的生成器??删幊踢壿嬈骷?PLD)設計模塊。該模塊主要包括具有語法意識的文本編輯器、用于編譯和仿真設計結果的 PLD模塊。電路仿真 (Simulate)模塊。該模塊主要包括一個功能強大的數(shù)/ ?;旌闲盘栯娐贩抡嫫?,能提供連續(xù)的模擬信號和離散的數(shù)字信號仿真。5 系統(tǒng)測試5.1裝配注意事項1)元件需插在板子的本面即沒有焊盤的一面。2) 元件具體位置參見裝配圖 . 特別是有極性元件不要接反 , 否則就會燒壞 . 。5.2功能性的檢驗5.2.1仿真測試圖 5-1定時中斷流程圖5.2.2實物焊接結束后

溫馨提示

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

最新文檔

評論

0/150

提交評論