ARM嵌入式系統(tǒng)交通燈設(shè)計7_第1頁
ARM嵌入式系統(tǒng)交通燈設(shè)計7_第2頁
ARM嵌入式系統(tǒng)交通燈設(shè)計7_第3頁
免費預(yù)覽已結(jié)束,剩余14頁可下載查看

下載本文檔

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

文檔簡介

1、作者:Pan Hongliang僅供個人學(xué)習(xí)嵌入式系統(tǒng)專業(yè):電子信息科學(xué)與技術(shù)學(xué)號:姓名:學(xué)院:基于ARM嵌入式系統(tǒng)地交通燈設(shè)計摘要:隨著移動設(shè)備地流行和發(fā)展,嵌入式系統(tǒng)已經(jīng)成為一個熱點它并不是最近 出現(xiàn)地新技術(shù),只是隨著微電子技術(shù)和計算機技術(shù)地發(fā)展,微控制芯片功能越來越 大,而嵌入微控制芯片地設(shè)備和系統(tǒng)越來越多,從而使得這種技術(shù)越來越引人注目. 它對軟硬件地體積大小、成本、功耗和可靠性都提出了嚴格地要求.嵌入式系統(tǒng)地功能越來越強大,實現(xiàn)也越來越復(fù)雜,隨之出現(xiàn)地就是可靠性大大降低.最近地 一種趨勢是一個功能強大地嵌入式系統(tǒng)通常需要一種操作系統(tǒng)來給予支持,這種操作系統(tǒng)是已經(jīng)成熟并且穩(wěn)定地,可以是

2、嵌入式地Linux,WINCE等等.本文所要 研究地就是基于ARM嵌入式系統(tǒng)地交通燈系統(tǒng)地設(shè)計與實現(xiàn).本設(shè)計采用了飛 利浦地32位ARM微處理器LPC2138作為核心處理器【關(guān)鍵詞】嵌入式系統(tǒng)ARM LPC2138交通燈Under the ARM embedded system ' s the system of traffic lights Abstract : With the prevale nee of mobile devices and developme nt of embedded systems has become a hot spot. It is not a r

3、ece nt emerge nee of new tech no logy, just as micro-electr onicstech no logy and the developme ntof computer tech no logy, micro-chip con trol fun cti ons more and more, and control of micro-chips embeddedn the equipment and systems more and more, making the tech no logy more Reply People atte nti

4、on. Hardware and software of its size, cost, power consumption and reliability have madestringent requireme nts. Embeddedsystems fun ctio n more powerful, and more and more complicated, then there is the reliability greatly reduced. A recent trend is a powerful embeddedsystems usually need a operati

5、ng system to support the operating system is already mature and stable, can be embeddedLinux, WINCE,and so on. This paper is to study under the ARMembeddedsystem' s the system of traffic lights design and implementation. This design uses Philips's 32 as the LPC2138 ARM microprocessor core pr

6、ocessors.【Keywords Embedded Systems ARM LPC2138 traffic lights目錄設(shè)計地目地與意義設(shè)計地內(nèi)容三設(shè)計方案53.1設(shè)計思路5 3.2總體設(shè)計框圖四硬件設(shè)計64.1 LPC2138芯片介紹及設(shè)計 64.2 LPC2138芯片最小系統(tǒng)硬件設(shè)計 74.3系統(tǒng)電源電路設(shè)計74.4晶振與復(fù)位電路74.5 LED循環(huán)顯示設(shè)計 74.6數(shù)碼管倒計時顯示硬件設(shè)計84.7蜂鳴器設(shè)計8五軟件設(shè)計85.1交通燈控制軟件流程圖 85.2 ARM交通燈模擬控制程序設(shè)計 9六設(shè)計心得體會及總結(jié)10七參考文獻10一設(shè)計地目地與意義通過設(shè)計,培養(yǎng)自己綜合運用所學(xué)知識、

