基于ARM嵌入式系統(tǒng)的交通燈設(shè)計_第1頁
基于ARM嵌入式系統(tǒng)的交通燈設(shè)計_第2頁
基于ARM嵌入式系統(tǒng)的交通燈設(shè)計_第3頁
基于ARM嵌入式系統(tǒng)的交通燈設(shè)計_第4頁
基于ARM嵌入式系統(tǒng)的交通燈設(shè)計_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

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

2、究的就是基于 ARM 嵌入式 系統(tǒng)的交通燈系統(tǒng)的設(shè)計與實現(xiàn)。本設(shè)計采用了飛利浦的 32 位 ARM 微處理 器 LPC2138 作為核心處理器 關(guān)鍵詞:關(guān)鍵詞:嵌入式系統(tǒng),ARM,LPC2138,交通燈 Traffic Lights System based on the ARM Embedded System Student: Guide Teacher: Abstract:With the prevalence of mobile devices and development of embedded systems has become a hot spot. It is not a r

3、ecent emergence of new technology, just as micro-electronics technology and the development of computer technology, micro-chip control functions more and more, and control of micro-chips embedded in the equipment and systems more and more, making the technology more Reply People attention. Hardware

4、and software of its size, cost, power consumption and reliability have made stringent requirements. Embedded systems function more powerful, and more and more complicated, then there is the reliability greatly reduced. A recent trend is a powerful embedded systems usually need a operating system to

5、support the operating system is already mature and stable, can be embedded Linux, WINCE, and so on. This paper is to study under the ARM embedded systems the system of traffic lights design and implementation. This design uses Philipss 32 as the LPC2138 ARM microprocessor core processors. Keywords:E

6、mbedded Systems,ARM,LPC2138,traffic lights 目錄目錄 1 引言引言- 4 - 2 相關(guān)內(nèi)容及原理相關(guān)內(nèi)容及原理- 5- 3 設(shè)計方案設(shè)計方案- 6 - 3.1 設(shè)計思路設(shè)計思路- 6 - 3.2 總體設(shè)計框圖總體設(shè)計框圖- 6 - 4 硬件設(shè)計硬件設(shè)計- 8 - 4.1 LPC2138 芯片介紹及設(shè)計芯片介紹及設(shè)計- 8 - 4.2 LPC2138 芯片最小系統(tǒng)硬件設(shè)計芯片最小系統(tǒng)硬件設(shè)計- 9 - 4.3 系統(tǒng)電源電路設(shè)計系統(tǒng)電源電路設(shè)計- 10 - 4.4 晶振與復(fù)位電路晶振與復(fù)位電路- 10- 4.5 LED 循環(huán)顯示設(shè)計循環(huán)顯示設(shè)計- 10-

7、4.6 數(shù)碼管倒計時顯示硬件設(shè)計數(shù)碼管倒計時顯示硬件設(shè)計- 11 - 4.7 蜂鳴器設(shè)計蜂鳴器設(shè)計- 12 - 5 軟件設(shè)計軟件設(shè)計- 14- 5.1 交通燈控制軟件流程圖交通燈控制軟件流程圖- 14 - 5.2 ARM 交通燈模擬控制程序設(shè)計交通燈模擬控制程序設(shè)計- 15 - 6 運行測試結(jié)果運行測試結(jié)果16 7 設(shè)計心得體會及總結(jié)設(shè)計心得體會及總結(jié)- 18 - 參考文獻(xiàn)參考文獻(xiàn)- 19 - 附錄附錄- 20 - 1 引言引言 交通信號燈指揮著人和各種車輛的安全運行,實現(xiàn)紅、黃、綠燈的自動指 揮是城鄉(xiāng)交通管理現(xiàn)代化的重要課題.在城鄉(xiāng)街道的十字交叉路口,為了保證 交通秩序和行人安全,一般在每條

8、道路上各有一組紅、黃、綠交通信號燈,其 中紅燈亮,表示該條道路禁止通行; 黃燈亮,表示該條道路上未過停車線的車 輛停止通行,已過停車線的車輛繼續(xù)通行; 綠燈亮,表示該條道路允許通行.交 通燈控制電路自動控制十字路口兩組紅、黃、綠交通燈的狀態(tài)轉(zhuǎn)換,指揮各種 車輛和行人安全通行,實現(xiàn)十字路口城鄉(xiāng)交通管理自動化. 本文為了實現(xiàn)交通道路的管理,力求交通管理先進(jìn)性、科學(xué)化. 分析應(yīng) 用了單片機(jī)實現(xiàn)智能交通燈管制的控制系統(tǒng),以及該系統(tǒng)軟、硬件設(shè)計方法, 實驗證明該系統(tǒng)實現(xiàn)簡單、經(jīng)濟(jì),能夠有效地疏導(dǎo)交通,提高交通路口的通行 能力。 2 相關(guān)內(nèi)容及原理相關(guān)內(nèi)容及原理 通過設(shè)計,培養(yǎng)自己綜合運用所學(xué)知識、獨立分

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

