2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  路燈控制系統(tǒng)</b></p><p>  摘要:本系統(tǒng)以89S52單片機為控制核心,采用單片機內(nèi)的定時/數(shù)器為實現(xiàn)時鐘計時,另外采用集成運算放大器和D/A轉(zhuǎn)換器構成具有深度負反饋的數(shù)字可控直流電流源,用于調(diào)節(jié)LED 燈的亮度,系統(tǒng)由單片機控制,具有鍵盤設定,步進,液晶顯示時間設定值和LED燈的功率,實現(xiàn)了按題目要求的兩燈開關燈控制,以及10mA-600mA之間任

2、意設定和步進。</p><p>  關鍵詞:可控電流源,路燈控制器,LED </p><p>  abstract:The system uses microcontroller of 89S52, using the timer/clock timing of the microcontroller for the realization of the number of device

3、s, while using an integrated operational amplifier and D/A converter which has a deep negative feedback form the number of controllable DC current source, for regulating the LED lamp brightness. the system controlled by

4、microcontroller with a keyboard, step Motor, liquid crystal display time settings and power LED lights to achieve the required two la</p><p>  Key word:controllable current source,lampcontrolsystem,LED</p

5、><p><b>  1 引言</b></p><p>  1.1 基于89S52單片機的路燈控制系統(tǒng)的研究</p><p>  當今單片機的發(fā)展相當迅速,產(chǎn)品更新?lián)Q代周期也越來越長,其結構不斷改進,功能日益增強,性能價格比越來越高。目前全世界單片機制造商有很多家,產(chǎn)品有很多系列。它們在我國均得到了廣泛使用。</p><p>

6、;  路燈控制系統(tǒng)是生產(chǎn)生活和城市道路建設中必備的系統(tǒng)之一。根據(jù)設計題目要求,基于單片機為中心,通過AT89S52單片機實現(xiàn)對路燈定時開關及時間顯示的控制。紅外傳感器部分電路通過可根據(jù)外界環(huán)境明暗的變化,能夠自動進行開燈和關燈。紅外傳感器可以接收物體在一定范圍內(nèi)發(fā)出的紅外線,因此,將紅外傳感器置于適當位置,便可實現(xiàn)燈依次點亮的控制。通過對AT89S52單片機進行編程,使用單片機的兩個端口分別對兩只路燈進行控制,并設定不同的開燈和關燈時間

7、。路燈故障時,支路控制器產(chǎn)生低電平,送入AT89S52單片機,產(chǎn)生報警信號。</p><p><b>  1.2 紅外傳感器</b></p><p>  紅外技術發(fā)展到現(xiàn)在,已經(jīng)為大家所熟知,這種技術已經(jīng)在現(xiàn)代科技、國防和工農(nóng)業(yè)等領域獲得了廣泛的應用。紅外傳感系統(tǒng)是用紅外線為介質(zhì)的測量系統(tǒng),按照功能能夠分成五類:(1)輻射計,用于輻射和光譜測量;(2)搜索和跟蹤系統(tǒng),

8、用于搜索和跟蹤紅外目標,確定其空間位置并對它的運動進行跟蹤;(3)熱成像系統(tǒng),可產(chǎn)生整個目標紅外輻射的分布圖像;(4)紅外測距和通信系統(tǒng);(5)混合系統(tǒng),是指以上各類系統(tǒng)中的兩個或者多個的組合。 </p><p><b>  2 系統(tǒng)方案論證</b></p><p>  2.1方案一:采用單片機控制,PWM調(diào)節(jié)路燈亮度,需要較貴的PWM模塊,控制較方便。</p

9、><p>  2.2方案二:采用單片機控制,運放負反饋和場效應管實現(xiàn)路燈亮度調(diào)節(jié)。其控制原理簡單,且價格便宜容易實現(xiàn)。其控制電路簡單,可線性調(diào)節(jié),硬件電路簡單,調(diào)試方便,電路工作的可靠性高。</p><p>  綜上所述,我選用第二種方案。</p><p><b>  系統(tǒng)框圖如圖1:</b></p><p><b&g

