畢業(yè)論文-基于stc89c52單片機(jī)的交通信號(hào)燈控制電路的設(shè)計(jì)與實(shí)現(xiàn)



《畢業(yè)論文-基于stc89c52單片機(jī)的交通信號(hào)燈控制電路的設(shè)計(jì)與實(shí)現(xiàn)》由會(huì)員分享,可在線閱讀,更多相關(guān)《畢業(yè)論文-基于stc89c52單片機(jī)的交通信號(hào)燈控制電路的設(shè)計(jì)與實(shí)現(xiàn)(57頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、畢業(yè)論文基于STC89C52單片機(jī)的交通信號(hào)燈控制電路的設(shè)計(jì)與實(shí)現(xiàn)學(xué)院軟件學(xué)院專業(yè)班級(jí)XX學(xué)號(hào)2XXXX學(xué)生姓名XXX指導(dǎo)教師XXX太原理工大學(xué)基于單片機(jī)的交通信號(hào)燈控制電路的設(shè)計(jì)與實(shí)現(xiàn)摘要隨著各種交通工具的發(fā)展和交通指揮的需要,第一盞名副其實(shí)的三色燈紅、黃、綠三種標(biāo)志于1918年誕生。它是三色圓形四面投影器,被安裝在紐約市五號(hào)街的一座高塔上,由于它的誕生,使城市交通大為改善。當(dāng)前,大量的信號(hào)燈電路正向著數(shù)字化、小功率、多樣化、方便人車路三者關(guān)系的協(xié)調(diào)以及多值化方向發(fā)展。隨著社會(huì)和經(jīng)濟(jì)的發(fā)展,城市交通問(wèn)題越來(lái)越引起人們的關(guān)注。隨著城市規(guī)模的不斷擴(kuò)大,城市交通成為制約城市發(fā)展的一大因素。因此,有
2、許多設(shè)計(jì)工作者為改善城市交通環(huán)境設(shè)計(jì)了許多方案,而大多數(shù)都是交通指揮燈。交通信號(hào)燈作為一個(gè)用來(lái)指揮車輛順利、暢通通過(guò)十字路口的裝置,與我們的生活緊密的聯(lián)系在一起。設(shè)計(jì)交通燈控制電路的方法有很多種,由于數(shù)字電子技術(shù)的邏輯性很強(qiáng),用它來(lái)設(shè)計(jì)交通燈的控制電路非常方便。而且數(shù)字電子技術(shù)芯片只要在一定的范圍內(nèi)輸入,都能得到穩(wěn)定的輸出,調(diào)試簡(jiǎn)單,電路的工作也比較穩(wěn)定。本論文的設(shè)計(jì)就是通過(guò)一些基本的數(shù)字芯片組合來(lái)實(shí)現(xiàn)對(duì)十字路口交通燈的六個(gè)不同信號(hào)燈的控制,另外還加以倒計(jì)時(shí)數(shù)碼管顯示,以設(shè)計(jì)實(shí)現(xiàn)了一個(gè)十字路口信號(hào)燈的仿真模型及其控制電路。這個(gè)電路的設(shè)計(jì)看似較為復(fù)雜,其實(shí)就是由一些基本的數(shù)字電路組成。論文采用中
3、、小規(guī)模集成電路,設(shè)計(jì)了交通信號(hào)燈控制電路,畫出了各單元電路圖、整機(jī)框圖和邏輯電路圖,完成了組裝和調(diào)試,實(shí)現(xiàn)了交通信號(hào)燈控制的各項(xiàng)功能,最后對(duì)論文的工作進(jìn)行了總結(jié)。關(guān)鍵詞STC89C52;獨(dú)立鍵盤;數(shù)碼管;蜂鳴器。MICROCONTROLLERBASEDTRAFFICSIGNALCONTROLCIRCUITDESIGNANDIMPLEMENTATIONABSTRACTWITHTHEDEVELOPMENTNEEDSOFTHEVARIOUSMODESOFTRANSPORTANDTRAFFICCONTROL,THEFIRSTTRULYTHREECOLORLIGHTSRED,YELLOW,ANDGRE
4、ENFLAGWASBORNIN1918ITISSURROUNDEDBYTHREECOLORCIRCULARPROJECTORISMOUNTEDONATOWERFIFTHSTREETINNEWYORKCITY,SINCEITSBIRTH,THEURBANTRAFFICGREATLYIMPROVEDCURRENTLY,ALARGENUMBEROFSIGNALCIRCUITSISTOWARDDIGITAL,LOWPOWER,DIVERSITY,FACILITATEPEOPLE,VEHICLES,COORDINATINGTHETHREEWAYRELATIONSHIP,ANDMOREVALUEORIEN
5、TEDDEVELOPMENTALONGWITHSOCIALANDECONOMICDEVELOPMENT,URBANTRANSPORTPROBLEMSMORECAUSEFORCONCERNWITHTHEDEVELOPMENTOFSOCIETY,EXPANDINGTHESIZEOFCITIES,URBANTRANSPORTASACONSTRAINTTOURBANDEVELOPMENTISAMAJORFACTOR,SOTHEREAREMANYWORKERSINORDERTOIMPROVETHEURBANTRAFFICDESIGNENVIRONMENTDESIGNEDMANYPROGRAMS,BUTM
6、OSTARETRAFFICLIGHTSTRAFFICLIGHTSUSEDASACOMMANDVEHICLESMOOTH,SMOOTHCROSSROADSDEVICESWITHOURLIVESCLOSELYLINKEDTHROUGHTHEREAREMANYWAYSTODESIGNTHETRAFFICLIGHTCONTROLCIRCUIT,BECAUSETHELOGICOFDIGITALELECTRONICTECHNOLOGYISSTRONG,USEITTODESIGNATRAFFICLIGHTCONTROLCIRCUITISVERYCONVENIENTANDASLONGASTHEDIGITALE
7、LECTRONICSCHIPSWITHINACERTAINRANGEOFTHEINPUT,THEOUTPUTCANGETASTABLE,EASYADJUSTMENT,OPERATIONOFTHECIRCUITISRELATIVELYSTABLEIHAVETHISDESIGNISTHROUGHSOMEBASICDIGITALCHIPTOACHIEVEACOMBINATIONOFSIXDIFFERENTLIGHTSONTHECROSSROADSOFTRAFFICLIGHTSCONTROL,INADDITIONTOACOUNTDOWNDIGITALDISPLAYCROSSROADSLIGHTSTOD
8、OTHESIMULATIONMODEL,THEDESIGNOFTHISCIRCUITMAYSEEMMORECOMPLICATED,INFACT,SOMEOFTHEBASICDIGITALCIRCUITUSINGMEDIUMANDSMALLSCALEINTEGRATEDCIRCUITDESIGNTRAFFICSIGNALCIRCUITS,ANDASSEMBLYANDCOMMISSIONING,ANDTHENTHEVARIOUSFUNCTIONSOFTHEDESIGN,EACHUNITTODRAWCIRCUITDIAGRAMS,BLOCKDIAGRAMSANDMACHINELOGICCIRCUIT
9、,ABREAKTHROUGHSTEPBYSTEP,ANDFINALLYFINISHINGSUMMARYKEYWORDSSTC89C52,SEPARATEKEYBOARD,LED,BUZZER目錄摘要IABSTRACTII1引言111目的和意義112研究概況和發(fā)展趨勢(shì)213本系統(tǒng)主要研究?jī)?nèi)容32總體方案論證與設(shè)計(jì)121主控模塊的選型和論證122顯示模塊的選型和論證123按鍵模塊的選型和論證124系統(tǒng)整體設(shè)計(jì)概述23系統(tǒng)硬件電路設(shè)計(jì)331主控模塊3311STC89C52單片機(jī)主要特性3312STC89C52單片機(jī)的中斷系統(tǒng)6313單片機(jī)最小系統(tǒng)設(shè)計(jì)632數(shù)碼管顯示電路633鍵盤模塊設(shè)計(jì)734蜂鳴器
10、模塊設(shè)計(jì)835路燈指示電路84系統(tǒng)軟件設(shè)計(jì)1141系統(tǒng)軟件總體設(shè)計(jì)1142程序設(shè)計(jì)原理115系統(tǒng)調(diào)試1351硬件調(diào)試1352軟件調(diào)試1353調(diào)試結(jié)果14結(jié)論15參考文獻(xiàn)16致謝17附錄181引言11目的和意義隨著人口快速的增多,交通工具的爆炸性的發(fā)展,以及道路資源的有限性,交通控制就應(yīng)運(yùn)而生,在人類的生活、工作環(huán)境中,交通扮演著極其重要的角色,人們的出行都無(wú)時(shí)不刻與交通打著交道。自18世紀(jì)工業(yè)革命以來(lái),工業(yè)發(fā)展帶動(dòng)整個(gè)交通運(yùn)輸?shù)陌l(fā)展,從而催生了單獨(dú)的交通控制學(xué)問(wèn)與管理機(jī)構(gòu)。交通控制系統(tǒng)是近現(xiàn)代社會(huì)隨著物流、出行等交通發(fā)展產(chǎn)生的一套獨(dú)特的公共管理系統(tǒng)。要保證高效安全的交通秩序,除了制定一系列的交
11、通規(guī)則,還必須通過(guò)一定的技術(shù)手段加以實(shí)現(xiàn)?,F(xiàn)代人類科學(xué)技術(shù),特別是電子科學(xué)技術(shù)的發(fā)展和成熟能比較好的解決系統(tǒng)建立中硬軟件方面要求的技術(shù)難題。目前,交通控制方面的研究能完全實(shí)現(xiàn)自動(dòng)智能化,甚至將整個(gè)區(qū)域整合成一個(gè)統(tǒng)一的系統(tǒng)范圍,還能根據(jù)正常時(shí)段以及特定突發(fā)時(shí)段的情況進(jìn)行科學(xué)的自動(dòng)調(diào)整。交通對(duì)于社會(huì)的工業(yè)經(jīng)濟(jì)和人們的生活生產(chǎn)中有著十分重要的意義。隨著單片機(jī)和傳感技術(shù)的迅速發(fā)展,自動(dòng)檢測(cè)領(lǐng)域發(fā)生了巨大變化,交通自動(dòng)監(jiān)測(cè)控制方面的研究有了明顯的進(jìn)展,并且必將以其優(yōu)異的性能價(jià)格比,逐步取代傳統(tǒng)的交通控制措施。城市道路交通自動(dòng)控制系統(tǒng)的發(fā)展是以城市交通信號(hào)控制技術(shù)為前導(dǎo),與汽車工業(yè)并行發(fā)展的。在其各個(gè)發(fā)展
12、階段,由于交通的各種矛盾不斷出現(xiàn),人們總是盡可能地把各個(gè)歷史階段當(dāng)時(shí)的最新科技成果應(yīng)用到交通自動(dòng)控制中來(lái),從而促進(jìn)了交通自動(dòng)控制技術(shù)的不斷發(fā)展。早在1850年,城市交叉口處不斷增長(zhǎng)的交通就引發(fā)了人們對(duì)安全和擁堵的關(guān)注。世界上第一臺(tái)交通自動(dòng)信號(hào)燈的誕生,拉開(kāi)了城市交通控制的序幕,1868年,英國(guó)工程師納伊特在倫敦威斯特敏斯特街口安裝了一臺(tái)紅綠兩色的煤氣照明燈,用來(lái)控制交叉路口馬車的通行,但一次煤氣爆炸事故致使這種交通信號(hào)燈幾乎銷聲匿跡了近半個(gè)世紀(jì)。1914年及稍晚一些時(shí)候,美國(guó)的克利夫蘭、紐約和芝加哥才重新出現(xiàn)了交通信號(hào)燈,它們采用電力驅(qū)動(dòng),與現(xiàn)在意義上的信號(hào)燈已經(jīng)相差無(wú)幾。1926年英國(guó)人第一
13、次安裝和使用自動(dòng)化的控制器來(lái)控制交通信號(hào)燈,這是城市交通自動(dòng)控制的起點(diǎn)。早期的交通信號(hào)燈使用“固定配時(shí)”方式實(shí)行自動(dòng)控制,這種方式對(duì)于早期交通流量不大的情況曾起過(guò)一定的作用。但隨著汽車工業(yè)的發(fā)展、交通流量增加、隨機(jī)變化增強(qiáng),采用以往那種單一模式的“固定配時(shí)”方式已不能滿足客觀需要,于是一種多時(shí)段多方案的信號(hào)控制器開(kāi)始出現(xiàn)并逐步取代了傳統(tǒng)的只有一種控制方案的控制器。20世紀(jì)30年代初,美國(guó)最早開(kāi)始用車輛感應(yīng)式信號(hào)控制器,之后是英國(guó),當(dāng)時(shí)使用的車輛檢測(cè)器是氣動(dòng)橡皮管檢測(cè)器。車輛感應(yīng)控制器的特點(diǎn)是它能根據(jù)檢測(cè)器測(cè)量的交通流量來(lái)調(diào)整綠燈時(shí)間的長(zhǎng)短,使綠燈時(shí)間更有效地被利用,減少車輛在交叉口的時(shí)間延誤,
14、比定時(shí)控制方式有更大的靈活性。車輛感應(yīng)控制的這一特點(diǎn)刺激了車輛檢測(cè)器技術(shù)的發(fā)展。繼氣動(dòng)橡皮管式檢測(cè)器之后,雷達(dá)、超聲波、光電、地磁、電磁、微波、紅外以及環(huán)形線圈等檢測(cè)器相繼問(wèn)世。當(dāng)今在城市道路交通自動(dòng)控制、交通監(jiān)測(cè)和交通數(shù)據(jù)采集系統(tǒng)中,應(yīng)用最廣的是環(huán)形線圈車輛檢測(cè)器。超聲波檢測(cè)器主要在日本等少數(shù)國(guó)家得到廣泛應(yīng)用。計(jì)算機(jī)技術(shù)的出現(xiàn)為交通控制技術(shù)的發(fā)展注入了新的活力,更是實(shí)現(xiàn)了以一個(gè)城市或者更大地域,而非簡(jiǎn)單的一個(gè)路口的交通總體控制系統(tǒng)。1952年,美國(guó)科羅拉多州丹佛市首次利用模擬計(jì)算機(jī)和交通檢測(cè)器實(shí)現(xiàn)了對(duì)交通信號(hào)機(jī)網(wǎng)的配時(shí)方案自動(dòng)選擇式信號(hào)燈控制,而加拿大多倫多市于1964年完成了計(jì)算機(jī)控制信號(hào)
15、燈的實(shí)用化,建立了一套由IBM650型計(jì)算機(jī)控制的交通信號(hào)協(xié)調(diào)控制系統(tǒng),成為世界上第一個(gè)具有電子數(shù)字計(jì)算機(jī)城市交通控制系統(tǒng)的城市。這是道路交通控制技術(shù)發(fā)展的里程碑??梢哉f(shuō),在近百年的發(fā)展中,道路交通信號(hào)控制系統(tǒng)經(jīng)歷了手動(dòng)到自動(dòng),從固定配時(shí)到靈活配時(shí),從無(wú)感應(yīng)控制到有感應(yīng)控制,從單點(diǎn)控制到干線控制,從區(qū)域控制到網(wǎng)絡(luò)控制的長(zhǎng)遠(yuǎn)過(guò)程。交通控制研究的發(fā)展,旨在解決人類交通因需求的增多而日益繁重帶來(lái)的問(wèn)題,局限于道路建設(shè)的暫時(shí)不足和交通工具的快速增長(zhǎng),就要使更多的車輛安全高效的利用有限的道路資源,避免因無(wú)序和搶行等無(wú)控制原因造成的不必要阻塞甚至癱瘓,另外,針對(duì)整個(gè)交通線路車輛的多少實(shí)時(shí)調(diào)整和轉(zhuǎn)移多條線路
16、的分流也十分必要。交通網(wǎng)絡(luò)是城市的動(dòng)脈,象征著一個(gè)城市的工業(yè)文明水平。交通關(guān)系著人們對(duì)于財(cái)產(chǎn),安全和時(shí)間相關(guān)的利益。具有優(yōu)良科學(xué)的交通控制技術(shù)對(duì)資源物流和人們出行都是十分有價(jià)值的,保證交通線路的暢通安全,才能保證出行舒暢,物流準(zhǔn)時(shí)到位,甚至是生命通道的延伸。12研究概況和發(fā)展趨勢(shì)早在1850年,城市交叉口處不斷增長(zhǎng)的交通就引發(fā)了人們對(duì)安全和擁堵的關(guān)注。世界上第一臺(tái)交通自動(dòng)信號(hào)燈的誕生,拉開(kāi)了城市交通控制的序幕,1868年,英國(guó)工程師納伊特在倫敦威斯特敏斯特街口安裝了一臺(tái)紅綠兩色的煤氣照明燈,用來(lái)控制交叉路口馬車的通行,但一次煤氣爆炸事故致使這種交通信號(hào)燈幾乎銷聲匿跡了近半個(gè)世紀(jì)。1914年及稍
17、晚一些時(shí)候,美國(guó)的克利夫蘭、紐約和芝加哥才重新出現(xiàn)了交通信號(hào)燈,它們采用電力驅(qū)動(dòng),與現(xiàn)在意義上的信號(hào)燈已經(jīng)相差無(wú)幾。1926年英國(guó)人第一次安裝和使用自動(dòng)化的控制器來(lái)控制交通信號(hào)燈,這是城市交通自動(dòng)控制的起點(diǎn)。早期的交通信號(hào)燈使用“固定配時(shí)”方式實(shí)行自動(dòng)控制,這種方式對(duì)于早期交通流量不大的情況曾起過(guò)一定的作用。但隨著汽車工業(yè)的發(fā)展、交通流量增加、隨機(jī)變化增強(qiáng),采用以往那種單一模式的“固定配時(shí)”方式已不能滿足客觀需要,于是一種多時(shí)段多方案的信號(hào)控制器開(kāi)始出現(xiàn)并逐步取代了傳統(tǒng)的只有一種控制方案的控制器。20世紀(jì)30年代初,美國(guó)最早開(kāi)始用車輛感應(yīng)式信號(hào)控制器,之后是英國(guó),當(dāng)時(shí)使用的車輛檢測(cè)器是氣動(dòng)橡皮
18、管檢測(cè)器。車輛感應(yīng)控制器的特點(diǎn)是它能根據(jù)檢測(cè)器測(cè)量的交通流量來(lái)調(diào)整綠燈時(shí)間的長(zhǎng)短,使綠燈時(shí)間更有效地被利用,減少車輛在交叉口的時(shí)間延誤,比定時(shí)控制方式有更大的靈活性。車輛感應(yīng)控制的這一特點(diǎn)刺激了車輛檢測(cè)器技術(shù)的發(fā)展。繼氣動(dòng)橡皮管式檢測(cè)器之后,雷達(dá)、超聲波、光電、地磁、電磁、微波、紅外以及環(huán)形線圈等檢測(cè)器相繼問(wèn)世。當(dāng)今在城市道路交通自動(dòng)控制、交通監(jiān)測(cè)和交通數(shù)據(jù)采集系統(tǒng)中,應(yīng)用最廣的是環(huán)形線圈車輛檢測(cè)器。超聲波檢測(cè)器主要在日本等少數(shù)國(guó)家得到廣泛應(yīng)用。計(jì)算機(jī)技術(shù)的出現(xiàn)為交通控制技術(shù)的發(fā)展注入了新的活力,更是實(shí)現(xiàn)了以一個(gè)城市或者更大地域,而非簡(jiǎn)單的一個(gè)路口的交通總體控制系統(tǒng)。1952年,美國(guó)科羅拉多州
19、丹佛市首次利用模擬計(jì)算機(jī)和交通檢測(cè)器實(shí)現(xiàn)了對(duì)交通信號(hào)機(jī)網(wǎng)的配時(shí)方案自動(dòng)選擇式信號(hào)燈控制,而加拿大多倫多市于1964年完成了計(jì)算機(jī)控制信號(hào)燈的實(shí)用化,建立了一套由IBM650型計(jì)算機(jī)控制的交通信號(hào)協(xié)調(diào)控制系統(tǒng),成為世界上第一個(gè)具有電子數(shù)字計(jì)算機(jī)城市交通控制系統(tǒng)的城市。這是道路交通控制技術(shù)發(fā)展的里程碑??梢哉f(shuō),在近百年的發(fā)展中,道路交通信號(hào)控制系統(tǒng)經(jīng)歷了手動(dòng)到自動(dòng),從固定配時(shí)到靈活配時(shí),從無(wú)感應(yīng)控制到有感應(yīng)控制,從單點(diǎn)控制到干線控制,從區(qū)域控制到網(wǎng)絡(luò)控制的長(zhǎng)遠(yuǎn)過(guò)程。交通控制研究的發(fā)展,旨在解決人類交通因需求的增多而日益繁重帶來(lái)的問(wèn)題,局限于道路建設(shè)的暫時(shí)不足和交通工具的快速增長(zhǎng),就要使更多的車輛安
20、全高效的利用有限的道路資源,避免因無(wú)序和搶行等無(wú)控制原因造成的不必要阻塞甚至癱瘓,另外,針對(duì)整個(gè)交通線路車輛的多少實(shí)時(shí)調(diào)整和轉(zhuǎn)移多條線路的分流也十分必要。交通網(wǎng)絡(luò)是城市的動(dòng)脈,象征著一個(gè)城市的工業(yè)文明水平。交通關(guān)系著人們對(duì)于財(cái)產(chǎn),安全和時(shí)間相關(guān)的利益。具有優(yōu)良科學(xué)的交通控制技術(shù)對(duì)資源物流和人們出行都是十分有價(jià)值的,保證交通線路的暢通安全,才能保證出行舒暢,物流準(zhǔn)時(shí)到位,甚至是生命通道的延伸。13本系統(tǒng)主要研究?jī)?nèi)容本系統(tǒng)設(shè)計(jì)制作一個(gè)基于單片機(jī)的交通燈。能實(shí)現(xiàn)以下幾種功能(1)鍵盤掃描,通過(guò)單片機(jī)檢測(cè)用戶按下的是哪個(gè)按鍵并執(zhí)行相應(yīng)的功能。(2)單片機(jī)可以控制十字路口的紅綠燈并顯示倒計(jì)時(shí)時(shí)間。(3)
21、單片機(jī)可以分別設(shè)置紅黃綠燈的時(shí)間。(4)系統(tǒng)設(shè)有緊急按鍵,按下后十字路口的所有燈皆熄滅,并且驅(qū)動(dòng)蜂鳴器發(fā)響。2總體方案論證與設(shè)計(jì)根據(jù)所要實(shí)現(xiàn)的功能劃分,系統(tǒng)一共需要以下幾個(gè)模塊主控模塊、顯示模塊、按鍵模塊,以下就針對(duì)這幾個(gè)模塊的選型和論證進(jìn)行討論。21主控模塊的選型和論證方案一采用MSP430系列單片機(jī),該單片機(jī)是TI公司1996年開(kāi)始推向市場(chǎng)的一種16位超低功耗的混合信號(hào)處理器。其內(nèi)部集成了很多模擬電路、數(shù)字電路和微處理器,提供強(qiáng)大的功能。不過(guò)該芯片昂貴不適合一般的設(shè)計(jì)開(kāi)發(fā)。方案二采用51系列的單片機(jī),該單片機(jī)是一個(gè)高可靠性,超低價(jià),無(wú)法解密,高性能的8位單片機(jī),32個(gè)IO口,且STC系列的
22、單片機(jī)可以在線編程、調(diào)試,方便地實(shí)現(xiàn)程序的下載與整機(jī)的調(diào)試。因此選用方案二中的51系列單片機(jī)作為主控芯片。22顯示模塊的選型和論證方案一采用點(diǎn)陣式數(shù)碼管顯示,點(diǎn)陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對(duì)于顯示文字比較合適,如采用在顯示數(shù)字顯得太浪費(fèi),且價(jià)格也相對(duì)較高,所以不用此種作為顯示。方案二采用LED數(shù)碼管動(dòng)態(tài)掃描,LED數(shù)碼管價(jià)格雖適中,對(duì)于顯示數(shù)字也最合適,而且采用動(dòng)態(tài)掃描法與單片機(jī)連接時(shí),占用單片機(jī)口線少。方案三采用LCD液晶顯示屏,液晶顯示屏的顯示功能強(qiáng)大,可顯示大量文字,圖形,顯示多樣,清晰可見(jiàn)。但是由于一般十字路口的交通燈多為數(shù)碼管顯示,因此這里也選取數(shù)碼管作為顯示模塊。因此本
23、設(shè)計(jì)中采用方案二中的DS1302作為時(shí)鐘模塊。23按鍵模塊的選型和論證方案一采用常見(jiàn)的獨(dú)立按鍵輸入模式,根據(jù)需要一共要用4個(gè)按鍵進(jìn)行功能輸入,而所選用的單片機(jī)共有32個(gè)IO,IO口比較充足。方案二采用矩陣鍵盤作為輸入,矩陣鍵盤是單片機(jī)外部設(shè)備中所使用的排布類似于矩陣的鍵盤組在鍵盤中按鍵數(shù)量較多時(shí),為了減少I/O口的占用,通常將按鍵排列成矩陣形式,如圖1所示。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過(guò)一個(gè)按鍵加以連接。這樣,一個(gè)端口(如P1口)就可以構(gòu)成4416個(gè)按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成20鍵的鍵盤,而直接
24、用端口線則只能多出一鍵(9鍵)。由此可見(jiàn),在需要的鍵數(shù)比較多時(shí),采用矩陣法來(lái)做鍵盤是合理的。圖21矩陣鍵盤由于本設(shè)計(jì)只需少量按鍵,所以本設(shè)計(jì)中方案一中的獨(dú)立按鍵作為鍵盤模塊。24系統(tǒng)整體設(shè)計(jì)概述本系統(tǒng)以單片機(jī)為控制核心,對(duì)系統(tǒng)進(jìn)行初始化,主要完成對(duì)鍵盤的響應(yīng)、數(shù)碼管顯示等功能的控制,起到總控和協(xié)調(diào)各模塊之間工作的作用。紅綠黃燈顯示主控模塊單片機(jī)按鍵模塊數(shù)碼管模塊報(bào)警模塊圖22系統(tǒng)結(jié)構(gòu)框圖本系統(tǒng)結(jié)構(gòu)如圖21所示,本設(shè)計(jì)可分為以下模塊單片機(jī)主控模塊、鍵盤模塊、數(shù)碼管模塊、報(bào)警模塊、紅綠黃燈顯示模塊。下面對(duì)各個(gè)模塊的設(shè)計(jì)方案逐一進(jìn)行論證分析。3系統(tǒng)硬件電路設(shè)計(jì)31主控模塊主控模塊模塊在整個(gè)系統(tǒng)中起著
25、統(tǒng)籌的作用,需要檢測(cè)鍵盤,溫度傳感器等各種參數(shù),同時(shí)驅(qū)動(dòng)液晶顯示相關(guān)參數(shù),在這里我們選用了51系列單片機(jī)中的STC89C52單片機(jī)作為系統(tǒng)的主控芯片。51系列單片機(jī)最初是由INTEL公司開(kāi)發(fā)設(shè)計(jì)的,但后來(lái)INTEL公司把51核的設(shè)計(jì)方案賣給了幾家大的電子設(shè)計(jì)生產(chǎn)商,譬如SST、PHILIP、ATMEL等大公司。因此市面上出現(xiàn)了各式各樣的均以51為內(nèi)核的單片機(jī)。這些各大電子生產(chǎn)商推出的單片機(jī)都兼容51指令、并在51的基礎(chǔ)上擴(kuò)展一些功能而內(nèi)部結(jié)構(gòu)是與51一致的。STC89C52有40個(gè)引腳,4個(gè)8位并行I/O口,1個(gè)全雙工異步串行口,同時(shí)內(nèi)含5個(gè)中斷源,2個(gè)優(yōu)先級(jí),2個(gè)16位定時(shí)/計(jì)數(shù)器。STC8
26、9C52的存儲(chǔ)器系統(tǒng)由4K的程序存儲(chǔ)器掩膜ROM,和128B的數(shù)據(jù)存儲(chǔ)器RAM組成。STC89C52單片機(jī)的基本組成框圖見(jiàn)圖31。時(shí)鐘電路ROM/EPROM/FLASH4KBRAM128BSFR21個(gè)定時(shí)個(gè)/計(jì)數(shù)器2CPU總線控制中斷系統(tǒng)5個(gè)中斷源2個(gè)優(yōu)先級(jí)串行口全雙工1個(gè)4個(gè)并行口XTAL2XTAL1RSTEAALEPSENP0P1P2P3VSSVCC圖31STC89C52單片機(jī)結(jié)構(gòu)圖311STC89C52單片機(jī)主要特性1一個(gè)8位的微處理器CPU。2片內(nèi)數(shù)據(jù)存儲(chǔ)器RAM128B,用以存放可以讀寫的數(shù)據(jù),如運(yùn)算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù)等,SST89系列單片機(jī)最多提供1K的RAM。3
27、片內(nèi)程序存儲(chǔ)器ROM4KB,用以存放程序、一些原始數(shù)據(jù)和表格。但也有一些單片機(jī)內(nèi)部不帶ROM/EPROM,如8031,8032,80C31等。目前單片機(jī)的發(fā)展趨勢(shì)是將RAM和ROM都集成在單片機(jī)里面,這樣既方便了用戶進(jìn)行設(shè)計(jì)又提高了系統(tǒng)的抗干擾性。SST公司推出的89系列單片機(jī)分別集成了16K、32K、64KFLASH存儲(chǔ)器,可供用戶根據(jù)需要選用。4四個(gè)8位并行IO接口P0P3,每個(gè)口既可以用作輸入,也可以用作輸出。5兩個(gè)定時(shí)器計(jì)數(shù)器,每個(gè)定時(shí)器計(jì)數(shù)器都可以設(shè)置成計(jì)數(shù)方式,用以對(duì)外部事件進(jìn)行計(jì)數(shù),也可以設(shè)置成定時(shí)方式,并可以根據(jù)計(jì)數(shù)或定時(shí)的結(jié)果實(shí)現(xiàn)計(jì)算機(jī)控制。為方便設(shè)計(jì)串行通信,目前的52系列
28、單片機(jī)都會(huì)提供3個(gè)16位定時(shí)器/計(jì)數(shù)器。6五個(gè)中斷源的中斷控制系統(tǒng)?,F(xiàn)在新推出的單片機(jī)都不只5個(gè)中斷源,例如SST89E58RD就有9個(gè)中斷源。7一個(gè)全雙工UART通用異步接收發(fā)送器的串行IO口,用于實(shí)現(xiàn)單片機(jī)之間或單機(jī)與微機(jī)之間的串行通信。8片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路,但石英晶體和微調(diào)電容需要外接。最高允許振蕩頻率為12MHZ。SST89V58RD最高允許振蕩頻率達(dá)40MHZ,因而大大的提高了指令的執(zhí)行速度。P1024MS67CK8RETXALVNU位圖32STC89C52單片機(jī)管腳圖部分引腳說(shuō)明1時(shí)鐘電路引腳XTAL1和XTAL2XTAL218腳接外部晶體和微調(diào)電容的一端;片內(nèi)它是振蕩電路反
29、相放大器的輸出端,振蕩電路的頻率就是晶體固有頻率。若需采用外部時(shí)鐘電路時(shí),該引腳輸入外部時(shí)鐘脈沖。要檢查振蕩電路是否正常工作,可用示波器查看XTAL2端是否有脈沖信號(hào)輸出。XTAL119腳接外部晶體和微調(diào)電容的另一端;在片內(nèi)它是振蕩電路反相放大器的輸入端。在采用外部時(shí)鐘時(shí),該引腳必須接地。2控制信號(hào)引腳RST,ALE,PSEN和EARST/VPD9腳RST是復(fù)位信號(hào)輸入端,高電平有效。當(dāng)此輸入端保持備用電源的輸入端。當(dāng)主電源VCC發(fā)生故障,降低到低電平規(guī)定值時(shí),將5V電源自動(dòng)兩個(gè)機(jī)器周期24個(gè)時(shí)鐘振蕩周期的高電平時(shí),就可以完成復(fù)位操作。RST引腳的第二功能是VPD,即接入RST端,為RAM提供
30、備用電源,以保證存儲(chǔ)在RAM中的信息不丟失,從而合復(fù)位后能繼續(xù)正常運(yùn)行。ALE/PROG30腳地址鎖存允許信號(hào)端。當(dāng)8051上電正常工作后,ALE引腳不斷向外輸出正脈沖信號(hào),此頻率為振蕩器頻率FOSC的1/6。CPU訪問(wèn)片外存儲(chǔ)器時(shí),ALE輸出信號(hào)作為鎖存低8位地址的控制信號(hào)。平時(shí)不訪問(wèn)片外存儲(chǔ)器時(shí),ALE端也以振蕩頻率的1/6固定輸出正脈沖,因而ALE信號(hào)可以用作對(duì)外輸出時(shí)鐘或定時(shí)信號(hào)。如果想確定8051/8031芯片的好壞,可用示波器查看ALE端是否有脈沖信號(hào)輸出。如有脈沖信號(hào)輸出,則8051/8031基本上是好的。ALE端的負(fù)載驅(qū)動(dòng)能力為8個(gè)LS型TTL低功耗甚高速TTL負(fù)載。此引腳的第
31、二功能PROG在對(duì)片內(nèi)帶有4KBEPROM的8751編程寫入固化程序時(shí),作為編程脈沖輸入端。PSEN29腳程序存儲(chǔ)允許輸出信號(hào)端。在訪問(wèn)片外程序存儲(chǔ)器時(shí),此端定時(shí)輸出負(fù)脈沖作為讀片外存儲(chǔ)器的選通信號(hào)。此引肢接EPROM的OE端見(jiàn)后面幾章任何一個(gè)小系統(tǒng)硬件圖。PSEN端有效,即允許讀出EPROMROM中的指令碼。PSEN端同樣可驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。要檢查一個(gè)8051/8031小系統(tǒng)上電后CPU能否正常到EPROMROM中讀取指令碼,也可用示波器看PSEN端有無(wú)脈沖輸出。如有則說(shuō)明基本上工作正常。EA/VPP31腳外部程序存儲(chǔ)器地址允許輸入端/固化編程電壓輸入端。當(dāng)EA引腳接高電平時(shí),CPU
32、只訪問(wèn)片內(nèi)EPROM/ROM并執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令,但當(dāng)PC程序計(jì)數(shù)器的值超過(guò)0FFFH對(duì)8751/8051為4K時(shí),將自動(dòng)轉(zhuǎn)去執(zhí)行片外程序存儲(chǔ)器內(nèi)的程序。當(dāng)輸入信號(hào)EA引腳接低電平接地時(shí),CPU只訪問(wèn)外部EPROM/ROM并執(zhí)行外部程序存儲(chǔ)器中的指令,而不管是否有片內(nèi)程序存儲(chǔ)器。對(duì)于無(wú)片內(nèi)ROM的8031或8032,需外擴(kuò)EPROM,此時(shí)必須將EA引腳接地。此引腳的第二功能是VPP是對(duì)8751片內(nèi)EPROM固化編程時(shí),作為施加較高編程電壓一般12V21V的輸入端。3輸入/輸出端口P0/P1/P2/P3P0口P00P07,3932腳P0口是一個(gè)漏極開(kāi)路的8位準(zhǔn)雙向I/O口。作為漏極開(kāi)路的
33、輸出端口,每位能驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。當(dāng)P0口作為輸入口使用時(shí),應(yīng)先向口鎖存器地址80H寫入全1,此時(shí)P0口的全部引腳浮空,可作為高阻抗輸入。作輸入口使用時(shí)要先寫1,這就是準(zhǔn)雙向口的含義。在CPU訪問(wèn)片外存儲(chǔ)器時(shí),P0口分時(shí)提供低8位地址和8位數(shù)據(jù)的復(fù)用總線。在此期間,P0口內(nèi)部上拉電阻有效。P1口P10P17,18腳P1口是一個(gè)帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口。P1口每位能驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。在P1口作為輸入口使用時(shí),應(yīng)先向P1口鎖存地址90H寫入全1,此時(shí)P1口引腳由內(nèi)部上拉電阻拉成高電平。P2口P20P27,2128腳P2口是一個(gè)帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口。P口每位能
34、驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。在訪問(wèn)片外EPROM/RAM時(shí),它輸出高8位地址。P3口P30P37,1017腳P3口是一個(gè)帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口。P3口每位能驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。P3口與其它I/O端口有很大的區(qū)別,它的每個(gè)引腳都有第二功能,如下P30RXD串行數(shù)據(jù)接收。P31RXD串行數(shù)據(jù)發(fā)送。P32INT0外部中斷0輸入。P33INT1外部中斷1輸入。P34T0定時(shí)/計(jì)數(shù)器0的外部計(jì)數(shù)輸入。P35T1定時(shí)/計(jì)數(shù)器1的外部計(jì)數(shù)輸入。P36WR外部數(shù)據(jù)存儲(chǔ)器寫選通。P37RD外部數(shù)據(jù)存儲(chǔ)器讀選通。312STC89C52單片機(jī)的中斷系統(tǒng)STC89C52系列單片機(jī)的中斷系統(tǒng)有5個(gè)中斷源
35、,2個(gè)優(yōu)先級(jí),可以實(shí)現(xiàn)二級(jí)中斷服務(wù)嵌套。由片內(nèi)特殊功能寄存器中的中斷允許寄存器IE控制CPU是否響應(yīng)中斷請(qǐng)求;由中斷優(yōu)先級(jí)寄存器IP安排各中斷源的優(yōu)先級(jí);同一優(yōu)先級(jí)內(nèi)各中斷同時(shí)提出中斷請(qǐng)求時(shí),由內(nèi)部的查詢邏輯確定其響應(yīng)次序。在單片機(jī)應(yīng)用系統(tǒng)中,常常會(huì)有定時(shí)控制需求,如定時(shí)輸出、定時(shí)檢測(cè)、定時(shí)掃描等;也經(jīng)常要對(duì)外部事件進(jìn)行計(jì)數(shù)。STC89C52單片機(jī)內(nèi)集成有兩個(gè)可編程的定時(shí)/計(jì)數(shù)器T0和T1,它們既可以工作于定時(shí)模式,也可以工作于外部事件計(jì)數(shù)模式,此外,T1還可以作為串行口的波特率發(fā)生器。313單片機(jī)最小系統(tǒng)設(shè)計(jì)P34MOSI67CK8RET9XALVNU位YHZPFWBU圖33單片機(jī)最小系統(tǒng)電
36、路圖圖33為單片機(jī)最小系統(tǒng)電路圖,單片機(jī)最小系統(tǒng)有單片機(jī)、時(shí)鐘電路、復(fù)位電路組成,時(shí)鐘電路選用了12MHZ的晶振提供時(shí)鐘,作用為給單片機(jī)提供一個(gè)時(shí)間基準(zhǔn),其中執(zhí)行一條基本指令需要的時(shí)間為一個(gè)機(jī)器周期,單片機(jī)的復(fù)位電路,按下復(fù)位按鍵之后可以使單片機(jī)進(jìn)入剛上電的起始狀態(tài)。圖中10K排阻為P0口的上拉電阻,由于P0口跟其他IO結(jié)構(gòu)不一樣為漏極開(kāi)路的結(jié)構(gòu),因此要加上拉電阻才能正常使用。32數(shù)碼管顯示電路數(shù)碼管工作原理這里我們介紹8段數(shù)碼管的工作原理。8段數(shù)碼管又稱為8字型數(shù)碼管,分為8段A、B、C、D、E、F、G、DP。其中,DP為小數(shù)點(diǎn)。數(shù)碼管常用的有10根管腳,每一段有一根管腳,另外兩根管腳為一個(gè)
37、數(shù)碼管的公共段,兩根之間相互連通。發(fā)光二極管的發(fā)光原理,我們已經(jīng)介紹過(guò)了,同理,8段LED數(shù)碼管,則是在一定形狀的絕緣材料上,利用不同形狀點(diǎn)劃的發(fā)光二極管組合,排列成“8”字型的數(shù)碼管,分別引出它們的電極,點(diǎn)亮相應(yīng)的點(diǎn)劃來(lái)顯示09的數(shù)字。從電路上,按數(shù)碼管的接法不同又分為共陰和共陽(yáng)兩種。圖34是共陰和共陽(yáng)極數(shù)碼管的內(nèi)部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。圖34共陰和共陽(yáng)極數(shù)碼管的內(nèi)部電路在設(shè)計(jì)時(shí),為了系統(tǒng)圖的美觀,我采用了6個(gè)數(shù)碼管組成的數(shù)碼管組,采用共陽(yáng)極接法。如圖35。Q12N390KR745VPFGEDCBAU位圖35系統(tǒng)數(shù)碼管電路33鍵盤模塊設(shè)計(jì)P102345/M
38、OSI67CK8RET9XALVNUSWB圖36鍵盤模塊電路圖本按鍵模塊使用的是多位獨(dú)立按鍵,按鍵一端接IO口,一端接地,由于單片機(jī)的IO口都有內(nèi)部上拉,因此當(dāng)按鍵沒(méi)有按下的時(shí)候,IO檢測(cè)到的時(shí)候高電平,當(dāng)按鍵按下的時(shí)候,相當(dāng)于IO短接地,因此這時(shí)候單片機(jī)檢測(cè)到的電平為低電平,通過(guò)檢測(cè)不同時(shí)刻的IO口狀態(tài)就可以判斷按下的是那個(gè)按鍵。其中這四個(gè)按鍵分別代表功能按鍵,增加按鍵,減少按鍵,緊急情況按鍵,緊急情況按下的時(shí)候十字路口的交通燈皆會(huì)滅,用戶可以通過(guò)這些按鍵來(lái)設(shè)置交通燈的時(shí)間和進(jìn)行緊急情況使用。34蜂鳴器模塊設(shè)計(jì)本設(shè)計(jì)還帶有緊急情況按鍵功能,用戶可以通過(guò)按鍵進(jìn)入緊急情況,當(dāng)按鍵按下的時(shí)候燈全滅
39、蜂鳴器發(fā)響。由于蜂鳴器的工作電流一般比較大,以致于單片機(jī)的I/O口是無(wú)法直接驅(qū)動(dòng)的,所以要利用三極管開(kāi)關(guān)電路來(lái)驅(qū)動(dòng)。本處選用的是8550三極管,它是一個(gè)PNP型的三極管,當(dāng)基極給低電平的時(shí)候三極管導(dǎo)通,這時(shí)候蜂鳴器發(fā)聲,當(dāng)給高電平的時(shí)候,三極管關(guān)閉,蜂鳴器不發(fā)聲。蜂鳴器模塊的電路圖如圖37所示。位Q圖37蜂鳴器驅(qū)動(dòng)電路圖35路燈指示電路在設(shè)計(jì)路燈時(shí),采用了發(fā)光二極管代替路燈。先介紹一下二極管,見(jiàn)圖38。二極管工作原理是單向?qū)?,即只有正極電壓高于負(fù)極電壓某特定值時(shí)才會(huì)導(dǎo)通,而負(fù)極電壓高于正極電壓是不導(dǎo)通的。D1LE0KR23P648975V圖38發(fā)光二極管示意圖發(fā)光二極管是一種特殊的二極管,導(dǎo)
40、通時(shí)會(huì)發(fā)光(發(fā)光二極管導(dǎo)通壓降一般為17V19V)。此外,工作電流要滿足該二極管的工作電流。發(fā)光二極管的正負(fù)極可以用萬(wàn)用表進(jìn)行判斷,把萬(wàn)用表?yè)苤炼O管檔或電阻擋,用兩個(gè)表筆分別接觸二極管的兩個(gè)引出腳。若發(fā)光二極管被點(diǎn)亮,則與紅表筆相接的引出腳為正極。從外觀上看,發(fā)光二極管的正極引腳的長(zhǎng)度也比較長(zhǎng)。一般發(fā)光二極管與I/O端口之間都會(huì)再連接一個(gè)電阻,其作用在于限制通過(guò)二極管的電流,從而達(dá)到減少功耗或者滿足端口對(duì)最大電流的限制。一般發(fā)光二極管的點(diǎn)亮電流為5MA至10MA。路燈設(shè)計(jì)時(shí)我采用了紅、黃、綠三種發(fā)光二級(jí)管。如圖39所示。圖39路燈設(shè)計(jì)電路4系統(tǒng)軟件設(shè)計(jì)41系統(tǒng)軟件總體設(shè)計(jì)系統(tǒng)初始化是否時(shí)間功
41、能按鍵按下設(shè)置選擇對(duì)應(yīng)顏色燈的時(shí)間設(shè)置是否時(shí)間功能按鍵按下緊急按鍵是否按下關(guān)閉數(shù)碼管和LED顯示,蜂鳴器發(fā)聲檢測(cè)按鍵是否松開(kāi)開(kāi)啟定時(shí)器進(jìn)行計(jì)數(shù)并顯示相應(yīng)的倒數(shù)時(shí)間根據(jù)當(dāng)前時(shí)間顯示不同的顏色的燈根據(jù)按鍵增加或減少時(shí)間YYYYNNNN圖41系統(tǒng)流程圖42程序設(shè)計(jì)原理軟件任務(wù)分析和硬件電路設(shè)計(jì)結(jié)合進(jìn)行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計(jì)基本定型后,也就基本上決定下來(lái)了。軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計(jì)做一個(gè)總體規(guī)劃。從軟件的功能來(lái)看可分為兩大類一類是執(zhí)行軟件,它能完成各種實(shí)質(zhì)性的功能,如測(cè)量,計(jì)算,顯示,打印,輸出控制和通信等,另一類是監(jiān)控軟件,它是專門用來(lái)協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)
42、系,在系統(tǒng)軟件中充當(dāng)組織調(diào)度角色的軟件。這兩類軟件的設(shè)計(jì)方法各有特色,執(zhí)行軟件的設(shè)計(jì)偏重算法效率,與硬件關(guān)系密切,千變?nèi)f化。軟件任務(wù)分析時(shí),應(yīng)將各執(zhí)行模塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義(輸入輸出定義)。在各執(zhí)行模塊進(jìn)行定義時(shí),將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型問(wèn)題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤設(shè)置選擇一種最適合的監(jiān)控程序結(jié)構(gòu)。相對(duì)來(lái)講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較易出問(wèn)題。這如同當(dāng)一名操作工人比較容易,而當(dāng)一個(gè)廠長(zhǎng)就比較難了。軟件任務(wù)分析的另一個(gè)內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。整個(gè)系統(tǒng)軟件可分為后臺(tái)程序(背景程
43、序)和前臺(tái)程序。后臺(tái)程序指主程序及其調(diào)用的子程序,這類程序?qū)?shí)時(shí)性要求不是太高,延誤幾十MS甚至幾百M(fèi)S也沒(méi)關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序),顯示程序和打印程序等與操作者打交道的程序放在后臺(tái)程序中執(zhí)行;而前臺(tái)程序安排一些實(shí)時(shí)性要求較高的內(nèi)容,如定時(shí)系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排在前臺(tái),后臺(tái)程序?yàn)椤笆瓜到y(tǒng)進(jìn)入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。5系統(tǒng)調(diào)試51硬件調(diào)試基于單片機(jī)的交通燈的電路較為復(fù)雜,對(duì)于焊接方面更是不可輕視,龐大的電路系統(tǒng)中只要出于一處的錯(cuò)誤,則會(huì)對(duì)檢測(cè)造成很大的不便,而且電路的交線較多,對(duì)于各種鋒利的引腳要注意處理,否則會(huì)刺破帶有包皮的導(dǎo)線,則會(huì)對(duì)電
44、路造成短路現(xiàn)象?;趩纹瑱C(jī)的交通燈的設(shè)計(jì)調(diào)試中遇到了很多的問(wèn)題?;叵脒@些問(wèn)題只要認(rèn)真多思考都是可以避免的,以下為主要的問(wèn)題剛開(kāi)始畫好電路圖后,我用自己的方法制作的電路板,方法如下1、首先需要買個(gè)單面或者雙面覆好銅的板子,一般電子市場(chǎng)都是有賣的。2、把PCB板圖在電腦上畫好,在用噴墨打印機(jī)打印出來(lái)。(注意1、一定要采用噴墨的打印機(jī)2、在畫PCB板時(shí)焊盤和過(guò)孔一定要足夠大。)3、把電路板用美工刀切成需要的大小,在把剛剛用打印機(jī)打印出來(lái)的PCB圖紙放到銅板上用熨斗來(lái)回熨直到紙上面的碳膜被熨到銅板上。4、如果打印紙上沒(méi)有全部覆蓋到銅板上,我們就要用2B鉛筆把銅板上的線路修補(bǔ)一下。5、把修改好的銅板放到
45、腐蝕液中腐蝕就好了。6、把腐蝕好的銅板用橡皮檫檫掉銅板上面的碳膜,再用錫全部走一遍就好了。7、就是最后一步鉆孔了,有條件的可以用電動(dòng)鉆直接鉆孔。要不然就只有自己做一個(gè)手動(dòng)鉆來(lái)鉆了。8、焊上原件整個(gè)板子就全部完成了。其中,在第3步時(shí)候,可能由于熨斗熱度不夠,或者時(shí)間不夠,導(dǎo)致PCB圖紙多次,印不上銅板上。第7步驟時(shí)候,導(dǎo)致電路板多次虛焊,最終,感覺(jué)完成設(shè)計(jì)時(shí),電路始終跑步起來(lái)。所以,最后,也不考慮自己的成本,就把自己的電路圖給廠家,讓廠家給做的電路板。最開(kāi)始的時(shí)候以為單片機(jī)IO口直接可以驅(qū)動(dòng)蜂鳴器發(fā)聲,后來(lái)調(diào)試的時(shí)候久久不能出聲音。解決經(jīng)過(guò)查找相關(guān)資料,知道蜂鳴器需要三極管來(lái)驅(qū)動(dòng),后來(lái)把三極管放
46、大器加上系統(tǒng)便可以正常工作。52軟件調(diào)試基于單片機(jī)的交通燈是多功能的數(shù)字型,所以對(duì)于它的程序也較為復(fù)雜,所以在編寫程序和調(diào)試時(shí)出現(xiàn)了相對(duì)較多的問(wèn)題。最后經(jīng)過(guò)多次的模塊子程序的修改,一步一步的完成,最終解決了軟件。在軟件的調(diào)試過(guò)程中主要遇到的問(wèn)題如下1當(dāng)用戶按下按鍵的時(shí)候,單片機(jī)讀取的數(shù)值跟設(shè)定的數(shù)值不對(duì)。解決重新檢查矩陣鍵盤電路的連接,重新建立一個(gè)新的對(duì)應(yīng)關(guān)系。2在檢測(cè)到按鍵按下的時(shí)候,將某個(gè)I/O的狀態(tài)取反。由于這種抖動(dòng)的存在,使得我們的微控制器誤以為是多次按鍵的按下,從而將某個(gè)I/O的狀態(tài)不斷取反,這并不是我們想要的效果,假如該I/O控制著系統(tǒng)中某個(gè)重要的執(zhí)行的部件,那結(jié)果更不是我們所期待
47、的。于是乎有人便提出了軟件消除抖動(dòng)的思想,道理很簡(jiǎn)單抖動(dòng)的時(shí)間長(zhǎng)度是一定的,只要我們避開(kāi)這段抖動(dòng)時(shí)期,檢測(cè)穩(wěn)定的時(shí)候的電平不就可以了嗎聽(tīng)起來(lái)確實(shí)不錯(cuò),而且實(shí)際應(yīng)用起來(lái)效果也還可以。于是就像下面的偽代碼所描述的一樣。IF0IO_KEYENTERDELAYMS20IF0IO_KEYENTERRETURNKEYVALUEELSERETURNKEY_NULLWHILE0IO_KEYENTER步驟如下(1)如果有鍵按下了(2)先延時(shí)20MS避開(kāi)抖動(dòng)時(shí)期(3)是真的按下了,返回鍵值(4)然后再檢測(cè),如果還是檢測(cè)到有鍵按下(5)是抖動(dòng),返回空的鍵值(6)等待按鍵釋放乍看上去,確實(shí)挺不錯(cuò),在實(shí)際的系統(tǒng)中,一般
48、是不允許這么樣做的。為什么呢首先,這里的DELAYMS20,讓微控制器在這里白白等待了20MS的時(shí)間,啥也沒(méi)干。其次WHILE0IO_KEYENTER所以合理的分配好微控制的處理時(shí)間,是編寫按鍵程序的基礎(chǔ)。原本是等待按鍵釋放,結(jié)果CPU就一直死死的盯住該按鍵,其它事情都不管了,那其它事情不干了嗎消除抖動(dòng)有必要嗎的確,軟件上的消抖確實(shí)可以保證按鍵的有效檢測(cè)。但是,這種消抖確實(shí)有必要嗎抖動(dòng)的出現(xiàn)即意味著按鍵已經(jīng)按下,盡管這個(gè)電平還沒(méi)有穩(wěn)定。所以只要我檢測(cè)到按鍵按下,即可以返回鍵值,問(wèn)題的關(guān)鍵是,在你執(zhí)行完其它任務(wù)的時(shí)候,再次執(zhí)行我的按鍵任務(wù)的時(shí)候,抖動(dòng)過(guò)程還沒(méi)有結(jié)束,這樣便有可能造成重復(fù)檢測(cè)。所以
49、,如何在返回鍵值后,避免重復(fù)檢測(cè),或者在按鍵一按下就執(zhí)行功能函數(shù),當(dāng)功能函數(shù)的執(zhí)行時(shí)間小于抖動(dòng)時(shí)間時(shí)候,如何避免再次執(zhí)行功能函數(shù),就成為我要考慮的問(wèn)題了。所以消除抖動(dòng)的目的是防止按鍵一次按下,多次響應(yīng)。53調(diào)試結(jié)果在調(diào)試過(guò)程中,遇到比較多的問(wèn)題是硬件方面的問(wèn)題,可能由于自己是軟件工程專業(yè)出身吧。在軟件調(diào)試時(shí)候,采用的一個(gè)模塊一個(gè)模塊的單獨(dú)調(diào)試,最后聯(lián)調(diào)的方式。經(jīng)過(guò)一系列的問(wèn)題查找后系統(tǒng)最終能正常工作,并完成所有的功能。結(jié)論畢業(yè)論文是本科學(xué)習(xí)階段一次非常難得的理論與實(shí)際相結(jié)合的機(jī)會(huì),通過(guò)這次基于單片機(jī)的交通信號(hào)燈控制電路的設(shè)計(jì)與實(shí)現(xiàn),我擺脫了單純的理論知識(shí)學(xué)習(xí)狀態(tài),和實(shí)際設(shè)計(jì)的結(jié)合鍛煉了我的綜合
50、運(yùn)用所學(xué)的專業(yè)基礎(chǔ)知識(shí),解決實(shí)際工程問(wèn)題的能力,同時(shí)也提高我查閱文獻(xiàn)資料、設(shè)計(jì)手冊(cè)、設(shè)計(jì)規(guī)范以及電腦制圖等其他專業(yè)能力水平,而且通過(guò)對(duì)整體的掌控,對(duì)局部的取舍,以及對(duì)細(xì)節(jié)的斟酌處理,都使我的能力得到了鍛煉,經(jīng)驗(yàn)得到了豐富,并且意志品質(zhì)力,抗壓能力及耐力也都得到了不同程度的提升。這是我們都希望看到的也正是我們進(jìn)行畢業(yè)設(shè)計(jì)的目的所在。通過(guò)這次畢業(yè)設(shè)計(jì),我學(xué)到了不少課本上沒(méi)有的知識(shí),也鍛煉了自己的動(dòng)手能力,將以前學(xué)過(guò)的零散的知識(shí)串到一起。經(jīng)過(guò)我長(zhǎng)時(shí)間的設(shè)計(jì)及調(diào)試,本系統(tǒng)基本能實(shí)現(xiàn)基于單片機(jī)的交通燈的所有功能。不足之處有1硬件的穩(wěn)定性有待進(jìn)一步提高。2系統(tǒng)人性化還不足。我的綜合設(shè)計(jì)主要涉及硬件和軟件兩
51、方面的內(nèi)容,通過(guò)這些我的硬件和軟件開(kāi)發(fā)能力都獲得了提高。首先硬件方面,基本了解了電子產(chǎn)品的開(kāi)發(fā)流程和所要做的工作?;菊莆樟薖ROTEL99SE原理圖的方法,并設(shè)計(jì)了一個(gè)單片機(jī)最小系統(tǒng)。通過(guò)開(kāi)發(fā)板的設(shè)計(jì)和硬件搭建的過(guò)程,使我對(duì)51系單片機(jī)的接口有了更深層次的理解,熟悉了一些單片機(jī)常用的外圍電路引腳和連接方法,如LCD液晶,鍵盤等。并且我學(xué)會(huì)了分析問(wèn)題解決問(wèn)題的能力,加深了對(duì)所學(xué)理論知識(shí)的理解和運(yùn)用。我的動(dòng)手能力得到了很大的提高,創(chuàng)新意識(shí)得到了鍛煉。提高是有限的但提高也是全面的,正是這一次設(shè)計(jì)讓我積累了無(wú)數(shù)實(shí)際經(jīng)驗(yàn),使我的頭腦更好的被知識(shí)武裝了起來(lái),也必然會(huì)讓我在未來(lái)的工作學(xué)習(xí)中表現(xiàn)出更高的應(yīng)變
52、能力,更強(qiáng)的溝通力和理解力。從不知道畢業(yè)論文怎么寫,到順利如期的完成本次畢業(yè)設(shè)計(jì),這給了我很大的信心,讓我了解專業(yè)知識(shí)的同時(shí)也對(duì)本專業(yè)的發(fā)展前景充滿信心,這些我在畢業(yè)論文結(jié)束語(yǔ)中都提起過(guò)。雖然,在這次設(shè)計(jì)中,存在諸多不足,可這些不足正是我們?nèi)ジ玫难芯扛玫膭?chuàng)造的最大動(dòng)力,只有發(fā)現(xiàn)問(wèn)題面對(duì)問(wèn)題才有可能解決問(wèn)題,不足和遺憾不會(huì)給我打擊只會(huì)更好的鞭策我前行,今后我更會(huì)關(guān)注新技術(shù)新設(shè)備新工藝的出現(xiàn),并爭(zhēng)取盡快的掌握這些先進(jìn)的知識(shí),更好的為祖國(guó)的四化服務(wù)。參考文獻(xiàn)1彭偉單片機(jī)C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)100例電子工業(yè)出版社2009年2吳運(yùn)昌模擬電子線路基礎(chǔ)廣州華南理工大學(xué)出版社,2004年3閻石數(shù)字電子技術(shù)基
53、礎(chǔ)北京高等教育出版社,1997年4張曉麗等數(shù)據(jù)結(jié)構(gòu)與算法北京機(jī)械工業(yè)出版社,2002年5馬忠梅等ARMSBITSEGA2P24SBITSEGB1P27SBITSEGB2P26SBITKEY_1P32SBITKEY_2P33SBITKEY_3P34SBITKEY_4P35SBITREDAP37SBITGREENAP20SBITYELLOWAP36SBITREDBP21SBITGREENBP23SBITYELLOWBP22SBITBEEPP10STATICUNSIGNEDCHARSEG_DAT0X30,0XF3,0XA4,0XA2,0X63,0X2A,0X28,0XB3,0X20,0X22,0XF
54、FUNSIGNEDINTT0COUNT0/定時(shí)器計(jì)數(shù)用UNSIGNEDCHARTIMENOW0/當(dāng)前數(shù)碼管上顯示的倒計(jì)時(shí)時(shí)間UNSIGNEDCHARTIMER20,TIMEY3/紅燈的時(shí)間,黃燈的時(shí)間UNSIGNEDCHARKEYCOUNT0/0表示正常顯示,1表示調(diào)整紅燈時(shí)間,2表示調(diào)整黃燈時(shí)間UNSIGNEDCHARFLAG0/0為豎著的是紅燈,1為橫著的是紅燈VOIDDELAYMSUNSIGNEDINTI/延時(shí)大約IMSUNSIGNEDINTX,YFORX0XTIMER/黃燈的時(shí)間不得大于紅燈的時(shí)間TIMEYTIMERDISPTIMEY/調(diào)整黃燈WHILEKEY_2IFKEY_30DEL
55、AYMS10IFKEY_30IFKEYCOUNT1TIMERIFTIMER255TIMER99DISPTIMER/調(diào)整紅燈ELSEIFKEYCOUNT2TIMEYIFTIMEYTIMER/黃燈的時(shí)間不得大于紅燈的時(shí)間TIMEYTIMERDISPTIMEY/調(diào)整黃燈WHILEKEY_3IFKEY_40DELAYMS10IFKEY_40P00XFFP10X00P20XFFP30XFFWHILEKEY_4VOIDMAINVOIDTMOD0X01/定時(shí)器工作模式1TH06553650000/256/單次計(jì)時(shí)時(shí)間為50MSTL06553650000256TR01/計(jì)數(shù)器開(kāi)始計(jì)數(shù)ET01/開(kāi)啟計(jì)數(shù)器0中斷
56、EA1/開(kāi)總中斷TIMENOWTIMERWHILE1KEY_SCANBEEP1IFKEYCOUNT0DISPTIMENOWIFFLAG0/A豎著的是紅燈,B橫著的是綠燈REDA0YELLOWA1GREENA1IFTIMENOWTIMEY/綠燈時(shí)間REDB1YELLOWB1GREENB0ELSE/黃燈時(shí)間REDB1YELLOWB0GREENB1ELSEREDB0YELLOWB1GREENB1IFTIMENOWTIMEY/綠燈時(shí)間REDA1YELLOWA1GREENA0ELSE/黃燈時(shí)間REDA1YELLOWA0GREENA1ELSEIFKEYCOUNT1DISPTIMER/調(diào)整紅燈ELSEIFK
57、EYCOUNT2DISPTIMEY/調(diào)整黃燈/T0中斷函數(shù)/VOIDTIMER0VOIDINTERRUPT1/計(jì)數(shù)器0中斷TH06553650000/256/重裝初值TL06553650000256T0COUNTIFT0COUNT20/當(dāng)TOCOUNT20時(shí),表示計(jì)時(shí)1ST0COUNT0/清零TIMENOWIFTIMENOW255TIMENOWTIMERFLAGFLAG/換行外文資料8BITMICROCONTROLLERWITH8KBYTESFLASHSTC89C52FEATURESCOMPATIBLEWITHMCS51PRODUCTS8KBYTESOFINSYSTEMREPROGRAMMAB
58、LEFLASHMEMORYENDURANCE1,000WRITE/ERASECYCLESFULLYSTATICOPERATION0HZTO24MHZTHREELEVELPROGRAMMEMORYLOCK256X8BITINTERNALRAM32PROGRAMMABLEI/OLINESTHREE16BITTIMER/COUNTERSEIGHTINTERRUPTSOURCESPROGRAMMABLESERIALCHANNELLOWPOWERIDLEANDPOWERDOWNMODESDESCRIPTIONTHESTC89C52ISALOWPOWER,HIGHPERFORMANCECMOS8BITMI
59、CROCOMPUTERWITH8KBYTESOFFLASHPROGRAMMABLEANDERASABLEREADONLYMEMORYPEROMTHEDEVICEISMANUFACTUREDUSINGHIGHDENSITYNONVOLATILEMEMORYTECHNOLOGYANDISCOMPATIBLEWITHTHEINDUSTRYSTANDARD80C51AND80C52INSTRUCTIONSETANDPINOUTTHEONCHIPFLASHALLOWSTHEPROGRAMMEMORYTOBEREPROGRAMMEDINSYSTEMORBYACONVENTIONALNONVOLATILEM
60、EMORYPROGRAMMERBYCOMBININGAVERSATILE8BITCPUWITHFLASHONAMONOLITHICCHIP,THESTC89C52ISAPOWERFULMICROCOMPUTERWHICHPROVIDESAHIGHLYFLEXIBLEANDCOSTEFFECTIVESOLUTIONTOMANYEMBEDDEDCONTROLAPPLICATIONSPINCONFIGURATIONSBLOCKDIAGRAMPINDESCRIPTIONVCCSUPPLYVOLTAGEGNDGROUNDPORT0PORT0ISAN8BITOPENDRAINBIDIRECTIONALI/
61、OPORTASANOUTPUTPORT,EACHPINCANSINKEIGHTTTLINPUTSWHEN1SAREWRITTENTOPORT0PINS,THEPINSCANBEUSEDASHIGHIMPEDANCEINPUTSPORT0CANALSOBECONFIGUREDTOBETHEMULTIPLEXEDLOWORDERADDRESS/DATABUSDURINGACCESSESTOEXTERNALPROGRAMANDDATAMEMORYINTHISMODE,P0HASINTERNALPULLUPSPORT0ALSORECEIVESTHECODEBYTESDURINGFLASHPROGRAM
62、MINGANDOUTPUTSTHECODEBYTESDURINGPROGRAMVERIFICATIONEXTERNALPULLUPSAREREQUIREDDURINGPROGRAMVERIFICATIONPORT1PORT1ISAN8BITBIDIRECTIONALI/OPORTWITHINTERNALPULLUPSTHEPORT1OUTPUTBUFFERSCANSINK/SOURCEFOURTTLINPUTSWHEN1SAREWRITTENTOPORT1PINS,THEYAREPULLEDHIGHBYTHEINTERNALPULLUPSANDCANBEUSEDASINPUTSASINPUTS
63、,PORT1PINSTHATAREEXTERNALLYBEINGPULLEDLOWWILLSOURCECURRENTIILBECAUSEOFTHEINTERNALPULLUPSINADDITION,P10ANDP11CANBECONFIGUREDTOBETHETIMER/COUNTER2EXTERNALCOUNTINPUTP10/T2ANDTHETIMER/COUNTER2TRIGGERINPUTP11/T2EX,RESPECTIVELY,ASSHOWNINTHEFOLLOWINGTABLEPORT1ALSORECEIVESTHELOWORDERADDRESSBYTESDURINGFLASHP
64、ROGRAMMINGANDVERIFICATIONPORT2PORT2ISAN8BITBIDIRECTIONALI/OPORTWITHINTERNALPULLUPSTHEPORT2OUTPUTBUFFERSCANSINK/SOURCEFOURTTLINPUTSWHEN1SAREWRITTENTOPORT2PINS,THEYAREPULLEDHIGHBYTHEINTERNALPULLUPSANDCANBEUSEDASINPUTSASINPUTS,PORT2PINSTHATAREEXTERNALLYBEINGPULLEDLOWWILLSOURCECURRENTIILBECAUSEOFTHEINTE
65、RNALPULLUPSPORT2EMITSTHEHIGHORDERADDRESSBYTEDURINGFETCHESFROMEXTERNALPROGRAMMEMORYANDDURINGACCESSESTOEXTERNALDATAMEMORIESTHATUSE16BITADDRESSESMOVXDPTRINTHISAPPLICATION,PORT2USESSTRONGINTERNALPULLUPSWHENEMITTING1SDURINGACCESSESTOEXTERNALDATAMEMORIESTHATUSE8BITADDRESSESMOVXRI,PORT2EMITSTHECONTENTSOFTH
66、EP2SPECIALFUNCTIONREGISTERPORT2ALSORECEIVESTHEHIGHORDERADDRESSBITSANDSOMECONTROLSIGNALSDURINGFLASHPROGRAMMINGANDVERIFICATIONPORT3PORT3ISAN8BITBIDIRECTIONALI/OPORTWITHINTERNALPULLUPSTHEPORT3OUTPUTBUFFERSCANSINK/SOURCEFOURTTLINPUTSWHEN1SAREWRITTENTOPORT3PINS,THEYAREPULLEDHIGHBYTHEINTERNALPULLUPSANDCANBEUSEDASINPUTSASINPUTS,PORT3PINSTHATAREEXTERNALLYBEINGPULLEDLOWWILLSOURCECURRENTIILBECAUSEO
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 離心泵的檢修各零部件檢修標(biāo)準(zhǔn)
- 金屬材料疲勞強(qiáng)度的八大主要影響因素
- 機(jī)械安全知識(shí)
- 電機(jī)的工作原理與種類
- 設(shè)備點(diǎn)檢內(nèi)容
- 有效防止液壓系統(tǒng)漏油的技術(shù)要領(lǐng)
- 鈑金和管工機(jī)械安全操作規(guī)程
- 閥門的100個(gè)專業(yè)術(shù)語(yǔ)
- 某單位機(jī)械設(shè)備安全檢查表
- 離心泵的汽蝕與吸入特性
- 過(guò)濾網(wǎng)目數(shù)標(biāo)準(zhǔn)
- 減少設(shè)備潤(rùn)滑故障的措施
- 離心泵機(jī)械密封安裝使用規(guī)則
- 閥門常見(jiàn)故障與原因
- 呼吸閥和真空破壞閥基礎(chǔ)知識(shí)總結(jié)
相關(guān)資源
更多