10、黃燈的循環(huán)控制。使用紅、黃、綠三種不同顏色的 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 車輛遇到紅燈停綠燈行的行走情況,紅綠燈 時間均為

11、60s,切換時間為 10s,最后 5s 為黃燈閃爍。 公 共 場 所 公 共 場 所 圖 3.1 交通路口示意圖 3.2 總體設(shè)計框圖總體設(shè)計框圖 用 ARM7 系列芯片 LPC2138 作為系統(tǒng)的主控芯片,控制交通燈的循環(huán)點亮 并顯示燈亮?xí)r間(采用倒計時顯示) ,當(dāng)定時時間到的時候控制蜂鳴器響來提 醒人們注意紅綠燈的狀態(tài)。 交 通 燈 循 環(huán) 蜂鳴器 LPC2131 最小系統(tǒng) 倒 計 時 顯 示 圖 3.2 交通燈總體設(shè)計框圖 4 硬件設(shè)計硬件設(shè)計 根據(jù)設(shè)計任務(wù)要求,自行選擇電子元件,畫出電氣原理圖,并調(diào)試。一 個完整的系統(tǒng)除了主控芯片以外,還需配上電源系統(tǒng)、時鐘電路、復(fù)位電路 等。獨立的芯

12、片是不能工作的。 4.1 LPC2138 芯片介紹及設(shè)計芯片介紹及設(shè)計 LPC2138 是基于一個支持實時仿真和嵌入式跟蹤的 32 位 ARM7TDMI-STM CPU 的微控制器,并帶有 32kB 的嵌入的高速 Flash 存儲器。128 位寬度的 存儲器接口和獨特的加速結(jié)構(gòu),使 32 位代碼能夠在最大時鐘速率下運行。 對代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用 16 位 Thumb.模式將代碼規(guī)模降低超過 30%,而性能的損失卻很小。較小的封裝和極低的功耗使 LPC2131 可理想地 用于小型系統(tǒng)中,具有以下一些特性: 小型 LQFP64 封裝 8k 的片內(nèi)靜態(tài) RAM 和 32k 的片內(nèi) Flas

13、h 程序存儲器。 片內(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 個 16C550 工業(yè)標(biāo)準(zhǔn) UART、2 個高速 I2C 接 口 (400 kbit/s) 、SPITM 和具有緩沖作用和數(shù)據(jù)長度可變功能的 SSP。 多達(dá) 47 個 5V 的通用 I/O 口;向量中斷控制器,可配置優(yōu)先級和向

14、量 地址 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),I/O 口可承受 5V 的電壓。 4.2 LPC2138 芯片最小系統(tǒng)硬件設(shè)計芯片最小系統(tǒng)硬件設(shè)計 圖 4.1 為 LPC2138 芯片的原理圖,64 個引腳,采用 3.3

15、V 電源供電,設(shè) 計所需外接器件的網(wǎng)絡(luò)名已經(jīng)標(biāo)出。 圖 4.1 LPC2138 芯片的原理圖 4.3 系統(tǒng)電源電路設(shè)計系統(tǒng)電源電路設(shè)計 本電源運用 5V 的直流電源(圖 4.2 所示) 。通過 DS2434 芯片將 5V 電壓 轉(zhuǎn)換為 3.3V 電壓,為 LPC2138 芯片供電,LPC2138 芯片所能承受的電壓范 圍是 3V3.6V。 圖 4.2 直流電源電路設(shè)計 1 VOUT 2 VIN 3 GND U2 DS2434 VCC C3 VDD3.3 4.4 晶振與復(fù)位電路晶振與復(fù)位電路 系統(tǒng)的晶振電路如圖 4.3 所示 LPC2138 芯片采用 11.0592MHz 的晶振作為 振蕩時鐘源