10、t;  圖1:系統(tǒng)框圖</b></p><p>  本路燈控制系統(tǒng)以單片機89S52為核心,配上周圍的信息采集系統(tǒng)、路燈控制系統(tǒng)、檢測電路系統(tǒng)、通信系統(tǒng)和顯示系統(tǒng)??梢詫粢黄鹂刂疲部梢詫蝹€燈進行控制,控制功能包括開關燈時間,燈的亮度,還可以根據(jù)環(huán)境來進行對燈的控制。</p><p>  采集系統(tǒng)包括以下幾部分電路:</p><p> ?、? 單片機

11、的基本電路。此部分電路主要是單片機最小系統(tǒng)的最基本的電路之一,也是本系統(tǒng)的核心電路,其余電路都是以該部分電路展開的,它負責整個系統(tǒng)數(shù)據(jù)的處理和協(xié)調(diào)工作。</p><p> ?、? 路燈控制電路。該電路實現(xiàn)我們設置的控制,讓路燈在規(guī)定的時間和方式開關。</p><p> ?、? 路燈亮度調(diào)節(jié)電路。該電路由一個D/A芯片組成,負責調(diào)節(jié)路燈的亮度。</p><p> ?、?/p>

12、. LCD顯示電路。該電路主要是提供人能夠識別的信息,即讓人能夠知道系統(tǒng)工作的狀態(tài)。</p><p> ?、?鍵盤輸入電路。該電路是提供一個人機交流的平臺,通過它人能夠?qū)ο到y(tǒng)進行基本的設置,以達到控制目的。</p><p> ?、? 聲光報警電路。該電路是本設計的最終目的,即在溫度超過規(guī)定范圍時,提醒操作者控制環(huán)境的溫度,以避免不必要的損失。</p><p> ?、?/p>

13、晶振時序電路。該電路主要是為單片機提供一個基準的時序,讓單片機能夠按部就班地工作。</p><p> ?、鄦纹瑱C復位電路。該電路能夠在系統(tǒng)上電的時候自動復位,使整個系統(tǒng)在上電時,能夠從程序的第一行開始執(zhí)行。該電路還有強制復位的功能,能夠在系統(tǒng)出現(xiàn)死機情況的時候,用人工的方式時單片機從程序的第一行開始執(zhí)行。</p><p>  3 各電路設計和論證</p><p>

14、  3.1電源電路設計和論證</p><p>  3.1.1方案一:采用獨立的穩(wěn)壓電源。</p><p>  采用獨立的穩(wěn)壓電源供電,電源的穩(wěn)壓性能好,直流輸出特性好,系統(tǒng)可以穩(wěn)定工作,但是獨立穩(wěn)壓電源體積大,價格昂貴,不易攜帶,只適合系統(tǒng)在實驗室調(diào)試階段使用,即為系統(tǒng)調(diào)試提供一個通用的電源平臺。</p><p>  3.1.2方案二:采用四只干電池提供電源。<

15、;/p><p>  該方案的優(yōu)點是系統(tǒng)簡明扼要,成本低;缺點是輸出功率不高,只能勉強推動單片機,適合小電流負載。該方案中需要能提供LED電源,干電池無法提供這么大的電流。而且在整個系統(tǒng)工作的過程中,電壓會隨著時間的推移而不斷降低,進而造成系統(tǒng)出現(xiàn)死機等情況。 </p><p>  3.1.3方案三:采用變壓器整流的形式提供電源。</p><p>  該電源的電路結構簡單

16、,成本較低,輸出功率可以在選擇變壓器的時候確定,只要變壓器的功率合適,完全可以使整個電路穩(wěn)定工作。該方案對于本系統(tǒng)來說,兼具方案一和方案二的優(yōu)點。</p><p>  為使系統(tǒng)能夠穩(wěn)定工作,必須有可靠電源,在此基礎上綜合考慮降低成本、硬件調(diào)試簡單和設計維修方便等因素,選擇第三種方案。電源方案的具體電路如圖2所示。</p><p><b>  圖2:電源電路</b>&l

17、t;/p><p>  我們的課題中需要+5V電壓給控制電路供電,需要+12V和-12V給運放和恒流源供電。所以我們采用了集成穩(wěn)壓電路LM7812和LM7912提供+12V和-12V。然后在+12V輸出取電到LM7805產(chǎn)生+5V電壓。經(jīng)過試驗該電路能很好的提供給我們需要的電壓源。</p><p>  我們的設計中還包括調(diào)光電路,調(diào)光電路是由恒流源組成。我們的恒流源由ADC0832和負反饋電路組

