<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM的智能車載終端設(shè)備系統(tǒng)的設(shè)計(jì)

          基于ARM的智能車載終端設(shè)備系統(tǒng)的設(shè)計(jì)

          作者: 時(shí)間:2013-07-22 來(lái)源:網(wǎng)絡(luò) 收藏

          2.4 無(wú)線數(shù)據(jù)傳輸模塊
          無(wú)線數(shù)據(jù)傳輸模塊采用Simcom公司的GSM/雙頻模塊SIM300C,該模塊主要為語(yǔ)音傳輸、短消息和數(shù)據(jù)業(yè)務(wù)提供無(wú)線接口。SIM3 00C具有獨(dú)立的語(yǔ)音接口,配合車載終端上的LCD顯示屏和操作鍵盤,可以方便地?fù)艽螂娫?。SIM300C模塊與主控制器通過(guò)UART1接口進(jìn)行通信,傳輸速率設(shè)置為115200 bps。模塊與控制器間的通信協(xié)議是AT命令集,除了串口發(fā)送(TXD)、串口接收(RXD)之外還需要一些硬件握手信號(hào),其中DCD信號(hào)用來(lái)檢測(cè)GPRS無(wú)線數(shù)據(jù)傳輸模塊是處于數(shù)據(jù)傳送狀態(tài)還是處于AT命令傳送狀態(tài),DTR信號(hào)用來(lái)通知GPRS無(wú)線數(shù)據(jù)傳輸模塊傳送丁作是否已經(jīng)結(jié)束。GPRS無(wú)線數(shù)據(jù)傳輸模塊硬件設(shè)計(jì)原理圖如圖4所示。

          本文引用地址:http://www.ex-cimer.com/article/147996.htm

          d.JPG



          3 車載終端的軟件設(shè)計(jì)
          本系統(tǒng)選用源代碼開(kāi)放的實(shí)時(shí)操作系統(tǒng);,下面從;操作系統(tǒng)的移植和用戶應(yīng)用程序的編寫(xiě)兩方面介紹系統(tǒng)軟件的設(shè)計(jì)。
          3.1 ;操作系統(tǒng)的移植
          μC/OS-II的移植實(shí)際上就是對(duì)與MCU相關(guān)的代碼進(jìn)行重寫(xiě)或修改,移植的主要工作是對(duì)與處理器有關(guān)的3個(gè)文件OS CPU.H、OS-CPU.C和OS CPU A.S的編寫(xiě)。
          OS_CPU.H:主要包括了數(shù)據(jù)類型、堆棧入口寬度、堆棧增長(zhǎng)方向、開(kāi)關(guān)中斷的宏和進(jìn)行任務(wù)切換的宏定義,宏可由typedef或#define來(lái)定義。
          OS_CPU.C:該文件中用C語(yǔ)言編寫(xiě)了6個(gè)與操作系統(tǒng)相關(guān)的函數(shù):OSTaskStkInit()、OSTaskCreateHook()、OSTaskDelHook()、OSTaskSw Hook()、OSTaskStatHook()、OSTimeTickHook()。其中,OSTaskStkInit()為堆棧初始化函數(shù),必須根據(jù)具體的堆棧結(jié)構(gòu)進(jìn)行編寫(xiě);OSTaskC reare()和OSTaskCreateExt()通過(guò)調(diào)用該函數(shù),初始化任務(wù)的堆棧結(jié)構(gòu);后5個(gè)函數(shù)為鉤子函數(shù),必須聲明,在移植初期可以為空函數(shù)。
          OS_CPU_A.S:該文件中需要對(duì)處理器的寄存器進(jìn)行操作,需要修改3個(gè)與處理器相關(guān)的函數(shù):最高優(yōu)先級(jí)任務(wù)調(diào)用函數(shù)OSgtartHighRdy()、任務(wù)切換函數(shù)OSCtxSw()、中斷任務(wù)切換函數(shù)OSIntCtxSw()。
          3.2 用戶應(yīng)用程序的設(shè)計(jì)
          本系統(tǒng)采用多任務(wù)、多進(jìn)程模式,將各功能應(yīng)用程序設(shè)計(jì)為不同的功能模塊,加載為多個(gè)不同優(yōu)先級(jí)的并發(fā)進(jìn)程。各功能模塊優(yōu)先次序如下:IC刷卡應(yīng)用程序設(shè)為第1優(yōu)先級(jí),定位信息采集和處理程序設(shè)為第2優(yōu)先級(jí),GPRS無(wú)線數(shù)據(jù)傳輸設(shè)為第3優(yōu)先級(jí),LCD顯示程序設(shè)置為第4優(yōu)先級(jí)。
          3.2.1 刷卡模塊程序設(shè)計(jì)
          ZLG500A讀寫(xiě)卡模塊與IC卡之間的通信流程如圖5所示。

          e.JPG


          首先,模塊上電復(fù)位后,請(qǐng)求標(biāo)準(zhǔn)/所有的卡。如果在天線有效范圍內(nèi)有一張以上的卡存在,調(diào)用反沖突函數(shù)uchar miffsanticoll(uchar Bcnt,uchar idata*_SNR),并取得所選擇的卡的唯一序列號(hào)。選中卡之后,根據(jù)所要訪問(wèn)的卡內(nèi)存儲(chǔ)器位置,使用相應(yīng)的密鑰進(jìn)行3輪確認(rèn)。在成功確認(rèn)后,可以對(duì)卡內(nèi)存儲(chǔ)器進(jìn)行讀、寫(xiě)、增值、減值等一系列操作。以上這些步驟可以直接調(diào)用周立功公司提供的讀寫(xiě)卡模塊C51函數(shù)庫(kù)實(shí)現(xiàn)。
          在主程序中,設(shè)置定時(shí)器0作為SPI串行接口的看門狗定時(shí)器,該定時(shí)器被設(shè)置成50 ms溢出。數(shù)據(jù)發(fā)送時(shí)開(kāi)定時(shí)器中斷,若中斷之前通信未能完成(ZLG500A在SDATA線上未返回響應(yīng)信號(hào)),而造成該定時(shí)器產(chǎn)生中斷,則取消本次傳輸,發(fā)送子程序返回SPI_ERR;數(shù)據(jù)接收時(shí)關(guān)中斷,用軟件判斷溢出次數(shù),若在500 ms內(nèi)未收到ZLG500A返回的數(shù)據(jù),則退出本次命令的執(zhí)行,命令返回SPI_ERR。
          3.2.2 數(shù)據(jù)解析及處理
          車載終端工作時(shí),模塊會(huì)源源不斷地把接收到的GPS導(dǎo)航定位信息通過(guò)串行口輸出給微處理器,這些數(shù)據(jù)信息主要由幀頭、幀尾和幀內(nèi)數(shù)據(jù)組成。系統(tǒng)所需的GPS數(shù)據(jù),如經(jīng)緯度、時(shí)間日期、速度等信息,均包含在“$GPRMC”幀內(nèi)。“$GPRMC”的幀格式如下:
          $GPRMC,024813.640,A,31 58.4608,N,11848.3737,E,10.05,324.27,150706,,,A*50
          數(shù)據(jù)接收時(shí),首先通過(guò)依次檢測(cè)“$GPRMC”的ASCII碼是否正確。若檢測(cè)無(wú)誤,則確認(rèn)該幀為有效幀,再接收幀內(nèi)數(shù)據(jù)并進(jìn)行解析。然后按照表1的協(xié)議封裝成UDP數(shù)據(jù)包,通過(guò)GPRS傳輸?shù)街骺刂行?,主控中心通過(guò)軟件將車輛的位置實(shí)時(shí)顯示在電子地圖上。GPS數(shù)據(jù)傳輸協(xié)議如表1所列。

          f.JPG


          3.2.3 GPRS數(shù)據(jù)傳輸
          由于本系統(tǒng)所用的GPRS模塊SIM300C內(nèi)部嵌入了TCP/IP協(xié)議棧,因此只要發(fā)送相關(guān)AT指令,嵌入式TCP/IP協(xié)議就可完成SIM300C接入Internet的工作,實(shí)現(xiàn)無(wú)線數(shù)據(jù)傳輸?shù)墓δ堋?br /> 利用AT指令控制SIM300C模塊建立無(wú)線信道,并進(jìn)行數(shù)據(jù)傳輸?shù)牟襟E如下:
          ①AT+CIPCSGP=1,“CMNET” 設(shè)置GPRS連接方式。
          ②AT+CLPORT=“TCP”,“3030” 設(shè)置TCP端口號(hào)。
          ③AT+CIPSTART=“TCP”,“主站IP地址”,“端口號(hào)” 建立TCP連接,主站的IP地址必須為公網(wǎng)的IP地址,連接成功后返回“CONNECT OK”。
          ④AT+CIPSEND等待模塊返回“>”后,將要發(fā)送的數(shù)據(jù)送入GPRS模塊中,然后再發(fā)送回車,數(shù)據(jù)即可發(fā)送出去。
          若建立連接后長(zhǎng)時(shí)間沒(méi)有數(shù)據(jù)傳輸,移動(dòng)網(wǎng)關(guān)將會(huì)自動(dòng)關(guān)閉連接,重新分配IP地址。所以,為了保證網(wǎng)絡(luò)的正常連接,采用每2 min發(fā)送一個(gè)心跳包的方式。

          結(jié)語(yǔ)
          本文提出了一種基于微處理器和μC/OS-II操作系統(tǒng)的智能車載終端設(shè)計(jì)方案,利用GPS、GPRS和IC卡讀寫(xiě)等技術(shù),實(shí)現(xiàn)公交刷卡消費(fèi)和實(shí)時(shí)定位監(jiān)控等功能的一體化,將城市中所有的公交車連成一個(gè)網(wǎng)絡(luò)系統(tǒng),形成一個(gè)城市交通物聯(lián)網(wǎng)的雛形。實(shí)驗(yàn)證明,該智能車載終
          端具有模塊化、功耗低、性能穩(wěn)定、可擴(kuò)展等特點(diǎn)。

          蜂鳴器相關(guān)文章:蜂鳴器原理

          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: ARM LPC2103 &mu C/OS-II GPS GPRS

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();