16、,通過對芯片的進(jìn)行軟件設(shè)計可以將晶體振蕩器的頻率分頻為所 需的頻率;系統(tǒng)的復(fù)位電路如圖 4.4 所示,SP708S 芯片的 7 號引腳連接到主 控芯片的復(fù)位引腳(nRST)上,按下復(fù)位鍵 S2 時,系統(tǒng)將會復(fù)位到初始的狀 態(tài)。 12 Y1 11.0592M Hz C1 30pF C2 30pF XTAL1 XTAL2 圖 4.3 系統(tǒng)的晶振電路圖 圖 4.4 系統(tǒng)的復(fù)位電路圖 4.5 LED 循環(huán)顯示設(shè)計循環(huán)顯示設(shè)計 由南向北和由北向南車道各用一組紅、綠、黃三色的指示燈,指揮車輛 通行。綠燈是通行信號,面對綠燈的車輛可以直行,紅燈是禁止通行信號, 面對紅燈的車輛必須在路口的停車線后停車。黃燈是

17、警告信號,面對黃燈的 車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以繼續(xù) 行進(jìn)。具體紅綠燈時間分配時間如表 41 所示。 表 41:紅綠燈時間分配時間如表 50s5s5s50s5s5s 南北通道綠燈亮綠燈閃黃燈閃紅燈亮紅燈閃黃燈閃 人行道紅燈亮紅燈亮紅燈亮綠燈亮紅燈亮紅燈亮 上表說明南北通道綠燈亮、綠燈閃黃燈閃時人行道都是紅燈亮,只有車道 紅燈亮(車輛完全停下來)時人行道綠燈才亮,這樣保證了過馬路的行人人 身安全,避免了不必要的交通事故。硬件電路連接圖如圖 4.5 所示 M R 1 Vcc 2 GND 3 PFI 4 PFO 5 NC 6 RST 7 RST 8 U0 SP70

18、8S S2 GND GND VDD3.3 nRST D1 D2 D3 D4 D5 D6 D7 D8 VDD3.3 100R1470 100R2470 100R3470 100R5470 100R4470 100R6470 100R7470 100R8470 P1.18 P1.19 P1.20 P1.21 P1.22 P1.23 P1.24 P1.25 LED1 LED2 LED3 LED4 LED5 LED6 LED7 LED8 圖 4.5 硬件電路連接圖 交通燈 LED 的發(fā)光和熄滅的控制,是通過控制 GPIO 寄存器組來完成的, 須先將引腳 P1.18P1.25 通過引腳功能選擇寄存器 P

19、INSEL1,設(shè)置為 GPIO 方式;再設(shè)置 GPIO 方向寄存器 1(IO1DIR) ,對應(yīng)的引腳設(shè)置為輸出方向。 要點亮 LED1LED8 需要使用 GPIO 清零寄存器 1(IO1CLR)的對應(yīng)位設(shè)置為 1,即在引腳 P1.18P1.25 上加邏輯低電平,即可點亮這些燈。與之相反, 要熄滅這些燈,則要用 GPIO 輸出置位寄存器 1(IO1SET)將對應(yīng)的位置位即 可。 4.6 數(shù)碼管倒計時顯示硬件設(shè)計數(shù)碼管倒計時顯示硬件設(shè)計 數(shù)碼管是一種很普遍的顯示器件,數(shù)碼管的主要部分是七段發(fā)光二極管; 數(shù)碼管分為共陰極和共陽極兩種,為了保護(hù)各段 LED,需外加限流電阻。有 的產(chǎn)品還附加有一個小數(shù)點