18、成,電流值通過ADC0832轉(zhuǎn)換成電壓,再利用運放的負反饋作用,把電壓加到電阻R31、R32,從而控制流過場效應管的電流,實現(xiàn)橫流的作用。電流可以通過調(diào)節(jié)ADC0832的電壓值來調(diào)節(jié)。原理圖見下圖:</p><p>  3.2路燈控制電路的設計</p><p>  3.2.1 方案一 采用晶閘管電子開關控制LED燈的開關</p><p>  晶閘管電子開關充分利用了

19、電壓過零觸發(fā)、電流過零切除、開關無觸點、響應速度快等晶閘管特性,可使電容上的電壓從零快速上升到額定工作電壓。而在斷開時,晶閘管上的電流過零切除.可實現(xiàn)電容器投入無涌流、切除無過壓、投切無電弧的快速動態(tài)補償功能,故能較好地解決電容器投切時產(chǎn)生的暫態(tài)沖擊問題。但是,晶閘管在導通狀態(tài)下存在較大的管壓降(1 V左右),故在工作時,要考慮消耗功率和其產(chǎn)生和散發(fā)的大量熱量,而這會使運行和維護的成本加大。</p><p>  

20、3.2.2 方案二 采用繼電器控制LED燈的開關</p><p>  電磁式繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產(chǎn)生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)吸合

21、。這樣吸合、釋放,從而達到了在電路中的導通、切斷的目的。</p><p>  繼電器不僅實現(xiàn)了開關作用,還能做到電氣隔離,耗電少。故我們選用方案二。</p><p>  繼電器我們采用OMEN 的 DC5 -G5V-1</p><p>  圖3:DC5 -G5V-1的引腳圖(線圈無極性)</p><p>  它的額定負載在DC24時為 1A,

22、機械壽命達到500萬次(開關頻率36000次/h),動作時間在5ms以下,消耗功率僅150mW,完全滿足我們的要求。由于繼電器線圈需要30mA的電流驅(qū)動,因此我們采用74LS244來驅(qū)動繼電器。74LS244最大能夠提供46mA的電流,輸入和TTL電平兼容。路燈控制原理電路見下圖:</p><p><b>  圖4:路燈控制電路</b></p><p>  3.3檢測

23、電路設計和論證</p><p>  3.3.1 方案一 超聲波檢測</p><p>  機械振動在介質(zhì)中的傳播過程叫做波,人耳能夠感受到頻率高于16赫茲,低于20000赫茲的彈性波,所以在這個頻率范圍內(nèi)的彈性波又叫聲波。頻率小于10赫茲的彈性波又叫次聲波,頻率高于20000赫茲的彈性波叫做超聲波。次聲波和超聲波人耳都不能感受。</p><p>  超聲波測距作為一種

24、非接觸性的檢測方法,因其結構簡單緊湊、可靠性高、價格低廉、實時性強等優(yōu)點,近年來已經(jīng)得到了廣泛應用,如液位測量,修路過程中路面平整檢測,汽車倒車雷達,機器人輔助視覺識別系統(tǒng)等。但因超聲波在空氣中傳播時受到諸如環(huán)境溫度、濕度、風速等影響,傳統(tǒng)的超聲波測距系統(tǒng)精度普遍較低。由于超聲波測距的不穩(wěn)定,我們需要復雜的超聲波處理電路,處理程序算法也比較復雜,我們不采用。</p><p>  3.3.1 方案二 紅外傳感器檢測

25、</p><p>  紅外線是介于可見光和微波之間的一種電磁波,因此,它不僅具有可見光直線傳播、反射、折射等特性,還具有微波的某些特性,如較強的穿透能力和能貫穿某些不透明物質(zhì)等。紅外傳感器包括紅外發(fā)射器件和紅外接收器件。自然界的所有物體只要溫度高于絕對零度都會輻射紅外線,因而,紅外傳感器須具有更強的發(fā)射和接收能力。</p><p>  紅外傳感器的的測距基本原理為發(fā)光管發(fā)出紅外光,光敏接收