7、 獨立分析和解決實際問題地能力 ,培養(yǎng)創(chuàng)新意識 和創(chuàng)新能力,并獲得科學(xué)研究地基礎(chǔ)訓(xùn)練,加深對ARM芯片地了解;熟悉ARM芯片各個引腳地 功能,工作方式,計數(shù)/定時,1/0 口,中斷等相關(guān)原理,鞏固學(xué)習(xí)嵌入式地相關(guān)內(nèi)容知識 .二設(shè)計地內(nèi)容利用ARM芯片模擬實現(xiàn)交通燈控制.自行選擇所需 ARM芯片,查閱相關(guān)文獻資料,熟悉所 選ARM芯片,了解所選ARM芯片各個引腳功能,工作方式,計數(shù)/定時,I/O 口,中斷等相關(guān)原理 通過軟硬件設(shè)計實現(xiàn)利用 ARM芯片完成交通燈地模擬控制 .三設(shè)計方案3.1設(shè)計思路利用LPC2131ARM芯片實現(xiàn)單路交通燈地控制:a實現(xiàn)紅、綠、黃燈地循環(huán)控制.使用紅、黃、綠三種不

8、同顏色地LED燈實現(xiàn)此功能,由南往北方向紅、黃、綠三個燈依次接在 P1.18、P1.19、P1.20 上,由北往南方向地紅、 黃、 綠三個燈依次接在 P1.21、P1.22、P1.23 上,人行道用紅、綠兩個燈控制 ,依次接在P1.24、 P1.25上,用軟件控制燈地亮與滅來控制車輛和行人地通行b用數(shù)碼管顯示倒計時.可以利用動態(tài)顯示或靜態(tài)顯示,串行并出或者并行并出實現(xiàn).c南北方向控制車輛地綠燈熄滅地同時,控制蜂鳴器響2秒來作為警報.蜂鳴器接P0.7引腳.交通路口示意圖如圖 3.1車輛遇到紅燈停綠燈行地行走情況,紅綠燈時間均為60s,切換時間為10s,最后5s為黃燈閃爍.公 共 場 所圖3.13

9、.2總體設(shè)計框圖用ARM系列芯片LPC2138乍為系統(tǒng)地主控芯片,控制交通燈地循環(huán)點亮并顯示燈亮?xí)r間 (采用倒計時顯示),當定時時間到地時候控制蜂鳴器響來提醒人們注意紅綠燈地狀態(tài).圖3.2四硬件設(shè)計根據(jù)設(shè)計任務(wù)要求,自行選擇電子元件,畫出電氣原理圖,并調(diào)試.一個完整地系統(tǒng)除了 主控芯片以外,還需配上電源系統(tǒng)、時鐘電路、復(fù)位電路等.獨立地芯片是不能工作地.4.1 LPC2138芯片介紹及設(shè)計LPC2138是基于一個支持實時仿真和嵌入式跟蹤地32位ARM7TDMI-STM CPUfe微控制器,并帶有32kB地嵌入地高速Flash存儲器.128位寬度地存儲器接口和獨特地加速結(jié)構(gòu),使32位代碼能夠在最

10、大時鐘速率下運行.對代碼規(guī)模有嚴格控制地應(yīng)用可使用16位Thumb.模式將代碼規(guī)模降低超過30%,而性能地損失卻很小.較小地封裝和極低地功耗使LPC2131可理想地用于小型系統(tǒng)中,具有以下一些特性:小型LQFP64封裝8k地片內(nèi)靜態(tài)RAM和32k地片內(nèi)Flash程序存儲器.片內(nèi)Boot裝載軟件實現(xiàn)在系統(tǒng)/在應(yīng)用中編程(ISP/SAP)單扇區(qū)或整片擦除時間為 400ms.256字節(jié)行編程時間為 1ms.1個10位D/A轉(zhuǎn)換器兩個32位定時器/計數(shù)器(帶四路捕獲和四路比較通道) 、PWM單元(6路輸出)和看門狗實時時鐘具有獨立地電源和時鐘源,在節(jié)電模式下極大地降低了功耗多個串行接口 ,包括2個16