20、,因此有人也稱之為八段式發(fā)光二極管。 圖 4.6 數(shù)碼管外形圖及陰陽兩極連接示意圖 如圖 4.6 所示,數(shù)碼管由 8 個發(fā)光段(第八段表示小數(shù)點)的不同組合, 從而實現(xiàn)十六進(jìn)制數(shù)的顯示。通過段選端可以控制數(shù)碼管顯示內(nèi)容,位選端 用于控制整個數(shù)碼管是否工作:對于共陰極數(shù)碼管,位選端要接低電平,對 于共陽極數(shù)碼管,位選端接高電平。數(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 個段選端連接

21、 74HC595 芯片的并行 I/O 輸出接口,74HC595 再與 ARM 的 SPI0 模式進(jìn)行通信,接受 ARM 發(fā)送過來的數(shù)據(jù)。數(shù)碼管硬件電路連接圖如圖 4.7 所示。 7 6 4 1 3 8 9 2 10 5 a b c d e f g hp vccvcc 7SEG1 7SEG-2 G 13 SEL0 12 SER 14 SRCLR 10 SRCK 11 QA 15 QB 1 QC 2 QD 3 QE 4 QF 5 QG 6 QH 7 SQH 9 VCC 16 GND 8 U1 74HC595 GND VDD3.3 470X8 QAQA QBQB QCQC QDQD QEQE QFQ

22、F QGQG QHQH M OSI0 SCK0 M ISO0 1K R11 1K R12 Q2 Q3SEL1SEL2 VDD3.3 nCS 圖 4.7 數(shù)碼管硬件電路連接圖 4.7 蜂鳴器設(shè)計蜂鳴器設(shè)計 將蜂鳴器正極端接電源,負(fù)極端通過三極管接地,三極管基極通過電 阻接到 LPC2138 芯片的 P0.8 引腳上。具體硬件電路連接圖如圖 4.8 所示 LS1 Bell Q1 PNP 1K R0 VDD3.3 R9 10K VDD3.3 P0.8 圖 4.8 蜂鳴器硬件電路連接圖 5 軟件設(shè)計軟件設(shè)計 5.1 交通燈控制軟件流程圖交通燈控制軟件流程圖 圖 5.1 為 ARM 模擬交通燈控制程序流

23、程圖,主程序主要完成倒計時顯 示及控制蜂鳴器,中斷服務(wù)程序主要控制那些燈亮以及亮的時間。 開始 定時器 0 初始化 初始化中斷,開 中斷 交通燈倒計 時顯示 中斷服務(wù)程序流程圖 系統(tǒng)保護(hù)現(xiàn)場 車道紅燈計 數(shù)變量-1 車道綠燈閃 爍計數(shù)-1 車道紅燈閃 爍計數(shù)-1 黃燈閃爍計 數(shù)-1 車道閃爍黃 燈計數(shù)-1 車道綠燈計 數(shù)-1 0=Flag 50 115=flag 120 110=flag 115 60=flag 110 50=flag 55 中斷返回 55flag6 0 flag=1 20 flag=0,清零計數(shù) 變量 N Y N N N N N Y Y Y Y Y N flag=5 5or1

24、15 控制蜂鳴器響 2 秒 N Y 主程序流程圖 圖 5.1ARM 模擬交通燈控制程序流程圖 5.2 ARM 交通燈模擬控制程序設(shè)計交通燈模擬控制程序設(shè)計 定時器控制原理:定時器對外設(shè)時鐘 Fpclk 周期進(jìn)行計數(shù),根據(jù) 4 個匹 配寄存器的設(shè)定可設(shè)置為匹配(即達(dá)到匹配寄存器指定的定時值)時產(chǎn)生中 斷或執(zhí)行其他操作。ARMLPC2138 有兩個 32 位定時器,定時器 0 和定時器 1, 本次設(shè)計僅適用定時器 0,選定定時器 0 中斷為向量 IRQ。 設(shè)置 P0、P1 口為 GPIO 輸出狀態(tài),初始化定時器,選定定時器 0 中斷為 向量 IRQ,對 VICIntEnable、VICIntSel

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

26、g 重新計數(shù)。中斷服務(wù)程序 的設(shè)計,每隔一秒鐘定時器中斷一次,每中斷一次 flag 加 1 根據(jù) LED 點亮的 先后順序以及點亮的時間,分別編寫相應(yīng)的程序。 6 運行測試結(jié)果運行測試結(jié)果 根據(jù)事先畫好的程序流程圖,用 C 語言編寫程序,并成功生成 HEX 文件, 編譯結(jié)果如圖 6.1 所示。 圖 6.1 編譯結(jié)果示意圖 車道紅燈、馬路綠燈,一位數(shù)碼管 50 秒倒計時顯示如下圖 6.2 所示。 圖 6.2 車道紅燈、馬路綠燈 50 秒倒計時顯示 車道紅燈、馬路綠燈,一位數(shù)碼管 50 秒倒計時顯示,倒計時 5 秒,馬路 方向亮黃燈,以提示即將亮紅燈,如下圖 6.3 所示。 圖 6.3 東西方向亮

27、黃燈提示即將亮紅燈顯示 設(shè)計為系統(tǒng)上電即點亮車道紅燈以及馬路綠燈,倒計時 50s 紅燈開始閃 爍,同時馬路紅燈亮,紅燈閃 5s 接著轉(zhuǎn)為黃燈閃 5s,然后車輛通道轉(zhuǎn)為綠 燈亮,50s 后綠燈閃 5s,黃燈再閃 5s 之后又回到紅燈亮,人行道只在車輛通 道紅燈時才亮綠燈。這主要靠在中斷服務(wù)程序中對計數(shù)值 flag 的判斷來對正 在點亮的燈進(jìn)行定時實現(xiàn)程序詳細(xì)清單見附錄。 7 設(shè)計心得體會及總結(jié)設(shè)計心得體會及總結(jié) 兩周的課程設(shè)計結(jié)束了,在這次的課程設(shè)計中不僅檢驗了我所學(xué)習(xí)的知 識,也培養(yǎng)了我如何去把握一件事情,如何去做一件事情,又如何完成一件 事情。在設(shè)計過程中,與同學(xué)分工設(shè)計,和同學(xué)們相互探討,

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

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

30、運用知識 的能力,體會了學(xué)以致用、突出自己勞動成果的喜悅心情,從中發(fā)現(xiàn)自己平 時學(xué)習(xí)的不足和薄弱環(huán)節(jié),從而加以彌補(bǔ)。 由于本人的設(shè)計能力有限,在設(shè)計過程中難免出現(xiàn)錯誤,懇請老師們多 多指教,我十分樂意接受你們的批評與指正,本人將萬分感謝。 參考文獻(xiàn)參考文獻(xiàn) 1周立功主編;ARM 嵌入式系統(tǒng)基礎(chǔ)教程M(第 2 版) ;北京:北京航空 航天大學(xué)出版社;2008. 2張崙編著;32 位嵌入式系統(tǒng)硬件設(shè)計與調(diào)試M;北京:機(jī)械工業(yè)出版社; 2005. 3馬洪連,等編著;嵌入式系統(tǒng)設(shè)計教程M;北京:電子工業(yè)出版社; 2006. 4王田苗主編;嵌入式系統(tǒng)設(shè)計與實例開發(fā)M;北京:清華大學(xué)出版社; 2003.

31、5符意德編著;嵌入式系統(tǒng)設(shè)計原理及應(yīng)用M;北京:清華大學(xué)出版社; 2004. 附錄:附錄: #include config.h #define LED1 118 /P1.18 南北紅燈 #define LED2 119 /P1.19 南北綠燈 #define LED3 120 /P1.20 南北黃燈 #define LED4 121 /P1.21 南北紅燈 #define LED5 122 /P1.22 南北綠燈 #define LED6 123 /P1.23 南北黃燈 #define LED7 124 /P1.24 馬路紅燈 #define LED8 125 /P1.25 馬路綠燈 #def

32、ine Y 0 x #define R 0 x #define G 0 x #define SEL1 126 /數(shù)碼管位選 1 #define SEL2 127 /數(shù)碼管位選 2 #define HC595_CS 0 x /P0.9 #define BEEP 0 x /P0.8 為蜂鳴器控制 unsigned int dat,nb,h,flag; unsigned char tab=0XC0,0XF9,0XA4,0XB0,0X99, 0X92,0X82,0XF8,0X80,0X90; /* 定時器 0 中斷服務(wù)子程序 重裝初值,計數(shù)增減 */ void _irq IRQ_Time0(void)

33、 unsigned int i; if(flag50) if(i else IO1CLR=R; /紅燈每秒閃爍一次 nb-; /紅燈時間減 1 if(flag=55) IO1CLR=LED3|LED6|LED7; /車道黃馬路紅 IO1SET=(LED3|LED6|LED7); h=5; if(55flag) if(i else IO1CLR=Y; /黃燈閃爍 h-; /黃燈時間秒減 1 if(60=flag) IO1CLR=LED2|LED5|LED7; /車道綠馬路紅 IO1SET=(LED2|LED5|LED7); nb-; /綠燈時間減 1 if(110=flag) if(i else

34、 IO1CLR=G; /綠燈閃爍 nb-; /綠燈時間減 1 if(flag=115) h=5; IO1CLR=LED3|LED6|LED7; /車道黃馬路紅 IO1SET=(LED3|LED6|LED7); if(115flag) if(i else IO1CLR=Y; /黃燈閃爍 h-; /黃燈時間減 1 flag+; T0IR = 0 x01; / 清除中斷標(biāo)志 VICVectAddr = 0 x00; / 通知 VIC 中斷處理結(jié)束 /* *Time0Init() 定時器 0 定時中斷初始化 */ void Time0Init(void) T0PR = 99; / 設(shè)置定時器 0 分頻

35、為 100 分頻得 Hz T0MCR = 0 x03; / 匹配通道 0 匹配中斷并復(fù)位 T0TC T0MR0 = ; / 比較值(1 秒定時值) T0TCR = 0 x03; / 啟動并復(fù)位 T0TC T0TCR = 0 x01; VICIntSelect = 0 x00; / 所有中斷通道設(shè)置為 IRQ 中斷 VICVectCntl0 = 0 x24; / 定時器 0 中斷通道分配最高優(yōu)先級 VICVectAddr0 = (uint32)IRQ_Time0; / 設(shè)置中斷服務(wù)程序地址向量 VICIntEnable = 0 x; / 使能定時器 0 中斷 /* * void SPImasterInit() SPI

溫馨提示

  • 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

提交評論