26、管接收前方物體反射光,據(jù)此判斷前方是否有障礙物。根據(jù)發(fā)射光的強弱可以判斷物體的距離,它的原理是接收管接收的光強隨反射物體的距離而變化的,距離近則反射光強,距離遠則反射光弱。</p><p>  目前,使用較多的一種傳感器-紅外光電開關,它的發(fā)射頻率一般為38 kHz左右,探測距離一般比較短,通常被用作近距離障礙目標的識別。本系統(tǒng)采用的即為此種傳感器。</p><p><b>  

27、檢測電路見下圖: </b></p><p>  圖5:障礙物檢測電路 圖6:光線檢測電路</p><p>  3.4 按鍵電路設計和論證</p><p>  3.4.1 方案一 4×4矩陣式鍵盤。</p><p>  此方案需要占用8個I/O口,采用行列掃描的方式工作,即每個

28、程序的執(zhí)行周期要對鍵盤進行至少一次的掃描,這就占用了系統(tǒng)的時間,增長了程序的執(zhí)行周期,變相的減緩了溫度的讀取速度,本系統(tǒng)需要的I/O口比較多,該方案占用的資源過多,只能放棄。</p><p>  3.4.2 方案二 采用掃描方式工作的獨立式按鍵。</p><p>  對于獨立式按鍵來說,如果設置過多按鍵,顯然會占用較多I/O口,給布線帶來不便,此方案適用于按鍵較少的情況。但是該方案在修改告

29、警溫度時的靈敏度不夠,需要在程序中不斷的掃描鍵盤的輸入情況,才能彌補靈敏度不高的缺陷,但是,這就造成了程序的冗余,程序的執(zhí)行周期變長,執(zhí)行效率降低,浪費CPU資源。</p><p>  3.4.2 方案三 采用編碼式鍵盤</p><p>  該方案電路結構簡單,需要的接口少,編碼式鍵盤芯片里設計了鍵盤防抖電路,使鍵盤更可靠。故我們采用該方案。</p><p>  

30、ZLG7289B 是廣州周立功單片機發(fā)展有限公司自行設計的數(shù)碼管顯示驅(qū)動及鍵盤掃描管理芯片,可直接驅(qū)動 8 位共陰式數(shù)碼管(或 64 只獨立 LED) ,同時還可以掃描管理多達64 只按鍵。ZLG7289B 內(nèi)部含有顯示譯碼器,可直接接受 BCD 碼或 16 進制碼,并同時具有 2 種譯碼方式。此外,還具有多種控制指令,如消隱﹑閃爍﹑左移﹑右移﹑段尋址等。ZLG7289B采用 SPI 串行總線與微控制器接口,僅占用少數(shù)幾根 I/O口線。

31、利用片選信號,多片 ZLG7289B 還可以并接在一起使用,能夠方便地實現(xiàn)多于 8 位的顯示或多于 64只按鍵的應用。</p><p>  圖7:ZLG7289引腳圖</p><p>  按鍵電路原理圖如下圖</p><p>  圖8:按鍵電路原理圖</p><p>  該方案中我們只需要16個案件 ,所以只取前16個編碼的按鍵,他們的按鍵編

32、碼是從0x00到0x0F。</p><p><b>  表一:按鍵定義</b></p><p>  3.5顯示電路的設計論證</p><p>  3.5.1方案一:采用液晶顯示屏和通用矩陣鍵盤。</p><p>  液晶顯示屏(LCD)具有功耗小、輕薄短小無輻射危險,平面直角顯示以及影象穩(wěn)定不閃爍,可視面積大,畫面效果好

33、,抗干擾能力強等特點。</p><p>  3.5.2方案二:采用LED七段數(shù)碼管顯示。</p><p>  雖然數(shù)碼管具有低損耗、低壓、壽命長、價格便宜、耐老化,對外界環(huán)境要求較低等特點,但是數(shù)碼管硬件接線麻煩,占用的I/O口比LCD要多,浪費資源,而且走線繁瑣,不利于系統(tǒng)的擴展。</p><p>  綜合考慮顯示電路的顯示和抗干擾的性能,選用方案一。</p