11、C550工業(yè)標準UART 2個高速I2C接口(400 kbit/s )、SPITM和具有緩沖作用和數(shù)據(jù)長度可變功能地SSP.多達47個5V地通用I/O 口;向量中斷控制器,可配置優(yōu)先級和向量地址9個邊沿或電平觸發(fā)地外部中斷引腳片內(nèi)晶振頻率范圍:130 MHz.通過片內(nèi)PLL可實現(xiàn)最大為60MHz地 CPU操作頻率,PLL地穩(wěn)定時間為 100us低功耗模式:空閑和掉電可通過個別使能/禁止外部功能和外圍時鐘分頻來優(yōu)化功耗.通過外部中斷將處理器從掉電模式中喚醒單電源,具有上電復(fù)位(POR和掉電檢測(BOD電路:CPU操作電壓范圍:3.0V3.6 V (3.3 V ± 10 % ),1/0

12、口可承受5V 地電壓.4.2 LPC2138芯片最小系統(tǒng)硬件設(shè)計圖4.5為LPC2138芯片地原理圖,64個引腳,采用3.3V電源供電,設(shè)計所需外接器件地 網(wǎng)絡(luò)名已經(jīng)標出.圖4.14.3系統(tǒng)電源電路設(shè)計本電源運用5V地直流電源(圖3.5所示).通過DS2434芯片將5V電壓轉(zhuǎn)換為3.3V電 壓,為LPC2138芯片供電丄PC2138芯片所能承受地電壓范圍是 3V3.6V (圖4.2所示)通過 濾波電路(圖4.3所示)可以很好地濾去轉(zhuǎn)換后電壓中地毛刺 .圖4.2圖4.34.4晶振與復(fù)位電路系統(tǒng)地晶振電路如圖 4.4 所示LPC2138芯片采用11.0592MHz地晶振作為振蕩時鐘源,通過對 芯片

13、地進行軟件設(shè)計可以將晶體振蕩器地頻率分頻為所需地頻率;系統(tǒng)地復(fù)位電路如圖 4.5所示,SP708S芯片地7號引腳連接到主控芯片地復(fù)位引腳( nRST上,按下復(fù)位鍵S2時,系 統(tǒng)將會復(fù)位到初始地狀態(tài).圖4.4圖4.54.5 LED循環(huán)顯示設(shè)計由南向北和由北向南車道各用一組紅、綠、黃三色地指示燈,指揮車輛通行.綠燈是通行信號,面對綠燈地車輛可以直行,紅燈是禁止通行信號,面對紅燈地車輛必須在路口地停車 線后停車.黃燈是警告信號,面對黃燈地車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以繼續(xù)行進 .具體紅綠燈時間分配時間如表41所示.表 4 1 :50s5s5s50s5s5s南北通道綠燈

14、亮綠燈閃黃燈閃紅燈亮紅燈閃黃燈閃人行道紅燈亮紅燈亮紅燈亮綠燈亮紅燈亮紅燈亮上表說明南北通道綠燈亮、綠燈閃黃燈閃時人行道都是紅燈亮,只有車道紅燈亮(車輛完全停下來)時人行道綠燈才亮,這樣保證了過馬路地行人人身安全,避免了不 必要地交通事故硬件電路連接圖如圖 4.6所示圖4.6交通燈LED地發(fā)光和熄滅地控制,是通過控制GPIO寄存器組來完成地,須先將引腳P1.18P1.25通過引腳功能選擇寄存器PINSEL1,設(shè)置為GPIO方式;再設(shè)置 GPIO方向寄存器1 (IO1DIR),對應(yīng)地引腳設(shè)置為輸出方向.要點亮LED1LED8需要使用GPIO清零寄存器 1 (IO1CLR地對應(yīng)位設(shè)置為 1,即在引腳

15、P1.18P1.25上加邏輯低電平,即可點亮這些燈. 與之相反,要熄滅這些燈,則要用GPIO輸出置位寄存器1 (IO1SET)將對應(yīng)地位置位即可. 4.6數(shù)碼管倒計時顯示硬件設(shè)計數(shù)碼管是一種很普遍地顯示器件,數(shù)碼管地主要部分是七段發(fā)光二極管;數(shù)碼管分為共 陰極和共陽極兩種,為了保護各段LED,需外加限流電阻.有地產(chǎn)品還附加有一個小數(shù)點,因此有人也稱之為八段式發(fā)光二極管.圖4.7如圖4.7 所示,數(shù)碼管由8個發(fā)光段(第八段表示小數(shù)點)地不同組合,從而實現(xiàn)十六進制數(shù)地顯示.通過段選端可以控制數(shù)碼管顯示內(nèi)容,位選端用于控制整個數(shù)碼管是否工作:對于共陰極數(shù)碼管,位選端要接低電平,對于共陽極數(shù)碼管,位選

16、端接高電平.數(shù)碼管有兩種顯 示方式:動態(tài)顯示和靜態(tài)顯示靜態(tài)顯示讓數(shù)碼管要點亮地數(shù)碼管同時持續(xù)點亮;動態(tài)顯示則利用了人眼地視覺暫留原理,在一個時間內(nèi)只點亮一個數(shù)碼管.本次設(shè)計采用2位一體地數(shù)碼管,數(shù)碼管地2條位選線連接 ARM地通用I/O 口;數(shù)碼管地8個段選端連接74HC595芯 片地并行I/O輸出接口,74HC595再與ARM地 SPI0模式進行通信,接受ARM發(fā)送過來地數(shù)據(jù) 數(shù)碼管硬件電路連接圖如圖4.8所示.圖4.84.7蜂鳴器設(shè)計將蜂鳴器正極端接電源,負極端通過三極管接地,三極管基極通過電阻接到LPC2138芯片地P0.8引腳上.具體硬件電路連接圖如圖4.9所示圖4.9五軟件設(shè)計5.1

17、交通燈控制軟件流程圖圖5.1為ARMI模擬交通燈控制程序流程圖,主程序主要完成倒計時顯示及控制蜂鳴器 中斷服務(wù)程序主要控制那些燈亮以及亮地時間主程序流程圖中斷服務(wù)程序流程圖圖5.15.2 ARM交通燈模擬控制程序設(shè)計定時器控制原理:定時器對外設(shè)時鐘Fpclk周期進行計數(shù),根據(jù)4個匹配寄存器地設(shè)定可設(shè)置為匹配(即達到匹配寄存器指定地定時值)時產(chǎn)生中斷或執(zhí)行其他操作.ARMLPC2138有兩個32位定時器,定時器0和定時器1,本次設(shè)計僅適用定時器0,選定定時器0中斷為向量 IRQ.設(shè)置P0 P1 口為GPIO輸出狀態(tài),初始化定時器,選定定時器0中斷為向量IRQ,對 VICIntEnable、VIC

18、IntSelect 、VICvectCntl進行設(shè)置,初始化SPI接口,根據(jù)設(shè)計要求編寫 軟件程序.根據(jù)事先畫好地程序流程圖,用C語言編寫程序.在主程序中對需要用到地I/O 口進行定義,并設(shè)置相應(yīng)地I/O 口,比如要求P1.18P1.25引腳為GPI0功能,則通過對引腳功能選擇 寄存器PINSEL1將對應(yīng)地引腳設(shè)置為 GPIO方式并設(shè)置GPIO方向,在GPIO方向寄存器I01DIR 里設(shè)置,之后對定時器0進行初始化,并開相應(yīng)地中斷然后進入大循環(huán)進行倒計時顯示、控 制蜂鳴器地蜂鳴與否并判斷flag是否加到設(shè)定值,對flag加到設(shè)定值后進行清零,讓flag重新計數(shù)中斷服務(wù)程序地設(shè)計,每隔一秒鐘定時

19、器中斷一次,每中斷一次flag加1根據(jù)LED點亮 地先后順序以及點亮地時間,分別編寫相應(yīng)地程序設(shè)計為系統(tǒng)上電即點亮車道紅燈以及馬路綠燈,倒計時50s紅燈開始閃爍,同時馬路紅燈亮,紅燈閃5s接著轉(zhuǎn)為黃燈閃5s,然后車輛 通道轉(zhuǎn)為綠燈亮,50s后綠燈閃5s,黃燈再閃5s之后又回到紅燈亮,人行道只在車輛通道紅燈 時才亮綠燈這主要靠在中斷服務(wù)程序中對計數(shù)值flag地判斷來對正在點亮地?zé)暨M行定時實現(xiàn)程序詳細清單見附錄1六設(shè)計心得體會及總結(jié)一周地課程設(shè)計結(jié)束了 ,在這次地課程設(shè)計中不僅檢驗了我所學(xué)習(xí)地知識,也培養(yǎng)了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情在設(shè)計過程中,與同學(xué)分 工設(shè)計,和

20、同學(xué)們相互探討,相互學(xué)習(xí),相互監(jiān)督學(xué)會了合作,學(xué)會了運籌帷幄,學(xué)會了寬容, 學(xué)會了理解,也學(xué)會了做人與處世課程設(shè)計是我們專業(yè)課程知識綜合應(yīng)用地實踐訓(xùn)練,著是我們邁向社會,從事職業(yè)工作前一個必不少地過程.”千里之行始于足下”,通過這次課程設(shè)計,我深深體會到這句千古 名言地真正含義.我今天認真地進行課程設(shè)計,學(xué)會腳踏實地邁開這一步,就是為明天能穩(wěn)健地在社會大潮中奔跑打下堅實地基礎(chǔ).通過這次交通燈設(shè)計,本人在多方面都有所提高通過這次交通燈設(shè)計,培養(yǎng)綜合運用所 學(xué)知識、獨立分析和解決實際問題地能力,培養(yǎng)創(chuàng)新意識和創(chuàng)新能力,并獲得科學(xué)研究地基礎(chǔ) 訓(xùn)練 了解所選擇地 ARM芯片各個引腳功能,工作方式,計數(shù)

21、/定時,I/O 口,中斷等地相關(guān)原理 并鞏固學(xué)習(xí)嵌入式地相關(guān)內(nèi)容知識通過軟硬件設(shè)計實現(xiàn)利用ARM芯片完成交通燈控制功能首先查閱相關(guān)文獻資料,熟悉所選ARM芯片第二步總體設(shè)計方案規(guī)劃,設(shè)計車輛遇到紅燈停 綠燈行情況,紅綠燈時間均為60s,切換時間為10s,最后5s為黃燈閃爍接下來 系統(tǒng)硬件設(shè) 計,熟悉IO接口,定時器計數(shù)器工作原理最后系統(tǒng)軟件設(shè)計,包括交通信號燈地工作流程軟 件實現(xiàn),用C語言編程提高了計算能力,繪圖能力,熟悉了規(guī)范和標準,同時各科相關(guān)地課程 都有了全面地復(fù)習(xí),獨立思考地能力也有了提高在這次設(shè)計過程中,體現(xiàn)出自己單獨設(shè)計模具地能力以及綜合運用知識地能力,體會了學(xué)以致用、突出自己勞動

22、成果地喜悅心情,從中發(fā)現(xiàn)自己平時學(xué)習(xí)地不足和薄弱環(huán)節(jié),從而加以彌補在此感謝我們地徐老師,老師嚴謹細致、一絲不茍地作風(fēng)一直是我工作、學(xué)習(xí)中地榜樣; 老師循循善誘地教導(dǎo)和不拘一格地思路給予我無盡地啟迪;這次模具設(shè)計地每個實驗細節(jié)和每個數(shù)據(jù),都離不開老師您地細心指導(dǎo)而您開朗地個性和寬容地態(tài)度,幫助我能夠很順利地完成了這次課程設(shè)計 同時感謝對我?guī)椭^地同學(xué)們,謝謝你們對我地幫助和支持,讓我感受到同學(xué)地友誼由于本人地設(shè)計能力有限,在設(shè)計過程中難免出現(xiàn)錯誤,懇請老師們多多指教,我十分樂 意接受你們地批評與指正,本人將萬分感謝七參考文獻【1】周立功主編;ARM嵌入式系統(tǒng)基礎(chǔ)教程M(第2版);北京:北京航空航

23、天大學(xué)出版社;2008.2005.【2.張崙編著;32位嵌入式系統(tǒng)硬件設(shè)計與調(diào)試M;北京:機械工業(yè)出版社;【3.馬洪連,等編著;嵌入式系統(tǒng)設(shè)計教程M;北京:電子工業(yè)出版社;2006.【4.王田苗主編;嵌入式系統(tǒng)設(shè)計與實例開發(fā)M;北京:清華大學(xué)出版社;2003.【5.符意德編著;嵌入式系統(tǒng)設(shè)計原理及應(yīng)用M;北京:清華大學(xué)出版社;2004.【6.沈文斌主編;嵌入式硬件系統(tǒng)設(shè)計與開發(fā)實例詳解 M;北京:電子工業(yè)出版社;2005. 【7】.江思敏,陳明編著;Protel電路設(shè)計教程M(第2版);北京:清華大學(xué)出版社;2006.【8.羅蕾主編;嵌入式實時操作系統(tǒng)及應(yīng)用開發(fā)M;北京:北京航空航天大學(xué)出版社

24、;2005.【9】.PHILIPS 公司;LPC2114/2124/2138/2212/2214 User Manual ; 2004.【10 .譚浩強編著;C語言程序設(shè)計M(第3版);北京:清華大學(xué)出版社;2005.【11】田澤.嵌入式系統(tǒng)開發(fā)與應(yīng)用M;.北京:北京航空航天大學(xué)出版社,2005.【12】馬忠梅,英惠.ARM嵌入式處理器結(jié)構(gòu)與應(yīng)用基礎(chǔ)(第2版)M.;北京:北京航空航天大學(xué)出版社,2007.【13】嚴蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu):C語言版M.北京:清華大學(xué)出版社,1996.【14】 王宇行.ARM程序分析與設(shè)計M.北京:北京航空航天大學(xué)出版社,2008.【15】胥靜.嵌入式系統(tǒng)設(shè)計與開

25、發(fā)實例詳解:基于ARM地應(yīng)用M.北京:北京航空航天大學(xué)出版社,2005.附錄1 :#in clude "con fig.h"#defi ne LED1 1<<18#defi ne LED2 1<<19#defi ne LED3 1<<20#defi ne LED4 1<<21#defi ne LED5 1<<22#defi ne LED6 1<<23#defi ne LED7 1<<24#defi ne LED8 1<<25#defi ne Y 0x00900000#defi n

26、e R 0x00240000#defi ne G 0x00480000#defi ne SEL1 1<<26#defi ne SEL2 1<<27#defi ne HC595_CS 0x00000200#defi ne BEEP 0x00000100 un sig ned int dat, nb,h,flag;/P1.18南北紅燈/P1.19 南北綠燈/P1.20南北黃燈/P1.21 南北紅燈/P1.22 南北綠燈/P1.23南北黃燈/P1.24馬路紅燈/P1.25 馬路綠燈/數(shù)碼管位選1/數(shù)碼管位選2/P0.9/P0.8為蜂鳴器控制un sig ned char ta

27、b=0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90;/*定時器0中斷服務(wù)子程序重裝初值,計數(shù)增減*/* void _irq IRQ_Time0(void)un sig ned int i;if(flag<=50)if(flag=0) nb=55; IO1CLR=LED1|LED4|LED8; / IO1SET=(LED1|LED4|LED8);n b-;/if(flag>50)&&(flag<55)車道紅馬路綠南北紅燈時間秒減1i=IO1PIN;if(i&R)=0)IO1SET=R; else IO1

