【智能交通信號燈的設(shè)計8200字(論文)】_第1頁
【智能交通信號燈的設(shè)計8200字(論文)】_第2頁
【智能交通信號燈的設(shè)計8200字(論文)】_第3頁
【智能交通信號燈的設(shè)計8200字(論文)】_第4頁
【智能交通信號燈的設(shè)計8200字(論文)】_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

智能交通信號燈的設(shè)計摘要:本系統(tǒng)以STC89C51單片機(jī)為核心,由74HC245電路以及外圍的按鍵和數(shù)碼管顯示部件構(gòu)成。系統(tǒng)由兩位一體共陰極數(shù)碼管顯示,并能通過按鍵對時間進(jìn)行設(shè)置,且具有蜂鳴器提示。本系統(tǒng)實用性強(qiáng)、操作簡單、擴(kuò)展功能強(qiáng)。關(guān)鍵詞:交通燈;單片機(jī);顯示;計時目錄1引言 11.1交通信號燈簡介 11.2交通信號燈發(fā)展現(xiàn)狀 21.3本課題研究的背景、目的和意義 22系統(tǒng)設(shè)計方案及要求 32.1交通燈控制系統(tǒng)通行方案設(shè)計 32.2單片機(jī)交通信號燈控制系統(tǒng)功能要求 52.2.1顯示模塊功能 62.2.2按鍵模塊功能 62.3單片機(jī)交通燈控制系統(tǒng)的基本構(gòu)成及原理 63系統(tǒng)硬件電路設(shè)計 83.1系統(tǒng)硬件總電路構(gòu)成 83.2單片機(jī)系統(tǒng) 83.3顯示系統(tǒng) 113.3.1LED顯示系統(tǒng) 113.3.2數(shù)碼管顯示 123.4信號顯示驅(qū)動電路 133.5鍵盤輸入電路 144系統(tǒng)軟件程序設(shè)計 174.1程序主體設(shè)計流程 174.2子程序模塊設(shè)計 185結(jié)束語 20參考文獻(xiàn) 23附錄 241引言1.1交通信號燈簡介如今,每個路口都安裝了交通信號燈,已然成為疏導(dǎo)交通最常用、最有效的手段。但這項技術(shù)從19世紀(jì)就出現(xiàn)了。1858年,英國倫敦的主要道路上安裝了紅色和藍(lán)色的機(jī)械燈,這是世界上第一個紅綠燈,1868年,英國機(jī)械工程師奈特在倫敦威斯敏斯特區(qū)議會大樓對面的廣場上安裝了世界上第一個天然氣交通燈,由紅綠燈和綠綠燈組成。紅色表示停車,綠色表示通過。1869年1月2日,煤氣燈爆炸,警察受傷,所以取消了。美國出現(xiàn)了電動交通燈。它們由紅色、綠色和黃色的圓形前照燈組成。它們被安裝在紐約第五大街的一座塔上。紅色代表“?!保G色代表“走”。在1918年,有紅綠燈和紅外線燈。一個是安裝一個地下壓力探測器,一種是用喇叭打開交通燈,當(dāng)司機(jī)遇到紅燈時,按喇叭把紅燈變成綠燈,當(dāng)行人爬上壓力敏感的道路時,可以接過街的人。紅外線光束可以將信號燈的紅燈延長一段時間,延遲車輛的釋放時間,避免交通事故的發(fā)生,信號燈的出現(xiàn)可以有效控制交通,對驅(qū)動交通流起到重要作用,在1968年,聯(lián)合國在《道路交通協(xié)定》和《道路標(biāo)志和信號》中定義了各種信號的含義。綠燈是交通信號。綠燈前面的車輛可以直行,左轉(zhuǎn)和右轉(zhuǎn),除非另一個標(biāo)志禁止駕駛。左轉(zhuǎn)或右轉(zhuǎn)的車輛必須優(yōu)先考慮在交叉口合法駕駛的車輛和通過交叉口的行人。紅燈和禁止通行的信號。在交叉口,紅燈前面的車輛必須停在停車線后面。黃燈是一個警告信號。有黃燈的車輛不能越過停車線,但當(dāng)它們離停車線太近而不能安全停車時,它們可以進(jìn)入交叉口。電子科學(xué)技術(shù)的迅猛發(fā)展帶來了巨大的改變,現(xiàn)代電子技術(shù)與機(jī)械技術(shù)的結(jié)合進(jìn)而催生生了大量先進(jìn)的電子產(chǎn)品。其中單片機(jī)鄰域的發(fā)展愈發(fā)迅速。由于它的特殊結(jié)構(gòu),在諸多領(lǐng)域?qū)崿F(xiàn)了普通微機(jī)所無法完成的各種功能,具有高性能、低價格、高集成度、小尺寸、高可靠性、控制功能強(qiáng)、低電壓的諸多特點。單片機(jī)在各種鄰域中都有廣闊的應(yīng)用前景。1.2交通燈的發(fā)展現(xiàn)狀現(xiàn)在,交通信號燈的種類很多。有些用CPLD來實現(xiàn)對交通信號燈的控制。有些用PLC來控制交通燈。有的用單片機(jī)控制交通燈。在中國,交通燈往往設(shè)置在十字路口。紅,綠,黃三色燈分別表示不同的交通信號,并兼具倒計時顯示功能來控制行人和車輛的通行。一般來說,這種燈能保證行人和車輛的暢通和安全。但是,從現(xiàn)在我國交通流量不斷增加的發(fā)展情況來看,還存在很多不足的方面。比如,如果車輛放行時間是固定的,那么交叉口東西向和南北向的車流相差很大,那么如何給車流較大的主干道更多的放行時間就成了一個問題。1.3本課題研究的背景、目的和意義隨著我國城市機(jī)動車數(shù)量的不斷增加,諸多城市出現(xiàn)了十字路口車輛堵塞,交通超負(fù)荷運(yùn)作的問題。自上世紀(jì)80年代末以來,許多城市紛紛修建了高速路用來解決此類問題。在高速路建成的初期,這一決定一定程度上解決了車輛堵塞的現(xiàn)象。然而,隨著我國經(jīng)濟(jì)水平的迅猛發(fā)展、人民生活水平的不斷提高,以及城市機(jī)動車數(shù)量的增加和高速公路教高的發(fā)展成本,該決策逐漸失去了原有的預(yù)期效果。用何種方法來最大限度地緩解交通壓力,已成為交通管理者和城市規(guī)劃部門急需解決的問題。當(dāng)前,我國城市仍采用傳統(tǒng)的紅綠燈的控制方式。隨著城市經(jīng)濟(jì)的不斷發(fā)展以及交通流量的不斷擴(kuò)大,傳統(tǒng)的紅綠燈的控制方式所存在的問題愈發(fā)明顯:車輛放行時,交叉口往往出現(xiàn)不同的交通車流量,而干道的放行時間卻是一致的。如此造成大量車輛停駛和擁堵,但僅僅改變主干道開通的時間在這段時間形成的盲點,無法最大限度地緩解交通壓力。當(dāng)主路車輛較多,車流較大時,不能及時改變交通時間,延長主路交通時間,造成交通擁堵。為了更好地解決這類問題,本文介紹的系統(tǒng)通過紅外感應(yīng)裝置對車流量進(jìn)行檢測并顯示,隨即利用單片機(jī)對路口的交通流進(jìn)行統(tǒng)計并計數(shù),然后執(zhí)行處理程序,從而實現(xiàn)對交通信號燈的智能控制,從而實現(xiàn)根據(jù)交通流量對交通信號燈的進(jìn)行實時控制。該系統(tǒng)具有成本低,實用性好,安全可靠等優(yōu)點,具有廣闊的應(yīng)用前景。2系統(tǒng)設(shè)計方案及要求2.1單片機(jī)交通燈控制系統(tǒng)通行方案設(shè)計設(shè)置在十字路口,分為東西向和南北向。在任何時間,交通只有一個方向,同時另一個方向是禁止通行的。并且它會持續(xù)一段時候。在較短的時間延時后,通行的方向會發(fā)生改變。具體情況如圖2.1所示。注:黑表示打開,白表示關(guān)閉。業(yè)務(wù)狀態(tài)從狀態(tài)1變?yōu)闋顟B(tài)6,然后循環(huán)到狀態(tài)1。通過對交叉口紅綠燈狀態(tài)的論證和分析,能小結(jié)出這四種狀態(tài),如圖2.1所示。圖2.1交通狀態(tài)東西方向紅燈熄滅,同時綠燈亮,南北方向黃燈熄滅,同時紅燈亮,倒數(shù)20秒。這種狀態(tài)下禁止東西通行,允許南北通行。東西方的綠燈熄滅。同時黃色的燈亮。南北方向紅燈亮。倒計時是5秒。在這種狀態(tài)下,已經(jīng)通行中的其他車輛需要等待狀態(tài)轉(zhuǎn)換。南北方向紅燈熄滅,同時綠燈亮,東西方向黃燈熄滅,同時紅燈亮,倒數(shù)30秒。這種狀態(tài)允許東西通行,禁止南北通行。南北方向綠燈熄滅,同時黃燈亮,東西方向紅信號亮,倒數(shù)5秒。在這種狀態(tài)下,除了已經(jīng)通行以外還需要等待車輛的狀態(tài)轉(zhuǎn)換。下面我們可以用表2.1表示燈狀態(tài)和行止?fàn)顟B(tài)的關(guān)系:表2.1交通狀態(tài)及紅綠燈狀態(tài)狀態(tài)1狀態(tài)3狀態(tài)4狀態(tài)6東西向禁行等待變換通行等待變換南北向通行等待變換禁行等待變換東西紅燈1100東西黃燈0001東西綠燈0010南北紅燈0011南北綠燈1000南北黃燈0100東,西,北,南四個路口有紅,綠,黃三色燈和四個數(shù)碼管。在任何交叉口,紅燈禁止通過,綠燈允許通過,然后黃燈亮表示通行狀態(tài)即將發(fā)生變化。狀態(tài)和紅綠燈狀態(tài)見表2.1。注:0表示關(guān),1表示開。2.2單片機(jī)交通控制系統(tǒng)的功能要求本設(shè)計實現(xiàn)了基本的交通控制系統(tǒng)的功能,分別用紅,綠,黃三種燈來表示禁止通行,通過和等待信號,也有倒計時顯示的功能。按鍵可實現(xiàn)緊急模式,深夜模式,復(fù)位,東西交通,南北交通,時候增加,時間減少,切換等功能。一共有四個2位陰極數(shù)碼管,東南西北各一個顯示時間,四個數(shù)碼管的陰極都接到STC89C51的P1口,陽極接到74HC245芯片上,通過P0口控制74HC245芯片,起到驅(qū)動放大作用。共12個發(fā)光二極管,四個路口每個路口各有一個紅(禁行)、黃(警告)發(fā)光二極管,四個路口的二極管接到P2口,按鍵接P3口,蜂鳴器接P3.0。2.2.1顯示模塊功能顯示模塊分為數(shù)字管和LED顯示兩部分。倒計時燈表示如果信號顏色發(fā)生變化,駕駛員在停止和通過之間做出正確的選擇。倒計時是減少駕駛員改變燈顏色時復(fù)雜判斷的方法。那個告訴司機(jī)燈顏色變化的時間。幫助司機(jī)在停車和通過之間做出正確的選擇。兩個顯示器的結(jié)合,使設(shè)計更加合理和可靠。2.2.2按鍵模塊功能本系統(tǒng)要求的按鍵控制不多,且I/0口足夠,可直接采用獨立式。按此按鈕可設(shè)置系統(tǒng)的運(yùn)行狀態(tài)。在禁止?fàn)顟B(tài)下,數(shù)碼管顯示00,紅燈亮。重置按鈕將重置整個系統(tǒng)。東西方向的通行這個方向變成藍(lán)色,變成南北方向的紅色。往南走,這個方向的綠燈亮,東西方向的紅燈亮。時間的延長可以設(shè)定通過等待時間。切換按鈕可以切換加減速方向。通過安全模塊的控制,整個系統(tǒng)靈活實用。2.3單片機(jī)交通控制系統(tǒng)的基本構(gòu)成及原理十字路口,車輛穿梭,行人熙熙攘攘,車道人文有序。那么我們怎樣才能實現(xiàn)這個效果呢?交通信號的自動指揮系統(tǒng)??刂菩盘柕姆椒ㄓ泻芏唷T撓到y(tǒng)采用STC89C51單片機(jī)、74HC245驅(qū)動電路及周邊按鍵及數(shù)字管顯示器等構(gòu)成部分,設(shè)計了基于單片機(jī)的交通信號燈設(shè)計方案。用兩個人一體的陰極數(shù)字管表示,用按鈕可以設(shè)定時機(jī)。這個系統(tǒng)實用性強(qiáng),操作簡單,擴(kuò)展功能強(qiáng)。同時提高交通質(zhì)量和效率。根據(jù)高峰時間的實際情況調(diào)整主要干線道路的開通時間,可以減少交通堵塞。交通控制系統(tǒng)有緊急控制功能。像這樣救護(hù)車和救護(hù)車通過的話,兩個方向的紅燈就會亮。救護(hù)車、消防車通過后,恢復(fù)原狀,提高特殊情況處理能力。這個微處理器控制交通燈系統(tǒng)。直接控制信號狀態(tài)的變化,基本指導(dǎo)具體的交通。當(dāng)然,如果連接LED的數(shù)字管的話,可以顯示倒計時提醒駕駛員。更人性化,安全性兼?zhèn)?。在此基礎(chǔ)上,宏處理器對具體控制指令進(jìn)行處理,進(jìn)而及時調(diào)整控制命令。如圖2.2所示。鍵盤設(shè)置模塊對系統(tǒng)輸入模式的選擇和具體的通行時間設(shè)定信號,系統(tǒng)進(jìn)入正常工作狀態(tài),執(zhí)行信號顯示控制,實時顯示輸入時間數(shù)據(jù)的LED數(shù)字管。為了達(dá)到實時控制緊急事態(tài)的目的,需要實時捕捉違規(guī)檢測和緊急按鈕信號。緊急停止按鈕和違反檢測隨時中斷或調(diào)用。單片機(jī)單片機(jī)紅黃綠信號燈8段LED數(shù)碼管報警提示電路最小系統(tǒng)外圍接口按鍵控制驅(qū)動顯示圖2.2系統(tǒng)的總體框圖據(jù)此,本設(shè)計系統(tǒng)以單片機(jī)為控制核心,連接成最小系統(tǒng),和按鍵設(shè)置模塊等產(chǎn)生輸入,信號燈狀態(tài)模塊,LED倒計時模塊接受輸出。系統(tǒng)的總體框圖如圖2.2所示。3系統(tǒng)硬件電路的設(shè)計3.1系統(tǒng)硬件總電路構(gòu)成為達(dá)到本次設(shè)計所要求的具體功能,可選用STC89C51單片機(jī)及外圍設(shè)備組成最小控制系統(tǒng),12個發(fā)光二極管由紅、綠、黃4個燈構(gòu)成信號指示模塊。8個LED由東、西、南、北組成逆計算顯示模塊。多個鍵盤配置時間設(shè)定、模式選擇按鈕和緊急按鈕。該系統(tǒng)以宏處理器為中心,構(gòu)成閉環(huán)控制系統(tǒng)的圖像處理和自動控制系統(tǒng)。系統(tǒng)硬件電路由宏處理器、狀態(tài)燈、LED顯示器、驅(qū)動電路、按鈕等構(gòu)成。具體硬件電路圖如圖3.1所示。P0、P1用于顯示LED數(shù)字管的類型和比特,P2用于控制發(fā)光二極管的紅、綠、黃照明變化。XTAL1和XTAL2連接到晶片時鐘電路,RESTpin連接到復(fù)位電路,P3用于按鍵控制。3.2單片機(jī)系統(tǒng)單片機(jī)是由集成電路芯片的各種組件集成而成的微型計算機(jī),包括中央處理器的CPU、RAM的數(shù)據(jù)存儲器、程序存儲器的ROM、定時器/計數(shù)器、中斷系統(tǒng)、時鐘組件和I/O接口電路的集成。單片機(jī)以其體積小、價格低、可靠性高、開發(fā)應(yīng)用方便等優(yōu)點,在現(xiàn)代電子技術(shù)和工業(yè)中得到了廣泛的應(yīng)用。在智能儀器方面,單片機(jī)是其最活躍的領(lǐng)域之一。在控制方面,人們越來越關(guān)注計算機(jī)控制的低成本、小體積、可靠性和控制的靈活性。在各種儀器中,單片機(jī)的引入使各種儀器智能化,提高了測試的自動化程度和測試精度,提高了計算機(jī)的運(yùn)算速度,簡化了儀器的硬件結(jié)構(gòu),提高了效率。并行I/O口也是單片機(jī)的主要內(nèi)容之一。STC89C51有四個8位并行I/O端口,分別記錄為P0、P1、P2和P3。每個端口包含一個鎖存器、一個輸出驅(qū)動器和一個輸入緩沖區(qū)。事實上,它們被歸類為特殊寄存器,具有字節(jié)尋址和存儲功能。在訪問片外擴(kuò)展存儲器時,低8位地址和數(shù)據(jù)通過P0端口及時傳輸,高8位地址通過P2端口傳輸。四個端口中的每一位都可以用作系統(tǒng)中的雙向端口,而無需使用ex內(nèi)存。單片機(jī)的四個I/O口均為8位雙向口,結(jié)構(gòu)基本相同但各有特點。單片機(jī)時鐘信號的產(chǎn)生有兩種方式:一種是內(nèi)部時鐘方式,另一種是外部時鐘方式,單片機(jī)內(nèi)部存在電路振蕩。當(dāng)石英晶體與單片機(jī)的xtal1和xtal2AOS相連時,在單片機(jī)內(nèi)部形成一個自激振蕩器,產(chǎn)生一個手表脈沖信號,圖中C1和C2電容器的作用是穩(wěn)定頻率,快速啟動振動。電容值為5-30pf,典型值為30pf,頻率范圍為1.2-12mhz,典型值為12mhz和11.0592Mhz。當(dāng)?shù)谝粋€stc89c51mcu引腳引入高電平并保持兩個機(jī)器周期時,執(zhí)行內(nèi)部復(fù)位操作(如果引腳保持高電平,MCU將處于周期復(fù)位狀態(tài))。復(fù)位電路通常采取上電自動復(fù)位和復(fù)位按鈕兩種方式,在最簡單的自動復(fù)位能量中,自動復(fù)位電源是由外部的復(fù)位電路電容負(fù)載來完成的,只要VCC增加時間小于1ms,電源可自動復(fù)位,當(dāng)時鐘頻率為6mhz時,C為22uF,R為1K937;有時需要手動按下復(fù)位按鈕,本項目需要手動使用復(fù)位按鈕,手動復(fù)位方式有電平模式和脈沖模式兩種,RST端子通過電阻與電源相連,進(jìn)行電平復(fù)位。系統(tǒng)如圖3.1所示。圖3.1單片機(jī)系統(tǒng)原理圖3.3顯示系統(tǒng)3.3.1LED顯示LED英文單詞的縮寫,主要含義:LED=LightEmittingDiode,發(fā)光二極管,是一種固態(tài)半導(dǎo)體器件,能將電能轉(zhuǎn)化為可見光,它能直接將電轉(zhuǎn)化為光。它改變了白熾燈鎢絲燈和節(jié)能燈三原色粉末燈的原理,并采用電場照明。據(jù)分析,LED具有壽命長,光效高,輻射低,功耗低等明顯特征。LED以其高亮度、低熱、長壽命、無毒等優(yōu)點成為21世紀(jì)最有前途的綠色光源,經(jīng)過近四十年的發(fā)展,LED產(chǎn)品已廣泛應(yīng)用于景觀照明和普通照明,中國是世界上最大的照明設(shè)備生產(chǎn)國和第二大出口國。隨著半導(dǎo)體發(fā)光材料的發(fā)展、制造技術(shù)的進(jìn)步以及新材料(氮化物和磷晶體)的開發(fā)和應(yīng)用,各種顏色的超高亮度得到了大力發(fā)展,最重要的是LED產(chǎn)生的超高白光,使LED超越了有效光源市場,LED燈的高亮度是發(fā)明之一,愛迪生發(fā)明燈泡后,信號燈用發(fā)光二極管顯示不同顏色的信號。圖3.2LED燈3.3.2數(shù)碼管顯示數(shù)碼管是一個半導(dǎo)體發(fā)光器件,它的基本單元是發(fā)光二極管。數(shù)碼管按段數(shù)分為七個數(shù)碼管和八個數(shù)碼管,八個數(shù)碼管有一個LED單元多于七個數(shù)碼管(十進(jìn)制顯示),根據(jù)“8”的不同顯示,可分為1、2、4等,根據(jù)LED單元的連接方式,分為共陽極數(shù)碼管和共陽極陰極射線管。共陽極數(shù)碼管是一種數(shù)碼管(COM),連接所有的管陽極形成一個共陽極。使用共陽極數(shù)碼管時,公共陽極必須連接到5V。當(dāng)給定磁場中的LED陰極為低電平時,相應(yīng)的磁場將點亮。當(dāng)給定磁場中的陰極為高電平時,普通數(shù)字陰極射線管是一種數(shù)碼管(COM),它把一根線連接到導(dǎo)管陰極上,形成一個普通陰極。當(dāng)使用普通數(shù)字陰極射線管時,必須把普通電極連接到地線上。當(dāng)給定電場中的LED陽極高時,相應(yīng)的連接會點亮,當(dāng)一個電場的陽極電壓低時,相應(yīng)的電場不會點亮,由于其價格低廉、使用簡單,在家用電器領(lǐng)域,特別是家用電器領(lǐng)域得到了廣泛的應(yīng)用。圖3.3數(shù)碼管顯示3.4信號顯示驅(qū)動電路74HC245譯碼器能接受3位二進(jìn)制加權(quán)地址輸入(A0,A1和A2),并在啟用時提供8個互斥低效輸出(Y0到Y(jié)7)。74HC245有三個獨特的使能輸入:兩個低有效(E1和E2)和一個高有效(E3)。74HC138將保持所有有效,直到E1和E2設(shè)置為低,E3設(shè)置為高。通過此復(fù)合激活功能,只需要四個74h245芯片和一個逆變芯片就可以方便地進(jìn)行并行擴(kuò)展,并結(jié)合一個1-32(5線對32)譯碼器,如果選擇一個低使能輸入作為輸入數(shù)據(jù),另一個使能輸入作為選通的目的,74h245也可以作為輸出8,未使用能力的投入應(yīng)處于適當(dāng)?shù)挠行Щ驘o效狀態(tài)。該原理適用于高性能存儲器或傳輸時延較短的數(shù)據(jù)傳輸系統(tǒng)的譯碼,在高性能存儲器系統(tǒng)中,譯碼器可以提高譯碼系統(tǒng)的效率,在高速存儲器中使用快速激活電路時,解碼器延遲時間和存儲器激活時間通常小于典型的存儲器訪問時間,這意味著由肖特基箝位系統(tǒng)譯碼器引起的有效系統(tǒng)延遲可以忽略。Hc138將八個輸出轉(zhuǎn)換為基于三個二進(jìn)制輸入碼的低電平輸出,并啟用輸入條件。兩個有效的低電平允許輸入,一個有效的高電平允許輸入減少擴(kuò)展所需的外門或門的數(shù)量。電纜解碼器24不需要外部服務(wù)。電纜解碼器32只需要外部逆變器。在解調(diào)器應(yīng)用中,啟用的輸入可以用作輸入數(shù)據(jù)。圖3.474HC245電路圖設(shè)計中將1腳接VCC,19腳接地,整個芯片是輸入端輸入高則輸出端輸出高,輸入端輸入低則輸出端輸出地,只是相當(dāng)于驅(qū)動作用。3.5鍵盤輸入電路單片機(jī)鍵盤有兩種:獨立鍵盤和矩陣鍵盤。獨立鍵盤的每個I/O口只接一個鍵,按鍵的另一端接電源或接地(一般接地)。這種連接程序比較簡單,系統(tǒng)比較穩(wěn)定。雖然矩陣鍵盤連接程序比較復(fù)雜,但它需要較少的I/O。根據(jù)本設(shè)計的需要,本文選擇了獨立的鍵盤連接方式。獨立鍵盤的方法是利用I/O口的電平來判斷按鍵是否被按下。常開鍵的一端接地,另一端連接到I/O端口。在程序開始時,I/O端口設(shè)置在高電平。通常,當(dāng)沒有按鍵時,I/O端口保護(hù)高電平。按鍵時,I/O端口和接地之間的短路會迫使I/O端口處于低電平。釋放按鍵后,MCU內(nèi)部的上拉電阻將I/O端口保持在高電平。我們需要做的是在程序中查找I/O端口的級別狀態(tài),然后才能知道是否有鍵操作。用單片機(jī)處理鍵盤時它涉及到一個重要的過程,即消除鍵盤抖動。這里的抖動是機(jī)械抖動。鍵盤未按到臨界區(qū)域是電平不穩(wěn)定的正?,F(xiàn)象。這不是我們在按鍵時注意就能避免的。這種抖動一般在10到200毫秒之間。這種不穩(wěn)定電平的抖動時間對人來說太快了,但對于時鐘為微秒的MCU來說卻很慢。硬件去抖動是利用部分電路對抖動部分進(jìn)行處理。軟件去抖動不是為了消除抖動,而是為了避免部分時間抖動,然后在鍵盤穩(wěn)定后再進(jìn)行處理。因此,選擇軟件來消除抖動。實現(xiàn)方法是先搜索關(guān)鍵字。當(dāng)有低電平時,立即延遲10-200ms以避免抖動(典型值為20ms)。延遲后,再次讀取I/O端口的值。如果本次值為1,則表示低電平時間小于10-200ms,視為干擾信號。讀取值為0時,表示按鍵并調(diào)用相應(yīng)的處理程序。硬件電路如圖3.5所示:圖3.5鍵盤控制電路圖4系統(tǒng)軟件程序的設(shè)計4.1程序主體設(shè)計流程整個控制程序?qū)嶋H上分為幾個模塊:鍵盤設(shè)置處理程序,狀態(tài)燈控制程序,LED顯示程序,子狀態(tài)判斷和處理程序,緊急停車或違法判斷程序,中斷服務(wù)子程序,交通車流量的計數(shù)程序,紅綠燈時長調(diào)改程序等。整個軟件程序主要分為兩部分:按鍵處理程序和50ms掃描程序。流程圖如圖4.1所示。初始化外部中斷設(shè)置字型碼和字位碼,完成顯示定義狀態(tài)數(shù)組宏定義初始化外部中斷設(shè)置字型碼和字位碼,完成顯示定義狀態(tài)數(shù)組宏定義返回while(1)函數(shù)進(jìn)入while(1)循環(huán)I/O初始化返回while(1)函數(shù)進(jìn)入while(1)循環(huán)I/O初始化定義字位碼函數(shù)定義字位碼函數(shù)定義共陰極字型編碼表定義共陰極字型編碼表調(diào)用顯示控制函數(shù)voiddisplay調(diào)用顯示控制函數(shù)voiddisplay()進(jìn)入主函數(shù)main()定義函數(shù)變量并初始化定義函數(shù)變量并初始化定時器0初始化定時器0初始化調(diào)用Buzzer()函數(shù)圖4.1系統(tǒng)總的流程圖4.2子程序模塊設(shè)計按鍵模塊的控制是調(diào)用中斷來實現(xiàn)控制的,獨立式鍵盤的實現(xiàn)方法是利用單片機(jī)I/O口讀取口的電平高低來判斷是否有鍵按下。將常開按鍵的一端接地,另一端接一個I/O口,程序開始時將此I/O口置于高電平,平時無鍵按下時I/O口保護(hù)高電平。當(dāng)有鍵按下時,此I/O口與地短路迫使I/O口為低電平。按鍵釋放后,單片機(jī)內(nèi)部的上拉電阻使I/O口仍然保持高電平。我們所要做的就是在程序中查尋此I/O口的電平狀態(tài)就可以了解我們是否有按鍵動作了。INT1INT0INT1INT0南北通行南北通行東西通行東西通行東西綠燈亮南北紅燈亮東西綠燈亮南北紅燈亮東西綠燈亮南北紅燈亮保持中斷保持中斷保持中斷保持中斷中斷返回中斷返回中斷返回中斷返回圖4.2中斷子程序定時中斷是本設(shè)計的關(guān)鍵。一旦定時器啟動,它開始在之前的值上加1。如果我不把Th0和tl0放在程序的開頭,它們的默認(rèn)值是0。假設(shè)時鐘頻率是12Mhz,時鐘周期12是機(jī)器周期,所以機(jī)器的周期是1US。如果你記住Th0和tl0,你需要數(shù)字216-1,另一個溢出脈沖計數(shù)器,然后它適用于中斷的CPU。因此,我們總共需要65536溢出,約65.6ms。如果50ms必須組織,必須先設(shè)置Th0和tl0的初始值,根據(jù)這個初始值,記錄50000位數(shù)字后,每50米就有一次定時器溢出。當(dāng)我們需要編程1s時,溢出計時器就會發(fā)生。當(dāng)我們編寫程序時,當(dāng)我們產(chǎn)生20次50ms中斷時,它被認(rèn)為是1s,中斷系統(tǒng)包括輸出數(shù)據(jù)更新程序和各種狀態(tài)處理程序。中斷程序的流程圖如圖4.3所示。定義1s定時中斷入口定義1s定時中斷入口設(shè)置字型碼和字位碼,完成數(shù)碼管倒計時顯示啟動定時器中斷設(shè)置字型碼和字位碼,完成數(shù)碼管倒計時顯示啟動定時器中斷關(guān)閉定時器0初始化定時器0關(guān)閉定時器0初始化定時器0計數(shù)變量自加1計數(shù)變量自加1圖4.3定時中斷流程圖5結(jié)束語經(jīng)過本次的畢業(yè)設(shè)計,我收獲了很多??偟膩碚f,主要有以下幾個方面:(1)通過本次的畢業(yè)設(shè)計,我能將原來所學(xué)的專業(yè)知識與實踐很好的結(jié)合

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論