34、><p>  因為內(nèi)藏KS0108B及其兼容控制驅(qū)動器的液晶模塊的接口時序為68時序,所以用8031的總線方式控制管理,就需要經(jīng)過一些簡單的時序改造。其基本接線圖見圖8。</p><p>  圖9:12864顯示電路</p><p>  該類液晶顯示模塊均是使用KS0108B及其兼容控制驅(qū)動器(例如HD61202)作為列驅(qū)動器,同時使用KS0107B及其兼容驅(qū)動器(例如

35、HD61203)作為行驅(qū)動器的液晶模塊。由于KS0107B (或HD61203)不與MPU發(fā)生聯(lián)系,只要提供電源就能產(chǎn)生行驅(qū)動信號和各種同步信號,比較簡單,在此就不作介紹。下面主要介紹一下MGLS-12864模塊的邏輯電路圖。</p><p>  圖10是VPG12864、QH2001的邏輯電路圖,從圖中可看出它們增加了偏壓電源發(fā)生器,該發(fā)生器自帶溫度補償電路,所以使用中無須考慮液晶驅(qū)動電壓的實現(xiàn)和溫度變化造成的

36、對比度的變化。</p><p>  圖10: VPG12864、QH2001的邏輯電路圖</p><p>  由圖中可以看出,/CSA,/CSB選通組合信號為/CSA,/CSB=00選通KS0108B(1);/CSA,/CSB=01選通KS0108B(2);/CSA,/CSB=10選通KS0108B(3);/CSA,/CSB=11時禁止選通,總線處于高阻,如表二。</p>

37、<p><b>  表二:片選信號組合</b></p><p>  對于MGLS-12864,只要供給GND、Vcc和V0即可,KS0108B(或HD61202)和KS0107B(或HD61203)所需的電源將由模塊內(nèi)部電路在Vcc和V0、GND的作用下產(chǎn)生。</p><p>  KS0108B及其兼容控制驅(qū)動器的引腳功能</p><p&

38、gt;  表三:與微處理器的接口信號</p><p>  說明:對應模塊接口為D/I</p><p>  3.6 報警電路的設計論證</p><p>  本設計采用LED作為光報警器件,蜂鳴器作為聲報警器件。在光報警硬件設計方面,本系統(tǒng)只有在溫度正常時,蜂鳴器沒有聲響發(fā)出。本系統(tǒng)采用聲光報警的原因是:</p><p>  一:從聲、光兩方面

39、著手,刺激人的視覺和聽覺。這從感官方面來講,提供了雙保險設計。</p><p>  二:在電路設計方面來講,當聲或是光中的一方出現(xiàn)問題時,另一方面還可以正常報警,從硬件上提供了雙保險設計。具體電路如圖13所示。</p><p>  圖11:聲光報警電路</p><p>  3.7通信電路的設計</p><p>  該電路主要提供和上位機通信,

40、還可以和無線模塊連接實現(xiàn)遠距離的無線控制。由于AT89S52芯片帶有串行通信接口,它是一個能進行全雙工異步通信或同步移位寄存器,具有4種工作方式的可編程接口。其幀格式可為8位、10位和11位,并可以設置多種不同的波特率。通過端子RXD(P3.0串行數(shù)據(jù)接收端子)和端子TXD(P3.1串行數(shù)據(jù)發(fā)送端子)與外界進行通信。AT89S52單片機內(nèi)有發(fā)送緩沖寄存器SBUF、發(fā)送控制器、接收緩沖寄存器SBUF、接收控制寄存器、移位寄存器、和中斷等部

41、分組成。因此我們只需要利用MAX3232實現(xiàn)TTL電壓和RS-232C電壓轉(zhuǎn)化就行了。接口原理圖見下圖:</p><p>  3.8 時序電路的設計</p><p>  3.8.1方案一:用單極晶體管觸發(fā)電路提供時序脈沖。</p><p>  此方案是用LC震蕩回路產(chǎn)生脈沖,然后對脈沖進行整形,這種方法得到的脈沖頻率難以準確,而且電路難以調(diào)試。</p>

42、<p>  3.8.2方案二:采用石英晶體振蕩器。</p><p>  石英晶體振蕩器頻率準確,外圍元件少,易于調(diào)試。電路搭建容易,維修簡單方便,價格低廉。從本系統(tǒng)的頻率精度要求和電路的實用性考慮,采用方案二。電路如圖12所示。</p><p><b>  圖12:時序電路</b></p><p>  3.9 復位電路的設計&l

