新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于SoPC汽車安全監(jiān)控系統(tǒng)設(shè)計(jì)

基于SoPC汽車安全監(jiān)控系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2016-12-15 來(lái)源:網(wǎng)絡(luò) 收藏
基于SoPC汽車安全監(jiān)控系統(tǒng)采用Altera公司最新的SoPC(可編程片上系統(tǒng))解決方案——Nios處理器軟核為核心,配合GPS和GSM系統(tǒng),對(duì)汽車的停放和運(yùn)行狀態(tài)進(jìn)行監(jiān)控。系統(tǒng)監(jiān)測(cè)、記錄和儲(chǔ)存汽車在行駛過(guò)程中的各種數(shù)據(jù),一旦出現(xiàn)安全問(wèn)題,立即采用GSM無(wú)線通信方式通知相關(guān)人員和單位,并隨時(shí)發(fā)送通過(guò)GPS獲得的汽車位置等數(shù)據(jù),為問(wèn)題的解決提供及時(shí)、準(zhǔn)確和可靠的信息,必要時(shí)通過(guò)GSM對(duì)汽車進(jìn)行遠(yuǎn)程控制。

基于SoPC的汽車安全監(jiān)控系統(tǒng)可廣泛應(yīng)用于汽車的防盜、日常維護(hù)和交通事故的處理,為車輛故障提供有效的測(cè)試手段。

1 系統(tǒng)硬件組成

[/table]設(shè)計(jì)采用Altera公司的SoPC開(kāi)發(fā)工具。系統(tǒng)的開(kāi)發(fā)包括硬件和軟件兩大部分。使用SoPC Builder生成Nios嵌入式處理器,Nios嵌入式處理器開(kāi)發(fā)工具允許用戶配置一個(gè)或多個(gè)Nios CPU,從標(biāo)準(zhǔn)庫(kù)中添加外圍設(shè)備,綜合處理自定義系統(tǒng),與QuartusII設(shè)計(jì)軟件一起編譯系統(tǒng)。軟件開(kāi)發(fā)的步驟是:利用SoPC Builder生成的軟件文件,用文本編輯器編寫匯編語(yǔ)言或C/C++源程序,用GNUPro軟件開(kāi)發(fā)工具進(jìn)行程序設(shè)計(jì)、連編和調(diào)試。GNUPro將源程序連編(包括匯編/編譯和連接)成可執(zhí)行程序,通過(guò)下載電纜對(duì)可執(zhí)行程序進(jìn)行調(diào)試和運(yùn)行。Quartus II設(shè)計(jì)軟件提供全面有效的設(shè)計(jì)環(huán)境,將設(shè)計(jì)、綜合、布局和驗(yàn)證以及第三方EDA工具接口集成在一個(gè)無(wú)縫的環(huán)境中。利用集成在Quartus II 3.0中的SoPCbuilder可以創(chuàng)建自己的Nios CPU系統(tǒng)。Nios是Altera公司開(kāi)發(fā)的16/32位嵌入式處理器軟核。
Altera公司推出了新一代多種系列FPGA,本設(shè)計(jì)選用低成本的Cyclone系列器件EP1C12,其具有12 060個(gè)邏輯單元,52個(gè)M4K RAM塊,239 616個(gè)RAM位和2個(gè)鎖相環(huán),最大用戶I/O引腳249。系統(tǒng)硬件組成框圖由Nios系統(tǒng)和外部設(shè)備兩部分組成,如圖1所示。
Nios系統(tǒng)包括CPU(Nios)、存儲(chǔ)器(memory)、定時(shí)器(timer)、總線和并/串行接口(key_pio、led_pio、lcd_pio、ccs_pio、uart_0和uart_1)等,并/串行接口分別實(shí)現(xiàn)與鍵盤、LED和LCD顯示器、汽車中控系統(tǒng)以及GPS和GSM系統(tǒng)等外部設(shè)備的連接。Nios系統(tǒng)設(shè)計(jì)和設(shè)計(jì)結(jié)果分別如圖2和圖3所示。
Nios系統(tǒng)同鍵盤、LED和LCD顯示器、汽車中控系統(tǒng)以及GPS系統(tǒng)等外部設(shè)備的連接比較簡(jiǎn)單,GSM系統(tǒng)的連接較為復(fù)雜,如圖4所示。
整個(gè)系統(tǒng)的工作過(guò)程是:來(lái)自汽車中控系統(tǒng)和GPS系統(tǒng)的信息可以顯示在LED和LCD顯示器上,也可以通過(guò)GSM系統(tǒng)進(jìn)行無(wú)線發(fā)送。用戶可以通過(guò)鍵盤對(duì)系統(tǒng)進(jìn)行控制,也可以通過(guò)GSM系統(tǒng)對(duì)汽車中控系統(tǒng)進(jìn)行遠(yuǎn)程無(wú)線控制。
2 系統(tǒng)軟件組成
系統(tǒng)軟件主要由主程序、GPS管理子程序和GSM管理子程序等部分組成。
主程序完成系統(tǒng)的初始化,以及鍵盤、LED、LCD顯示器和汽車中控系統(tǒng)的操作管理等。
GPS管理子程序主要負(fù)責(zé)從GPS系統(tǒng)接收時(shí)間和位置信息。
請(qǐng)求GPS系統(tǒng)返回ASCII時(shí)間位置信息的二進(jìn)制命令為:
@@EqmC
其中,m為0時(shí),輸出一次響應(yīng)信息(查詢),m為1"255時(shí),每1"255 s輸出一次響應(yīng)信息(連續(xù));C為校驗(yàn)和(Eqm按字節(jié)“異或”);為回車(十六進(jìn)制0d);為換行(十六進(jìn)制0a);命令長(zhǎng)度為8字節(jié)。
命令的響應(yīng)信息為:
@@Eq,mm,dd,yy,hh,mm,ss,dd,mm.mmmm,n,ddd,mm.mmmm,w, shhhhh.h,sss.s,hhh.h,m,t,dd.d,nn,rrrr,aa,CCC
日期:mm是月(01"12),dd是日(01"31),yy是年(99"19)。
世界時(shí)間(UTC):hh是時(shí)(00"23),mm是分(00"59),ss是秒(00"59)。
緯度:dd是度(00"90),mm.mmmm是分(00"59.9999),n是方向(N是北,S是南)。
經(jīng)度:ddd是度(000"180),mm.mmmm是分(00"59.9999),w是方向(W是西,E是東)。
信息長(zhǎng)度是96字節(jié)。
[table]
對(duì)應(yīng)的管理子程序?yàn)椋?br />int eq={@,@,E,q,1,C,0x0d,0x0a};
void gps_txd(int data[], int n) {
volatile int m,sum=0;
for(m=0;m


評(píng)論


技術(shù)專區(qū)

關(guān)閉