版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目 錄目 錄1摘 要4關(guān) 鍵 詞4abstract4keywords51、引言62、設(shè)計(jì)方案論證62.1主控芯片選擇方案62.2電源模塊選擇方案62.3顯示模塊選擇方案62.4數(shù)碼管顯示模塊選擇方案72.5鍵盤接口模塊選擇方案73、簡(jiǎn)介73.1調(diào)試軟件keil73.2硬件仿真proteus84、課題描述與分析84.1系統(tǒng)需求描述與分析84.2系統(tǒng)工作流程95、課題設(shè)計(jì)105.1總體設(shè)計(jì)105.2硬件設(shè)計(jì)115.2.1單片機(jī)最小系統(tǒng)115.2.2 電源模塊電路模塊125.2.3時(shí)鐘和復(fù)位電路模塊125.2.4數(shù)碼管顯示電路模塊135.2.5 led燈顯示模塊145.2.6鍵盤接口電路模塊155.
2、2.7串行通信接口電路155.3軟件設(shè)計(jì)165.3.1整體流程圖165.3.2主程序模塊175.3.3數(shù)碼管顯示模塊175.3.4鍵盤掃描程序模塊185.3.5閃爍顯示程序模塊195.3.6按鍵處理程序模塊205.3.7定時(shí)器0和定時(shí)器1中斷模塊206、系統(tǒng)測(cè)試216.1硬件調(diào)試216.1.1 電源模塊調(diào)試216.1.2 單片機(jī)最小系統(tǒng)模塊調(diào)試226.1.3 max232下載模塊檢測(cè)236.14 紅綠燈顯示檢測(cè)236.1.5 數(shù)碼管顯示檢測(cè)236.2整體電路測(cè)246.3軟件調(diào)試247、結(jié)論24參考文獻(xiàn)25附 錄26謝 辭45摘 要 本文介紹了交通燈系統(tǒng)的設(shè)計(jì)。本系統(tǒng)硬件部分基于stc
3、12c5410ad單片機(jī),由鍵盤接口模塊,穩(wěn)壓電源模塊,串行通信接口模塊和數(shù)碼管、交通燈顯示接口模塊組成。本系統(tǒng)的軟件部分基于keilc51軟件系統(tǒng)。本系統(tǒng)利用單片機(jī)的定時(shí)器產(chǎn)生秒信號(hào),控制十字路口的紅綠黃燈交替點(diǎn)亮和熄滅,并且用4只數(shù)碼管顯示十字路口兩個(gè)方向的剩余時(shí)間。本系統(tǒng)除了可以按照設(shè)定程序自行運(yùn)行外,還可以通過按鍵設(shè)置主干道和次干道的通行時(shí)間和暫緩?fù)ㄐ袝r(shí)間。本系統(tǒng)可實(shí)現(xiàn)基本交通燈功能,系統(tǒng)實(shí)用性強(qiáng)、操作簡(jiǎn)單。關(guān) 鍵 詞單片機(jī)最小系統(tǒng) stc12c5410ad 紅綠燈控制 仿真abstractthis article describes a design of traffic signa
4、l systems. the hardware of system consists of stc12c5410ad single-chip, keyboard, steady power, communication interface,led digitron and traffic light display. the software of system is mad up of keilc51 .the use of stc12c5410ad timer generates seconds signals to control the turn at the crossroads o
5、f the red and green lights and yellow lights, and 4 led digital display at the crossroads of the remainder time of the two directions. it also can manually set keys to adjust main roads and sub-passage time and the suspension of access time, so it achieves the basic function of traffic lights, the s
6、ystem is practical, simple .keywordsthe least system of sing lechip,stc12c5410ad, traffic light control,simulation 1、引言本設(shè)計(jì)的目的是應(yīng)用單片機(jī)最小系統(tǒng)實(shí)現(xiàn)簡(jiǎn)易交通燈的設(shè)計(jì),可利用單片機(jī)的定時(shí)器產(chǎn)生秒信號(hào),控制十字路口的紅綠黃燈交替點(diǎn)亮和熄滅,并且用4只數(shù)碼管顯示十字路口兩個(gè)方向的剩余時(shí)間。并能用按鍵設(shè)置兩個(gè)方向的通行時(shí)間(綠燈點(diǎn)亮的時(shí)間)和暫緩?fù)ㄐ袝r(shí)間(黃燈點(diǎn)亮的時(shí)間),系統(tǒng)的工作符合一般交通燈控制要求。本設(shè)計(jì)的背景是當(dāng)前全國(guó)大中城市普遍存在著道路擁擠、車輛堵塞、交通秩序混亂
7、的現(xiàn)象,如何解決城市交通問題已成為全社會(huì)關(guān)注的焦點(diǎn)和大眾的迫切呼聲。城市交通路口實(shí)現(xiàn)交通信號(hào)控制是城市交通管理現(xiàn)代化的基本標(biāo)志之一,是提高交通管理效能的重要技術(shù)手段。紅綠燈控制器是控制交叉路口交通信號(hào)的設(shè)備,它是交通信號(hào)控制的重要組成部分。各種交通控制方案,最終都要由紅綠燈控制器來實(shí)現(xiàn)。本設(shè)計(jì)的適用范圍是適用于城市交通燈的實(shí)現(xiàn)。本設(shè)計(jì)的適用范圍是沒有考慮人行道的紅綠燈設(shè)計(jì),也沒有考慮機(jī)動(dòng)車輛拐向的紅綠燈設(shè)計(jì),只考慮了機(jī)動(dòng)車輛行駛的紅綠燈設(shè)計(jì),而且通行時(shí)間和暫緩?fù)ㄐ袝r(shí)間的范圍都是兩位數(shù)。本課題的研究意義是應(yīng)用單片機(jī)來控制交通燈, 使交通燈在控制中靈活而有效。本設(shè)計(jì)將程序結(jié)構(gòu)模塊化處理,
8、使程序的可讀性、可維護(hù)性和可移植性都得到進(jìn)一步的提高。本系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,操作方便;可實(shí)現(xiàn)自動(dòng)控制;對(duì)優(yōu)化城市交通具有一定的意義。2、設(shè)計(jì)方案論證2.1主控芯片選擇方案方案一:使用以89c51單片機(jī)芯片51系列單片機(jī)芯片的優(yōu)點(diǎn)是結(jié)構(gòu)完整、特殊功能寄存器的規(guī)范化以及指令系統(tǒng)的控制功能出眾,含有32個(gè)i/o口,適合需要多端口控制的系統(tǒng),設(shè)計(jì)時(shí)無(wú)需另接程序存儲(chǔ)器,為設(shè)計(jì)和調(diào)試帶來極大的方便;缺點(diǎn)是其功耗很大。 方案二:使用以stc12c5410ad單片機(jī)芯片stc12c5410ad是增強(qiáng)型51單片機(jī),具有寬電壓、不怕電源抖動(dòng)、高抗靜電等優(yōu)點(diǎn),有掉電模式、空閑模式、正常工作模式等低功耗模式,可在系統(tǒng)編程,
9、無(wú)需編程器。串口對(duì)應(yīng)i/o口可以通過改變寄存器換成別的i/o口作為串口來通信,i/o口可以有四種模式可設(shè)置,stc單片機(jī)可以為1時(shí)鐘每機(jī)器周期,指令執(zhí)行速度大提高。綜合上面兩種方案,考慮到課程設(shè)計(jì)要求和stc12c5410ad的優(yōu)點(diǎn),選擇方案二。2.2電源模塊選擇方案方案一:采用獨(dú)立的穩(wěn)壓電源。此方案的優(yōu)點(diǎn)是穩(wěn)定可靠,且有各種成熟電路可供選用;缺點(diǎn)是各模塊都采用獨(dú)立電源,會(huì)使系統(tǒng)復(fù)雜,且可能影響電路電平。方案二:采用變壓器控制模塊提供電源。將220v的電壓轉(zhuǎn)換為12v的低電壓,經(jīng)過電容濾波后再經(jīng)過lm7805穩(wěn)壓得到5v的直流電供系統(tǒng)工作,該方案的優(yōu)點(diǎn)是系統(tǒng)簡(jiǎn)明扼要,節(jié)約成本;缺點(diǎn)是輸出功率不
10、高。綜上所述,選擇方案二。2.3顯示模塊選擇方案方案一:使用lcd液晶由液晶驅(qū)動(dòng)芯片ht1621和lcd玻璃片twm259組成的自制液晶,顯示清晰,能美觀的顯示數(shù)字,小數(shù)點(diǎn),負(fù)號(hào)等,滿足題目要求,但結(jié)構(gòu)復(fù)雜,操作難,需要復(fù)雜的語(yǔ)言編程能力,且價(jià)格昂貴。方案二:采用led數(shù)碼管用4個(gè)led數(shù)碼管,數(shù)碼管原理簡(jiǎn)單,價(jià)格低廉、性能可靠、操作簡(jiǎn)單,但功耗大。南北向和東西向各采用2個(gè)數(shù)碼管計(jì)時(shí),對(duì)該方向的指示燈的點(diǎn)亮?xí)r間進(jìn)行倒計(jì)時(shí),最長(zhǎng)計(jì)時(shí)范圍為99秒。設(shè)計(jì)時(shí)可利用單片機(jī)的p1口和p1.0p1.3作為字段和片選信號(hào)輸出,經(jīng)驅(qū)動(dòng)芯片后驅(qū)動(dòng)數(shù)碼管顯示倒計(jì)時(shí)時(shí)間,數(shù)碼管采用動(dòng)態(tài)掃描方式顯示。綜合上面兩種方案,
11、選擇方案二。2.4數(shù)碼管顯示模塊選擇方案方案一:數(shù)碼管顯示直接使用單片機(jī)i/o口輸出。該方案的優(yōu)點(diǎn)是硬件方便實(shí)現(xiàn),電路簡(jiǎn)單;缺點(diǎn)是顯示數(shù)碼管需要較多的引腳數(shù)碼管段選需要8個(gè)引腳,位選需要4個(gè)引腳,所以顯示數(shù)碼管共需要12個(gè)引腳。方案二:使用2個(gè)74hc573鎖存器顯示數(shù)碼管該方案的優(yōu)點(diǎn)是引腳利用較少,由于74hc573鎖存器的性質(zhì),可以將數(shù)碼管的段選和位選共用一個(gè)p1口,分別鎖存輸出,這樣引腳利用了8個(gè);缺點(diǎn)是需要增加兩個(gè)鎖存器,增加了硬件電路的復(fù)雜度。綜上所述,增加鎖存器復(fù)雜程度,軟件編程沒有變得復(fù)雜,但是節(jié)省了引腳,對(duì)于引腳較少的單片機(jī)芯片來說這是一大優(yōu)勢(shì),因此選擇方案二。2.5鍵盤接口模
12、塊選擇方案方案一:使用4×4的鍵盤矩陣鍵盤,16個(gè)按鍵包括09共10個(gè)數(shù)字按鍵,1個(gè)加1按鍵,1個(gè)減1按鍵,1個(gè)設(shè)置完成按鍵,南北和東西方向2個(gè)按鍵。本方案的優(yōu)點(diǎn)是按鍵比較多,每個(gè)按鍵可以可以實(shí)現(xiàn)不同的功能,方便用戶調(diào)整;缺點(diǎn)是按鍵較多,單片機(jī)需要擴(kuò)展接口,硬件和軟件處理起來都比較麻煩。方案二:直接在單片機(jī)的i/o口線上接上按鍵開關(guān)。使用3個(gè)獨(dú)立按鍵,分別設(shè)置鍵、增加鍵和減少鍵,設(shè)置鍵選擇方向和指示燈,增加鍵增加指示燈亮的時(shí)間,減少鍵減少指示燈亮的時(shí)間。 本方案的優(yōu)點(diǎn)是按鍵少,單片機(jī)不需要擴(kuò)展接口,系統(tǒng)復(fù)雜性比較低,硬件和軟件處理起來都比較容易;缺點(diǎn)是用戶進(jìn)行設(shè)置時(shí),由于按鍵少功能集
13、合在一起,使用不太方便。綜合考慮上述兩個(gè)方案的優(yōu)缺點(diǎn),考慮到stc12c5410ad的引腳比較少,鍵盤使用率較少,擴(kuò)展接口增加了硬件和軟件的復(fù)雜程度,選擇方案二。3、簡(jiǎn)介3.1調(diào)試軟件keil簡(jiǎn)介keil c51是美國(guó)keil software公司出品的51系列兼容單片機(jī)c語(yǔ)言軟件開發(fā)系統(tǒng),與匯編相比,c語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì)。keil c51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全windows界面。keil提供了包括c編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。然
14、后分別由c51及a51編譯器編譯生成目標(biāo)文件(.obj)。目標(biāo)文件可由lib51創(chuàng)建生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)l51連接定位生成絕對(duì)目標(biāo)文件(.abs)。abs文件由oh51轉(zhuǎn)換成標(biāo)準(zhǔn)的hex文件,以供調(diào)試器dscope51或tscope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如eprom中。通過一個(gè)集成開發(fā)環(huán)境(uvision)將這些部份組合在一起。3.2硬件仿真proteus簡(jiǎn)介proteus isis是英國(guó)labcenter公司開發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于windows操作系統(tǒng)上,可以仿真、分析(spice)各種模擬器件和集
15、成電路,該軟件的特點(diǎn)是:實(shí)現(xiàn)了單片機(jī)仿真和spice電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、rs232動(dòng)態(tài)仿真、i2c調(diào)試器、spi調(diào)試器、鍵盤和lcd系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:68000系列、8051系列、avr系列、pic12系列、pic16系列、pic18系列、z80系列、hc11系列以及各種外圍芯片。提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能
16、;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如keil c51 uvision2等軟件。具有強(qiáng)大的原理圖繪制功能。proteus能很好的對(duì)硬件電路進(jìn)行仿真測(cè)試,采用proteus 仿真軟件進(jìn)行虛擬單片機(jī)實(shí)驗(yàn),具有比較明顯的優(yōu)勢(shì),涉及到的實(shí)驗(yàn)實(shí)習(xí)內(nèi)容全面、硬件投入少、實(shí)驗(yàn)過程中損耗小、與工程實(shí)踐最為接近等??傊撥浖且豢罴瘑纹瑱C(jī)和spice分析于一身的仿真軟件,功能極其強(qiáng)大。4、課題描述與分析4.1系統(tǒng)需求描述與分析 十字交叉路口的交通燈控制系統(tǒng)的結(jié)構(gòu)如圖一所示: 南北東西圖一 十字交叉路口的交通燈控制系統(tǒng)往南和往北的信號(hào)一致,即紅燈(綠燈或黃燈)同時(shí)亮或同時(shí)熄滅。用兩個(gè)數(shù)碼管來顯示被點(diǎn)亮的指示燈
17、還將點(diǎn)亮多久。往東和往西方向的信號(hào)一致,其工作方式與南北方向一樣,也采用兩個(gè)數(shù)碼管來倒計(jì)時(shí)。當(dāng)南北方向?yàn)榫G燈和黃燈時(shí),東西向的紅燈點(diǎn)亮禁止通行;而東西方向?yàn)榫G燈和黃燈時(shí),南北向的紅燈點(diǎn)亮禁止通行。假設(shè)南北方向?yàn)橹鞲傻溃ㄐ袝r(shí)間為60秒,東西方向是次干道,通行時(shí)間為30秒,黃燈點(diǎn)亮的時(shí)間均為4秒。假設(shè)南北方向?yàn)橹鞲傻?,通行時(shí)間(即綠燈亮的時(shí)間)為60秒,東西方向是次干道,通行時(shí)間為30秒,暫緩?fù)ㄐ袝r(shí)間(即黃燈點(diǎn)亮的時(shí)間)均為4秒,則其工作方式如表1所示循環(huán)點(diǎn)亮信號(hào)燈。表1 交通信號(hào)燈工作模式南北方向綠燈亮60秒黃燈亮04秒紅燈亮34秒東西方向紅燈亮64秒綠燈亮40秒黃燈亮04秒主干道和次干道的通
18、行時(shí)間及黃燈點(diǎn)亮的時(shí)間可以手動(dòng)設(shè)置;在沒有手動(dòng)設(shè)置通行時(shí)間時(shí),系統(tǒng)自動(dòng)按表1的模式進(jìn)行工作。4.2系統(tǒng)工作流程 接通電源時(shí)或系統(tǒng)復(fù)位后,系統(tǒng)按程序給定的時(shí)間工作,即南北向通行60秒,東西向通行30秒,黃燈亮4秒。首先南北向通行,然后東西向通行,如此循環(huán)。通行時(shí)間的設(shè)置:當(dāng)需要更改主、次干道的通行時(shí)間時(shí),可以用“設(shè)置鍵、增加鍵、減少鍵”進(jìn)行設(shè)置。第一次按“設(shè)置鍵”時(shí),南北向的綠燈亮,南北向的數(shù)碼管顯示當(dāng)前南北向的通行時(shí)間,并且按每秒3次的頻率閃爍(每秒鐘亮3次暗3次),其余的信號(hào)指示燈和東西向的數(shù)碼管熄滅,此時(shí)可以用“增加鍵”和“減少鍵”來改變南北向的通行時(shí)間。按一次“增加鍵”或“減少鍵”,數(shù)碼
19、管的顯示時(shí)間增加1秒或減小1秒,長(zhǎng)按“增加鍵”或“減少鍵”(按下的時(shí)間超過1秒鐘以上),則數(shù)碼管顯示的時(shí)間按每秒鐘增加或減少10的速度快速變化。 第二次按“設(shè)置鍵”時(shí),南北向的黃燈亮,南北向的數(shù)碼管顯示當(dāng)前南北向黃燈的點(diǎn)亮?xí)r間,并且按每秒3次的頻率閃爍(每秒鐘亮3次暗3次),其余的信號(hào)指示燈和東西向的數(shù)碼管熄滅,此時(shí)可以用“增加鍵”和“減少鍵”來改變南北向黃燈的點(diǎn)亮?xí)r間。 第三次按“設(shè)置鍵”時(shí),東西向的綠燈亮,東西向的數(shù)碼管顯示當(dāng)前東西向的通行時(shí)間,并且按每秒3次的頻率閃爍,此時(shí)可以用“增加鍵”和“減少鍵”來改變東西向的通行時(shí)間。第四次按“設(shè)置鍵”時(shí),東西向的黃燈亮,東西向的數(shù)碼管顯示當(dāng)前東西
20、向黃燈的點(diǎn)亮?xí)r間,并且按每秒3次的頻率閃爍,此時(shí)可以用“增加鍵”和“減少鍵”來改變東西向黃燈的點(diǎn)亮?xí)r間。第五次按“設(shè)置鍵”時(shí),系統(tǒng)退出設(shè)置狀態(tài),回到交通信號(hào)燈狀態(tài),并且南北向先通行,東西向后通行。表2 設(shè)置鍵的功能按“設(shè)置鍵”的次數(shù)第一次第二次第三次第四次第五次調(diào)整內(nèi)容南北方向綠燈點(diǎn)亮?xí)r間南北方向黃燈點(diǎn)亮?xí)r間東西方向綠燈點(diǎn)亮?xí)r間東西方向黃燈點(diǎn)亮?xí)r間回復(fù)交通燈工作狀態(tài)調(diào)整范圍099秒09秒099秒09秒5、課題設(shè)計(jì)5.1總體設(shè)計(jì)本系統(tǒng)的整體框圖由stc12c5410ad構(gòu)成主控芯片,主要是實(shí)現(xiàn)各個(gè)功能模塊之間功能交互。本系統(tǒng)包括電源模塊、時(shí)鐘、復(fù)位電路模塊,程序下載模塊,鍵盤接口模塊,數(shù)碼管和l
21、ed發(fā)光二極管顯示模塊。程序下載模塊由串口和max232芯片組成;鍵盤接口模塊用于設(shè)置各個(gè)方向指示燈的點(diǎn)亮?xí)r間;數(shù)碼管顯示模塊用來顯示被點(diǎn)亮的指示燈還將點(diǎn)亮多久;led發(fā)光二極管模塊用于指示該方向的3種狀態(tài):通行(綠燈亮)、暫緩?fù)ㄐ校S燈亮)和禁止通行(紅燈亮);220v交流電轉(zhuǎn)5v直流電線性穩(wěn)壓電源構(gòu)成電源模塊。系統(tǒng)結(jié)構(gòu)框圖如圖二所示: 圖二 系統(tǒng)結(jié)構(gòu)框圖紅綠燈控制器的總體的設(shè)計(jì)如圖三所示(注本次硬件仿真用的是80c51單片機(jī),proteus軟件庫(kù)里沒有stc12c5410ad):圖三 紅綠燈控制器總體設(shè)計(jì)圖從圖三可以看出整個(gè)設(shè)計(jì)圖。首先由220v交流電轉(zhuǎn)5v直流電線性穩(wěn)壓電源模塊得到穩(wěn)定的
22、5v直流電源,提供了模塊間工作供電所需,然后由stc12c5410ad單片機(jī)最小系統(tǒng)模塊來控制紅綠黃發(fā)光二極管組合模塊與led數(shù)碼管動(dòng)態(tài)顯示模塊的聯(lián)合動(dòng)態(tài)顯示,最后可以通過東西南北要道通行時(shí)間按鍵設(shè)置模塊來隨意設(shè)置交通干道的通行暫停時(shí)間。5.2硬件設(shè)計(jì)5.2.1單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)以stc12c5410ad為核心,外加時(shí)鐘和復(fù)位電路,電路結(jié)構(gòu)簡(jiǎn)單,抗干擾能力強(qiáng)。stc12c5410ad芯片的速度比普通8051 快12 倍,工作周期為1 個(gè)時(shí)鐘/ 機(jī)器周期,risc 型8051 內(nèi)核, 512 字節(jié)片內(nèi)ram 數(shù)據(jù)存儲(chǔ)器,外部晶體或內(nèi)部rc 振蕩器可選,在isp 下載編程用戶程序時(shí)設(shè)置時(shí)
23、鐘。10 位adc,8 通道,stc12c2052ad 系列為8 位adc,2 個(gè)硬件16 位定時(shí)器,兼容普通8051 的定時(shí)器。4 路pca 還可再實(shí)現(xiàn)4 個(gè)定時(shí)器。先進(jìn)的指令集結(jié)構(gòu),兼容普通8051 指令集4 組,8 個(gè)8 位通用工作寄存器(共32 個(gè)通用寄存器),主要有硬件乘法/ 除法指令。時(shí)鐘電路在單片機(jī)的外部通過xtal1,xtal2這兩個(gè)引腳跨接晶體振蕩器和微調(diào)電容,構(gòu)成穩(wěn)定的自激振蕩器.本系統(tǒng)采用的為11.0592mhz的晶振,微調(diào)電容為20pf。單片機(jī)最小系統(tǒng)如圖四所示:圖四 單片機(jī)最小系統(tǒng)圖5.2.2 電源模塊電路模塊220v的高電壓經(jīng)過變壓器后得到12v交流電,經(jīng)二極管整流
24、成脈動(dòng)直流電,經(jīng)過電容濾波又經(jīng)過lm7805穩(wěn)壓得到5v的直流電供系統(tǒng)工作,電源的指示可以由一個(gè)發(fā)光二極管來實(shí)現(xiàn),2個(gè)100uf的電容是起一個(gè)再次濾波的作用。穩(wěn)壓電源模塊電路圖如圖五所示:圖五 穩(wěn)壓電源電路模塊圖5.2.3時(shí)鐘和復(fù)位電路模塊時(shí)鐘采用外部晶振,頻率為11.0592mhz,時(shí)鐘和復(fù)位電路電圖如圖六所示:圖六 時(shí)鐘和復(fù)位電路模塊圖5.2.4數(shù)碼管顯示電路模塊圖七所示的是共陽(yáng)數(shù)碼管及其電路,其中每個(gè)數(shù)碼管的8個(gè)段: h、g、f、e、d、c、b、a(h是小數(shù)點(diǎn))都連在一起。圖八是4 位數(shù)碼掃描顯示電路,4個(gè)數(shù)碼管分別由4個(gè)選通信號(hào)k1k4來選擇。被選通的數(shù)碼管顯示數(shù)據(jù)。例如,在某一時(shí)刻,
25、k3為低電平,其余選通信號(hào)為高電平,這時(shí)僅k3對(duì)應(yīng)的數(shù)碼管顯示來自段信號(hào)端的數(shù)據(jù),就必須使得4個(gè)選通信號(hào)k1k4分別被單獨(dú)選通,與此同時(shí),在段信號(hào)輸入口加上希望在該對(duì)應(yīng)數(shù)碼管上顯示的數(shù)據(jù),于是隨著選通信號(hào)的掃變,就能實(shí)現(xiàn)掃描顯示的目的。共陽(yáng)數(shù)碼管及其電路示意圖如圖七所示:圖七 共陽(yáng)數(shù)碼管及其電路4位數(shù)碼掃描電路的示意圖如圖八所示: 圖圖八 4位數(shù)碼掃描電路 數(shù)碼管顯示電路圖如圖九所示:圖九 數(shù)碼管動(dòng)態(tài)顯示模塊圖5.2.5 led燈顯示模塊led燈采用的是共陽(yáng)接法,即所有的led管陽(yáng)級(jí)通過一個(gè)限流電阻上拉到5v電源,所有的陰級(jí)接到單片機(jī)的相應(yīng)引腳。只要該i/o口置低,該燈就能點(diǎn)亮。led燈顯示模
26、塊如圖十所示:圖十 led燈顯示模塊圖5.2.6鍵盤接口電路模塊交通燈的時(shí)間設(shè)置主要是通過按鍵的設(shè)置來實(shí)現(xiàn)的。set設(shè)置鍵接單片機(jī)的外部中斷0口(引腳p3.2),up鍵對(duì)應(yīng)端口定時(shí)/計(jì)數(shù)器(引腳p3.4) ,down對(duì)應(yīng)端口定時(shí)/計(jì)數(shù)器1(引腳p3.5)。在程序初始化的時(shí)候兩個(gè)定時(shí)器均工作于定時(shí)模式,定時(shí)器1主要完成長(zhǎng)按鍵加十和減十的功能,定時(shí)器0則只要完成數(shù)碼管動(dòng)態(tài)顯示時(shí)間間隔的定時(shí)功能。平時(shí)工作時(shí),只有定時(shí)器0工作,一但外部中斷0觸發(fā),則激活定時(shí)器1,開始設(shè)置初始化,當(dāng)進(jìn)中斷0次數(shù)標(biāo)志位flag滿5次時(shí),退出設(shè)置模式,進(jìn)入倒計(jì)時(shí)模式。鍵盤接口電路模塊如圖十一所示:圖十一 鍵盤接口電路模塊圖
27、5.2.7串行通信接口電路 將程序下載到單片機(jī)內(nèi)部需要完成串并數(shù)據(jù)的轉(zhuǎn)換和電平轉(zhuǎn)換,因此需要串行通信接口電路。由于電腦內(nèi)部的電平為ttl電平,串口的電平為cmos電平,因此必須轉(zhuǎn)接一個(gè)ttl-cmos電平轉(zhuǎn)換芯片max232。串行通信接口電路如圖十二所示:圖十二 串行通信接口電路圖5.3軟件設(shè)計(jì)5.3.1整體流程圖各個(gè)模塊的都是用c語(yǔ)言來編寫的。本系統(tǒng)軟件設(shè)計(jì)主要分為4個(gè)模塊,即主程序模塊、中斷子程序模塊、鍵盤掃描模塊、顯示模塊。整個(gè)系統(tǒng)工作流程為當(dāng)系統(tǒng)上電復(fù)位后進(jìn)入主程序模塊,在主程序模塊中調(diào)用顯示模塊來完成信息的顯示,在沒有用戶觸發(fā)中斷的情況下程序一直在主程序里循環(huán),以維持系統(tǒng)的正常工作。
28、整個(gè)軟件流程圖如圖十三所示: 圖十三 軟件流程圖5.3.2主程序模塊主要完成ram清零,定時(shí)器t0,t1的設(shè)置,綠、黃燈的初值設(shè)定以及各子程序的調(diào)用。主程序的流程圖如圖十四所示:圖十四 主程序的流程圖5.3.3數(shù)碼管顯示模塊數(shù)碼管顯示模塊包括南北方向數(shù)碼管顯示、東西方向數(shù)碼管顯示和設(shè)置狀態(tài)下的數(shù)碼管閃爍顯示。數(shù)碼管顯示模塊的程序流程圖如十五所示:圖十五 數(shù)碼管顯示模塊程序流程圖5.3.4鍵盤掃描程序模塊在設(shè)置狀態(tài)下,啟動(dòng)鍵盤掃描模塊,判斷是否有鍵被按下,是增加鍵還是減少鍵被按下,鍵被長(zhǎng)按還是短按,還有鍵盤消抖功能。鍵盤掃描程序模塊流程圖如圖十六所示:圖十六 鍵盤掃描程序模塊流程圖5.3.5閃爍
29、顯示程序模塊在設(shè)置東西南北通行時(shí)間時(shí),數(shù)碼管顯示當(dāng)前的通行時(shí)間,并且按每秒3次的頻率閃爍(每秒鐘亮3次暗3次),因此將1秒分為6份,偶數(shù)份數(shù)碼管亮,奇數(shù)份數(shù)碼管熄滅。閃爍顯示程序模塊如圖十七所示:圖十七 閃爍顯示程序模塊圖5.3.6按鍵處理程序模塊當(dāng)設(shè)置按鍵被按第一下時(shí),進(jìn)入設(shè)置模塊,然后根據(jù)鍵盤掃描得到的鍵值轉(zhuǎn)向響應(yīng)的處理程序,相應(yīng)指示燈的點(diǎn)亮?xí)r間是增加還是減少,是增加(或減少)1還是增加(或減少)10,其中設(shè)置按鍵使用外部中斷0。檢測(cè)p3.2端口,判斷是否有鍵按下,如果有鍵按下,則進(jìn)行延時(shí)去抖動(dòng)并將設(shè)置鍵標(biāo)志位flag加一,根據(jù)flag的值,轉(zhuǎn)相應(yīng)鍵處理子程序。按鍵處理程序模塊流程圖如圖十
30、八所示:圖十八 按鍵處理程序模塊流程圖5.3.7定時(shí)器0和定時(shí)器1中斷模塊在程序初始化的時(shí)候兩個(gè)定時(shí)器均工作于定時(shí)模式,定時(shí)器1主要完成長(zhǎng)按鍵加十和減十的功能,定時(shí)器0則只要完成數(shù)碼管動(dòng)態(tài)顯示時(shí)間間隔的定時(shí)功能。平時(shí)工作時(shí),只有定時(shí)器0工作,一但外部中斷0觸發(fā),則激活定時(shí)器1,開始設(shè)置初始化,當(dāng)進(jìn)中斷0次數(shù)標(biāo)志位flag滿5次時(shí),退出設(shè)置模式,進(jìn)入倒計(jì)時(shí)模式。定時(shí)器0主要通過計(jì)數(shù)產(chǎn)生1秒的定時(shí)時(shí)間,使數(shù)碼管按照每秒減1的倒計(jì)時(shí)。定時(shí)器0中斷模塊的程序流程圖如十九所示:圖十九 定時(shí)器0中斷模塊程序流程圖6、系統(tǒng)測(cè)試系統(tǒng)調(diào)試分為硬件調(diào)試和軟件調(diào)試,分別用于檢測(cè)硬件和軟件是否能正常工作。由于硬件采用
31、模塊化設(shè)計(jì),所以調(diào)試的時(shí)候只需要調(diào)試各自的模塊即可,最后連在一起調(diào)試整個(gè)系統(tǒng)。軟件由于采用子函數(shù)模塊調(diào)用實(shí)現(xiàn),所以調(diào)試的時(shí)候采用子函數(shù)單獨(dú)調(diào)試,最后用keil軟件強(qiáng)大的仿真調(diào)試功能來結(jié)合硬件聯(lián)機(jī)調(diào)試。本系統(tǒng)軟硬件的設(shè)計(jì)完成后先經(jīng)過仿真調(diào)試,才進(jìn)行具體的硬件焊接部分,這樣能避免誤操作或設(shè)計(jì)不合理而帶來開發(fā)成本的不必要的提高,而且還能提高系統(tǒng)開發(fā)的效率。6.1硬件調(diào)試6.1.1電源模塊調(diào)試用萬(wàn)用表檢測(cè)電源模塊是否完整,若完整,把相應(yīng)的元件焊上,并用萬(wàn)用表檢測(cè)開關(guān)兩端是否輸出5v穩(wěn)壓直流電源。如果輸出的時(shí)12v的交流電,則檢測(cè)穩(wěn)壓芯片是否正常工作;如果得到220v的交流電,則檢測(cè)變壓器是否正常工作;
32、如果都正常工作,則說明電源模塊正常工作。硬件電源模塊如圖二十所示:圖二十 硬件電源模塊6.1.2單片機(jī)最小系統(tǒng)模塊調(diào)試首先確定此模塊的線路是否聯(lián)通;如果檢測(cè)到單片機(jī)的晶振不起振,檢測(cè)是否虛焊或是晶振已壞;檢測(cè)單片機(jī)的地線是否連通。檢查是否可以正常工作。例如將單片機(jī)的某個(gè)引腳接一個(gè)的指示燈,然后使此引腳輸出高低電平,檢查指示燈是否亮滅,檢測(cè)電源到單片機(jī)的線路是否短路或是虛焊。單片機(jī)最小系統(tǒng)擴(kuò)展圖(紅綠燈控制器系統(tǒng)硬件圖)如圖二十一所示:圖二十一 單片機(jī)最小系統(tǒng)擴(kuò)展圖(紅綠燈控制器系統(tǒng)硬件圖)6.1.3 max232下載模塊檢測(cè)用萬(wàn)用表檢測(cè)電路,看電源線、地線是否完整,然后按照原理圖焊接。打開st
33、c-isp軟件,設(shè)置好后,先下載一個(gè)讓單片機(jī)的所有引腳均拉低的程序,看是否能下載。如果軟件提示下載失敗,檢測(cè)串口是否連接好,rxd、txd是否和單片機(jī)連接好;如果提示下載成功,則檢測(cè)單片機(jī)的引腳是否拉低,否則的話檢測(cè)程序是否正確。6.1.4 紅綠燈顯示檢測(cè)把紅黃綠燈按照原理圖焊接后,若燈不亮,檢測(cè)上拉電阻是否接到電源上;如果已連接,則檢測(cè)各自引腳是否虛焊。紅綠燈檢測(cè)程序在附錄里面(第42頁(yè))。6.1.5 數(shù)碼管顯示檢測(cè)按照原理圖焊接好元件,然后燒寫一個(gè)讓數(shù)碼管從0顯示到9的程序。如果數(shù)碼管不顯示,則檢測(cè)數(shù)碼管的選通端是否虛焊;如果數(shù)碼管顯示不全,則檢測(cè)數(shù)碼管的數(shù)據(jù)口是否鏈接正確。將串口的和電路
34、板上的接口連接,將寫好的測(cè)試程序刷寫到芯片內(nèi),開電源即可測(cè)試。數(shù)碼管顯示模塊程序在附錄里面(第43頁(yè))。6.2整體電路測(cè)系統(tǒng)上電,燒進(jìn)程序即可開始測(cè)試,觀測(cè)一個(gè)周期的顯示狀態(tài)是否正常,同時(shí)觀察倒計(jì)的計(jì)數(shù)是否正常。對(duì)程序進(jìn)行調(diào)試、仿真后,再進(jìn)行焊接,確保焊接點(diǎn)無(wú)連接、短路等現(xiàn)象后,燒入程序,接著對(duì)設(shè)計(jì)進(jìn)行調(diào)試,對(duì)照實(shí)驗(yàn)要求進(jìn)行幾個(gè)功能的調(diào)試。整體電路檢測(cè)如圖二十二所示(電路圖正在調(diào)試南北綠燈的通行時(shí)間):圖二十二 整體電路檢測(cè)圖6.3軟件調(diào)試程序的編寫采用的是c語(yǔ)言,用c語(yǔ)言設(shè)計(jì)主要優(yōu)點(diǎn)是編程比較簡(jiǎn)單,c語(yǔ)言程序生成代碼質(zhì)量高,程序執(zhí)行效率高,并且適用范圍大,可移植性好 。具體程序見附錄。7、結(jié)
35、論本次單片機(jī)課程設(shè)計(jì)的紅綠燈控制器結(jié)構(gòu)簡(jiǎn)單,操作方便,對(duì)優(yōu)化城市交通具有一定的意義。本設(shè)計(jì)將各任務(wù)進(jìn)行細(xì)分包裝,使各任務(wù)保持相對(duì)獨(dú)立;能有效改善程序結(jié)構(gòu),便于模塊化處理,使程序的可讀性、可維護(hù)性和可移植性都得到進(jìn)一步的提高。由于使用的是單片機(jī)作為核心的控制元件,使得電路的可靠性比較高,功能也比較強(qiáng)大而且可以隨時(shí)的更新系統(tǒng),進(jìn)行不同狀態(tài)的組合。參考文獻(xiàn)1劉文濤.單片機(jī)應(yīng)用開發(fā)實(shí)例.北京:清華大學(xué)出版社,2005年9月.191132周寶善.經(jīng)典電子設(shè)計(jì)與實(shí)踐diy.北京:人民郵電出版社,2008年8月.78,6192 3 寧武 唐曉宇 閆曉金 編著 電子設(shè)計(jì)競(jìng)賽技能指導(dǎo) 電子工業(yè)出版社4 胡偉、季
36、曉衡.單片機(jī)c程序設(shè)計(jì)及應(yīng)用,人民郵電出版社,2003年7月.671355 童詩(shī)白,華成英.模擬電子技術(shù)基礎(chǔ).北京:高等教育出版社,2001年1月.5015506 張靖武, 周靈彬單片機(jī)原理應(yīng)用與proteus仿真電子工業(yè)出版社2008年7 張超琦,鐘明哲單片機(jī)原理及實(shí)例.實(shí)踐篇上海交通大學(xué)出版社2007年8潘超群?jiǎn)纹瑱C(jī)控制技術(shù)在通信中的應(yīng)用:mcs-51電子工業(yè)出版社2008年9陳濤單片機(jī)原理及c51程序設(shè)計(jì)機(jī)械工業(yè)出版社2008年附 錄#include<reg52.h>#define uchar unsigned char#define uint unsigned int/*參
37、數(shù)初始化*uchar count=0,count2=0; /定時(shí)器0,定時(shí)器1的計(jì)數(shù)初值uchar green_ns=60,green_ew=30,red_ns=34,red_ew=64,yellow_ns=4,yellow_ew=4;/南北綠燈亮60 東西綠燈30 南北紅燈34 東西紅燈64 南北黃燈4 東西黃燈4uchar snorth=60,ewest=64; /上電后南北綠燈亮60秒,東西紅燈亮64秒uchar ding_ns=0,ding_ew=0; /南北狀態(tài)轉(zhuǎn)換標(biāo)志位,東西狀態(tài)轉(zhuǎn)換標(biāo)志位uchar flag=0,flag2=0; /設(shè)置鍵按下次數(shù)的標(biāo)志位,長(zhǎng)按鍵的標(biāo)志位/*引腳定
38、義*sbit wela=p20; /鎖存器位選sbit dula=p21; /鎖存器位選sbit ns_r=p22; /南北發(fā)光二極管sbit ns_y=p23;sbit ns_g=p24; sbit ew_r=p25; /東西發(fā)光二極管sbit ew_y=p26;sbit ew_g=p27; sbit set=p32; /按鍵 設(shè)置鍵 加1鍵 減1鍵sbit up=p34;sbit down=p35;/*函數(shù)聲明部分*void delay(uint z);void inital();void display(uchar s);void display_ew(uchar w) ;void di
39、splay_ns(uchar r);void turnkey();void show();/*共陽(yáng)數(shù)碼管段碼*unsigned char code seg710= 0xc0,/*0*/ 0xf9,/*1*/ 0xa4,/*2*/ 0xb0,/*3*/ 0x99,/*4*/ 0x92,/*5*/ 0x82,/*6*/ 0xf8,/*7*/ 0x80,/*8*/ 0x90,/*9*/ ; /*軟件延時(shí)函數(shù) 延時(shí)1毫秒*void delay(uint z) uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);/*初始化函數(shù)*void inital() we
40、la=0; /鎖存器初始化dula=0;tmod = 0x11; /計(jì)數(shù)器0,1工作在方式1,數(shù)值大小16位,定時(shí)時(shí)間=12*(65536-x)/f x為初值,f為時(shí)鐘頻率th0 = 0xd8; /定時(shí)器0高8位tl0 = 0xf0; /定時(shí)器0低8位ea = 1; /開總中斷et0 = 1; /定時(shí)器0中斷允許 tr0=1; /定時(shí)器0開始計(jì)時(shí)th1=0xd8; /定時(shí)器1高8位tl1=0xf0; /定時(shí)器1低8位et1 = 1; /定時(shí)器1中斷允許ex0=1; /外部中斷0允許it0=0; /外部中斷0電平觸發(fā)ns_r=1; /南北發(fā)光二極管初始化ns_g=0;ns_y=1;ew_r=0;
41、 /東西發(fā)光二極管初始化ew_g=1;ew_y=1;/*數(shù)碼管顯示函數(shù)*void display(uchar s) p1=seg7s;/*數(shù)碼管顯示東西方向數(shù)字*void display_ew(uchar w) uchar x,y,i=0;x=w%10; /個(gè)位y=w/10; /十位dula=1;display(x);dula=0; p1=0x00;wela=1;p1=0x04;wela=0;delay(5); dula=1;display(y); dula=0; p1=0x00;wela=1;p1=0x08;wela=0;delay(5);/*數(shù)碼管顯示南北方向數(shù)字*void display
42、_ns(uchar r) uchar x,y,i=0;x=r%10; /個(gè)位y=r/10; /十位 dula=1;display(x);dula=0; p1=0x00;wela=1;p1=0x01;wela=0;delay(5); dula=1;display(y);dula=0; p1=0x00;wela=1;p1=0x02;wela=0;delay(5);/ *鍵盤掃描函數(shù)*void turnkey() flag2=0; /掃描之前加10減10標(biāo)志位清零if(!up)delay(10); /按鍵消抖 延時(shí)10msif(!up) tr1=1; /定時(shí)器1開始1s定時(shí),用于鍵盤掃描的定時(shí)數(shù)值加
43、10while(!up)switch(flag)case 0:break;case 1: display_ns(green_ns); ns_g=0;break;case 2:display_ns(yellow_ns); ns_y=0;break;case 3:display_ew(green_ew); ew_g=0;break;case 4:display_ew(yellow_ew); ew_y=0;break; while(!up); /等待按鍵結(jié)束 delay(10); /按鍵消抖 延時(shí)10ms while(!up); tr1=0; /定時(shí)器1結(jié)束 if(count2>=100) f
44、lag2=1;count2=0; switch(flag2%3) case 0:break;case 1:switch(flag) case 0:break; case 1:green_ns+=9;if(green_ns>99)green_ns=0;break;case 2:break;case 3:green_ew+=9;if(green_ew>99)green_ew=0;break;case 4:break; break;case 2: switch(flag)case 0:break;case 1:green_ns-=9;if(green_ns<=0)green_ns=99;break;case 2:break;case 3:green_ew-=9;if(green_ew<=0)green_ew=99;break;case 4:break; break; switch(flag) /短按鍵加一 case 0:break;case 1: /南北綠燈加一green_ns+; if(green_ns=100)green_ns=0;red_ew
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年防汛工程砂石料采購(gòu)及環(huán)保驗(yàn)收服務(wù)協(xié)議3篇
- 2025年度存量房屋承購(gòu)經(jīng)紀(jì)服務(wù)合同信用評(píng)價(jià)體系4篇
- 2025年度個(gè)人二手房交易房產(chǎn)過戶合同2篇
- 2025年度個(gè)人購(gòu)房合同(含房屋改造許可)2篇
- 2025年度智能化辦公場(chǎng)地出租租賃合同示例4篇
- 2025年度二零二五泥工游樂設(shè)施租賃合作協(xié)議4篇
- 二零二五年度新能源車輛購(gòu)買者免責(zé)協(xié)議書范本3篇
- 并行端口通信協(xié)議-深度研究
- 心理咨詢勝任力要素分析-深度研究
- 2025版高端定制門窗設(shè)計(jì)及安裝服務(wù)合同3篇
- 五年級(jí)上冊(cè)寒假作業(yè)答案(人教版)
- 2025年山東浪潮集團(tuán)限公司招聘25人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年財(cái)政部會(huì)計(jì)法律法規(guī)答題活動(dòng)題目及答案一
- 2025年江西省港口集團(tuán)招聘筆試參考題庫(kù)含答案解析
- (2024年)中國(guó)傳統(tǒng)文化介紹課件
- 液化氣安全檢查及整改方案
- 《冠心病》課件(完整版)
- 2024年云網(wǎng)安全應(yīng)知應(yīng)會(huì)考試題庫(kù)
- 公園保潔服務(wù)投標(biāo)方案
- 光伏電站項(xiàng)目合作開發(fā)合同協(xié)議書三方版
- 2024年秋季新滬教版九年級(jí)上冊(cè)化學(xué)課件 第2章 空氣與水資源第1節(jié) 空氣的組成
評(píng)論
0/150
提交評(píng)論