43、t;/p><p>  3.9.1方案一:采用上電復位電路。</p><p>  該方案電路簡單,可靠性高,但是只有當系統(tǒng)上電時,自動復位。而當系統(tǒng)出現(xiàn)死機情況的時候,要把整個系統(tǒng)斷電。</p><p>  3.9.2方案二:采用上電復位和手動復位相結合。</p><p>  該方案彌補了方案一的不足。具體電路如圖13所示。本電路中電容C1和C2是

44、起濾波作用的電容,這兩個電容濾波的目的有兩個:</p><p>  一:為整個系統(tǒng)提供一個穩(wěn)定而平緩的電壓。</p><p>  二:提高復位的可靠性。</p><p><b>  圖13:復位電路</b></p><p>  在本設計中,采用AT89S52作為處理器,是因為AT89S52才有足夠的資源供從機使用。AT8

45、9S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程 Flash 存儲器。使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,

46、32位I/O口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。AT89S52的引腳圖如圖14。</p><

47、;p>  圖14:AT89S52DIP封裝引腳圖</p><p>  AT89S52引腳功能如下:</p><p>  VCC:正電源輸入端。電壓范圍為+4.5V~+5.5V。</p><p><b>  GND:地。</b></p><p>  P0口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)

48、動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和數(shù)據(jù)存儲器時,P0口也被作為低8位地址/數(shù)據(jù)復用。在這種模式下,P0具有內(nèi)部上拉電阻。在 flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。</p><p>  P1 口:P1 口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅(qū)動4 個TTL邏輯電平。對P1端口寫“1”時

49、,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL) 。此外,P1.0和P1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入(P1.0/T2)和時器/計數(shù)器2的觸發(fā)輸入(P1.1/T2EX) ,具體如下表所示。在flash編程和校驗時,P1口接收低8位地址字節(jié)。</p><p>  P2 口:P2 口是一個具有內(nèi)部上拉電阻的 8 位雙向 I/O 口,P

50、2 輸出緩沖器能驅(qū)動 4 個TTL 邏輯電平。對 P2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器時,P2口送出高八位地址。在這種應用中,P2口使用很強的內(nèi)部上拉發(fā)送 1。在使用8位地址訪問外部數(shù)據(jù)存儲器時,P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一

51、些控制信號。 </p><p>  P3口:P3 口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動4個TTL邏輯電平。對P3端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在flash編程和校驗時,P3口也接收一些控制信號。P3口亦作為AT89S52特殊功能(即第二功能)使用,如表三所示。</p>

52、<p>  表四:AT89S52的P3口的第二功能</p><p><b>  4. 軟件設計</b></p><p>  4.1 采用C語言編程</p><p>  本系統(tǒng)采用C語言編程,因為C語言具有以下特點:</p><p>  1. 簡潔緊湊、靈活方便 </p>&

53、lt;p>  C語言一共只有32個關鍵字,9種控制語句,程序書寫自由,主要用小寫字母表示。它把高級語言的基本結構和語句與低級語言的實用性結合起來。 C 語言可以象匯編語言一樣對位、字節(jié)和地址進行操作, 而這三者是計算機最基本的工作單元。</p><p><b>  2. 運算符豐富</b></p><p>  C的運算符包

54、含的范圍很廣泛,共有種34個運算符。C語言把括號、賦值、強制類型轉(zhuǎn)換等都作為運算符處理。從而使C的運算類型極其豐富表達式類型多樣化,靈活使用各種運算符可以實現(xiàn)在其它高級語言中難以實現(xiàn)的運算。</p><p>  3. 數(shù)據(jù)結構豐富 </p><p>  C的數(shù)據(jù)類型有:整型、實型、字符型、數(shù)組類型、指針類型、結構體類型、共用體類型等。能用來實現(xiàn)各種復雜的數(shù)據(jù)類型的運算。

55、并引入了指針概念,使程序效率更高。另外C語言具有強大的圖形功能, 支持多種顯示器和驅(qū)動器。且計算功能、邏輯判斷功能強大。</p><p>  4. C是結構式語言 </p><p>  結構式語言的顯著特點是代碼及數(shù)據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結構化方式可使程序?qū)哟吻逦? 便于使用、維護以及調(diào)試。C語言是以函數(shù)形式提