28、CLR=R;n b-;/紅燈每秒閃爍一次紅燈時間減1if(flag=55)IO1CLR=LED3|LED6|LED7; /IO1SET=(LED3|LED6|LED7); h=5;if(55<flag)&&(flag<60)i=IO1SET;if(i&Y )=0)IO1SET=Y;else車道黃馬路紅IO1CLR=Y; / h-;/if(60<=flag) &&( flag<110)if(flag=60) nb=51;IO1CLR=LED2|LED5|LED7; /IO1SET=(LED2|LED5|LED7);nb-; II 綠

29、燈時間減1if(110<=flag)&&(flag<115)IIi=IO1SET;if(i &G)=0)IO1SET=G;黃燈閃爍黃燈時間秒減1車道綠馬路紅計數(shù)慢一個周期后重新開始計數(shù)elseIO1CLR=G; / n b-;/if(flag=115)h=5;IO1CLR=LED3|LED6|LED7; /綠燈閃爍綠燈時間減1車道黃馬路紅IO1SET=(LED3|LED6|LED7);if(115<flag)&&( flag<120) i=IO1SET;if(i&Y )=0)IO1SET=Y;else IO1CLR=Y;

30、/ h-;/flag+;T0IR = 0x01;/VICVectAddr = 0x00;/黃燈閃爍黃燈時間減1清除中斷標志通知VIC中斷處理結(jié)束/*Time0Init() 定時器0定時中斷初始化/*void Time0I nit(void)T0PR = 99;/T0MCR = 0x03;/T0MR0 = 110592;/T0TCR = 0x03;/T0TCR = 0x01;VICI ntSelect = 0x00;/VICVectC ntl0 = 0x24;VICVectAddr。= (ui nt32)IRQ_Time0; /VICI ntE nable = 0x00000010;/設(shè)置定時器

31、0分頻為100分頻得110592Hz匹配通道0匹配中斷并復(fù)位 T0TC比較值(1秒定時值)啟動并復(fù)位T0TC所有中斷通道設(shè)置為IRQ中斷/定時器0中斷通道分配最高優(yōu)先級設(shè)置中斷服務(wù)程序地址向量使能定時器0中斷/* void SPImasterI nit() SPI初始化*/void SPImasterl nit()un sig ned int fdiv;fdiv=8;SOPCCR=fdiv&Oxfe;S0PCR=(0<<3)|(1<<4)|(1<<5)|(0<<6)|(1<<7);/* HC595_SendDat()向 74H

32、C595發(fā)送一字節(jié)數(shù)據(jù)*/void HC595_Se ndDat(u nsig ned int dat)IOOCLR=HC595_CS;S0PDR=dat;while(0=(S0PSR&0x80);/等待數(shù)據(jù)發(fā)送完畢IOOSET=HC595_CS;/*Delay_NS() 長軟件1ms延時*/void Delay_Ns( un sig ned int dly)while(dly-)/dly ms 延時un sig ned int j;for(j=1;j<=613;j+)/1ms 延時/*IO1SET=SEL2;/ 打開位選 2Delay_Ns(20);IO1CLR=SEL2;/

33、關(guān)閉位選 2else if(55<=flag)&&(flag<60)|(115<=flag)&&(flag<120)dat=h;/顯示黃燈倒計時間HC595_Se ndDat(tabdat);IO1SET=SEL2;Delay_Ns(20);IO1CLR=SEL2;/* main():初始化I/O及定時器,然后不斷地查詢定時器中斷標志 *當定時時間到達時,取反BEEPCON控制口 */int mai n(-void)PINSEL0=0x00000000;/PINSEL1 = 0x00000000;/IO1DIR = 0xffffffff;

34、l00DIR=0x000003f0;/IO1SET=0xffffffff;IO0SET=BEEP;flag=0;Time0I ni t();SPImasterI nit();IRQE nable();/while(1)if(flag=120) flag=0;if(flag=55)|(flag=115)IO0CLR=BEEP;if(flag=57)|(flag=117)IO0SET=BEEP;return(0);設(shè)置所有引腳連接 GPIO設(shè)置管腳連接GPIO/設(shè)置I/O為輸出設(shè)置SPI控制口,BEEP和nCS為輸出/初始化定時器0/SPI初始化使能中斷版權(quán)申明本文部分內(nèi)容,包括文字、圖片、以及設(shè)計等在網(wǎng)上搜集整理。版權(quán)為潘宏亮個人所有This article in eludes someparts, in cludi ng text, pictures, and desig n. Copyright is Pan Hon glia ng's pers onal own ership.用戶可將本文的內(nèi)容或服務(wù)用于個人學(xué)習(xí)、研究或欣賞,以及其他非商業(yè)性或非盈利性用途,但同時應(yīng)遵守著作權(quán)法及其他相關(guān)法律 的規(guī)定,不得侵犯本網(wǎng)站及相關(guān)權(quán)利人的合法權(quán)利。除此以外,將本 文任何內(nèi)容或服務(wù)用于其他用途時,須征得本人及相關(guān)權(quán)利人的書面 許可,并

溫馨提示

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

評論

0/150

提交評論