56、供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結構化。</p><p>  5. C語法限制不太嚴格,程序設計自由度大 </p><p>  雖然C語言也是強類型語言,但它的語法比較靈活,允許程序編寫者有較大的自由度。 </p><p>  6. C語言允許直接訪問物理地址,可以直接對硬

57、件進行操作 </p><p>  因此既具有高級語言的功能,又具有低級語言的許多功能,能夠象匯編語言一樣對位、字節(jié)和地址進行操作,而這三者是計算機最基本的工作單元,可以用來寫系統(tǒng)軟件。 </p><p>  7. C語言程序生成代碼質(zhì)量高,程序執(zhí)行效率高 </p><p>  一般只比匯編程序生成的目標代碼效率低10~20%。

58、</p><p>  8. C語言適用范圍大,可移植性好 </p><p>  C語言有一個突出的優(yōu)點就是適合于多種操作系統(tǒng), 如DOS、UNIX,也適用于多種機型。同樣也適用于嵌入式系統(tǒng)編程。</p><p><b>  4.2程序流程圖</b></p><p>  4.2.1系統(tǒng)主程序流

59、程圖</p><p>  該設計主要包括路燈控制,鍵盤,液晶顯示,執(zhí)行設置,報警等功能。流程圖見圖15,</p><p><b>  圖15:主流程圖</b></p><p>  4.2.2各子程序流程圖</p><p>  4.2.2.1 按鍵處理流程圖,該部分包括鍵盤中斷和鍵值處理,鍵盤中斷讀取鍵值,鍵值處理根據(jù)當前

60、界面處理按鍵功能。</p><p>  圖16:鍵盤中斷處理流程圖</p><p>  圖17:鍵盤處理流程圖</p><p>  4.2.2.1 執(zhí)行處理子程序,該處理程序包括執(zhí)行模式一和模式二,模式一為固定開關機,模式二根據(jù)環(huán)境和車輛來開關燈。</p><p>  流程圖見執(zhí)行流程圖附件。</p><p>  4.

61、2.2.2界面顯示流程圖。</p><p>  圖18:顯示界面流程圖</p><p>  4.2.2.3 報警處理流程圖。</p><p><b>  圖19:報警流程圖</b></p><p><b>  4.3程序</b></p><p><b>  4.3.

62、1主程序</b></p><p><b>  主程序如下:</b></p><p><b>  main()</b></p><p><b>  {</b></p><p>  MCUinit(); // 初始化</p><p>

63、;<b>  while(1)</b></p><p><b>  {</b></p><p>  Keyregulate(); // 按鍵處理</p><p>  Display(); // 液晶顯示</p><p>  Execute(); // 執(zhí)行設置</p>

64、;<p>  Alarm(); // 報警</p><p><b>  }</b></p><p><b>  }</b></p><p>  4.3.2 各子程序</p><p>  4.3.2.1 按鍵處理子程序</p><p>  該部分包括

65、鍵盤中斷和鍵值處理,鍵盤中斷讀取鍵值,鍵值處理根據(jù)當前界面處理按鍵功能。</p><p>  鍵盤中斷函數(shù) TimerINT() 和鍵值處理函數(shù) Keyregulate() 見附錄一。</p><p>  4.3.2.2 執(zhí)行處理子程序</p><p>  該處理程序包括執(zhí)行模式一和模式二,模式一為固定開關機,模式二根據(jù)環(huán)境和車輛來開關燈。</p>&

66、lt;p>  程序函數(shù)是Execute() ,程序見附錄一。</p><p>  4.3.2.3界面顯示子程序</p><p>  該子程序根據(jù)界面標志winflag判斷顯示界面,顯示界面一共有12種,分別是:</p><p>  enum DisplayInterface </p><p><b>  {</b&g

67、t;</p><p>  winmain ,</p><p>  wincurrentreq ,</p><p>  winsetup ,</p><p>  wincurrentsetup ,</p><p>  winmodelselect ,</p><p&

68、gt;  wintimersetup ,</p><p>  winmodel1 ,</p><p>  winmodel2 ,</p><p>  winmodel1setup ,</p><p>  winmodel2setup ,</p><p>  winlight1setup

69、 ,</p><p>  winlight2setup </p><p><b>  };</b></p><p>  enum DisplayInterface displayinterface; //顯示界面</p><p>  另外顯示還包括提示符和反底色。 他們通過byteflag判斷顯示的位置。<

70、;/p><p>  處理函數(shù)Display()見附錄一。</p><p>  4.3.2.4 報警處理子程序</p><p>  報警子程序檢測LED燈是否壞,如果壞了則報警。流程圖見圖19,函數(shù)名是 Alarm(),程序見附錄一。</p><p>  5.軟硬件系統(tǒng)的調(diào)試</p><p><b>  5.1硬

71、件調(diào)試</b></p><p><b>  1.正確焊接硬件。</b></p><p>  一般來講,焊料不能過少,也不能過多,不能有虛焊,脫焊等現(xiàn)象出現(xiàn)。焊接的時間不能過長,過長會造成焊盤的脫落,絕緣層的燒毀,影響電路的電器性能。焊接時間也不能過短,過短會造成冷焊,虛焊脫焊,等現(xiàn)象。一般以5秒鐘為宜。焊接結束后清理焊點上的殘渣,以免殘渣對焊點產(chǎn)生腐蝕作用

72、,造成電路功能性故障。</p><p>  2.正確安裝硬件,檢查硬件的電氣連接是否可靠。電路是否完整,有無短路、斷路現(xiàn)象存在。</p><p>  3.上電測試硬件,看硬件能否工作。注意,上電前一定要先檢測電源正負級是否短路。加穩(wěn)壓管VD1,VD2可以有效保護LED燈,防止因電流過大二燒壞LED。在調(diào)試時發(fā)現(xiàn)電源線太長會起分壓作用,影響我們的供電電壓。故,在關鍵器件的供電一定要直接接電源

73、輸出端和共地點。</p><p>  4. 測試系統(tǒng)性能,將測得參數(shù)與設計參數(shù)比較,若兩者不符,修改軟件,重復軟硬件調(diào)試的所有步驟,直到兩者相符為止。</p><p><b>  5.2 軟件調(diào)試</b></p><p>  本系統(tǒng)主要是用Keil uVision2程序,來調(diào)試和編譯的。KEILC51標準C編譯器為8051微控制器的軟件開發(fā)提供

74、了C語言環(huán)境,同時保留了匯編代碼高效,快速的特點。C51編譯器的功能不斷增強,使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到uVision2的集成開發(fā)環(huán)境中,這個集成開發(fā)環(huán)境包含:編譯器,匯編器,實時操作系統(tǒng),項目管理器,調(diào)試器。uVision2 IDE可為它們提供單一而靈活的開發(fā)環(huán)境。C51 V7版本是目前最高效、靈活的8051開發(fā)平臺。它可以支持所有8051的衍生產(chǎn)品,也可以支持所有兼容的仿真

75、器,同時支持其它第三 方開發(fā)工具。因此,C51 V7版本無疑是8051開發(fā)用戶的最佳選擇。</p><p>  5.2.1主要調(diào)試步驟如下:</p><p> ?、俅蜷_Keil uVision7程序,新建一個工程并保存。</p><p> ?、谠诔绦蚓庉媴^(qū)編寫程序。</p><p> ?、劬幾g所編寫的程序。若無錯誤,此時在

76、主程序窗口下方會出現(xiàn)提示信息。</p><p> ?、苌煽蓪懭雴纹瑱C的文件。在輸出選項卡中將產(chǎn)生HEX文件選項選中,具體設置如圖所示:</p><p> ?、菰O置完成后,編譯生成HEX文件,此時程序窗口下方會出現(xiàn)提示信息。</p><p> ?、逕龑懗绦颍瑹龑懗绦蛑靶枰惭bPL2030的驅(qū)動程序,因為本設計采用SP180S編程器燒寫系統(tǒng)程序,該編程器是用PL20

77、30進行電平轉(zhuǎn)換后與電腦通信的。安裝好PL2030的驅(qū)動后,連接編程器,在確保連接可靠且正確的情況下,打開與之配套的聯(lián)機軟件WLPRO V2.01,軟件會自動識別編程器。然后在程序窗口中選擇所用的器件。</p><p> ?、呒虞dHEX文件。在窗口中點擊加載,此時會彈出打開對話框,選擇HEX文件的存放路徑。</p><p> ?、酂龑懗绦?。點擊程序窗口的的編程選項,燒寫完成后,程序窗口會出

溫馨提示

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

評論

0/150

提交評論