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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 車輛模擬駕駛訓練系統(tǒng)動感系統(tǒng)設(shè)計

          車輛模擬駕駛訓練系統(tǒng)動感系統(tǒng)設(shè)計

          作者: 時間:2016-11-28 來源:網(wǎng)絡(luò) 收藏


          4.1 HMR3000與MCU的通信協(xié)議

          HMR3000的串行通信是根據(jù)NMEA0183標準制定的簡單的ASCⅡ協(xié)議,可以在單片機系統(tǒng)中使用RS-232或RS-485接口電路。ASCⅡ碼的傳輸和接收使用1位起始位、8位數(shù)據(jù)位、無奇偶校驗位和I位停止位,每個碼有10位。數(shù)據(jù)傳輸率可選擇l200 bit/s、2 400 bit/s、4 800 bit/s、9 600 bit/s、19 200bit/s、38 400 bit/s。

          4.2 MCU接收HMR3000的數(shù)據(jù)

          啟動HMR3000后,設(shè)定好HMR3000的數(shù)據(jù)單位、進制及其數(shù)據(jù)采集速率,每次數(shù)據(jù)采集后HMR3000自動向MCU發(fā)送數(shù)據(jù)。由于它采用NMEA0183協(xié)議標準的HPR格式即“$PTNTHPR,x..x,a,x..x,a,x..x,a*hh”格式輸出,此格式中不僅含有效數(shù)據(jù)“x..x”和其狀態(tài)“a”,還包含有‘$’、‘P’、‘T’、‘*’、‘h’等相關(guān)格式字符,因此在程序中要加以區(qū)分。動感系統(tǒng)中將字符‘$’作為一組有效數(shù)據(jù)傳輸?shù)拈_始,將字符‘*’作為一組有效數(shù)據(jù)傳輸?shù)慕Y(jié)束,并通過計算接收逗號‘,’的個數(shù)判斷有效數(shù)據(jù)的開始。MCU接收HMR3000的數(shù)據(jù)流程如圖4所示。





          4.3 nRF905與MCU的通信協(xié)議

          nRF905與MCU之間的通信采用SPI通信協(xié)議,使用2條控制信號線CSN、SCK和2條數(shù)據(jù)信號線MOSI、MISO進行通信。CSN用來控制外圍設(shè)備的選通(低電平有效),SCK提供同步時鐘,MOSI、MISO分別為主從設(shè)備的輸入/輸出線。在SPI通信過程中,主從設(shè)備均在時鐘的下降沿從各自的輸出線輸出1位數(shù)據(jù),在時鐘的上升沿從各自的輸入線讀入l位數(shù)據(jù)。

          4.4 nRF905發(fā)送和接收數(shù)據(jù)

          nRF905發(fā)送或接收數(shù)據(jù)時必須嚴格遵守發(fā)送或接收時序,否則將導致發(fā)送或接收失敗。

          4.4.1 發(fā)送數(shù)據(jù)

          nRF905的發(fā)送時序如圖5所示,其中.TA-TB是nRF905的命令字寄存器、匹配地址寄存器和發(fā)送數(shù)據(jù)寄存器編程時間;TD-Tl是發(fā)送啟動脈沖,至少為10μs;T1-T2是nRF905的自動編碼,至少為650 μs;T2-T3是自動發(fā)送數(shù)據(jù);T3是發(fā)送結(jié)束時DR置高電平,表示發(fā)送結(jié)束。具體步驟如下:




          (1)給nRF905上電后,MCU將TX_EN置為高電平,將TRX_CE置為低電平,使nRF905進入發(fā)送模式;

          (2)MCU通過SPI接口按照SPI通信協(xié)議向nRF905寫命令字、匹配地址和將要發(fā)送的數(shù)據(jù);

          (3)使TRX_CE產(chǎn)生1個至少10 μs的發(fā)送脈沖;

          (4)nRF905接到發(fā)送脈沖后自動編碼、自動發(fā)送。如果nRF905命令字寄存器中的AUTO_RE-TRAN位被設(shè)置為高電平,則nRF905不斷重發(fā),直到TRX_CE被置高電平;

          (5)nRF905發(fā)送數(shù)據(jù)后,DR自動置高電平。MCU可以通過DR判斷發(fā)送完畢與否。以便發(fā)送下一組數(shù)據(jù)。

          4.4.2 接收數(shù)據(jù)

          nRF905接收時序如圖6所示,具體步驟如下:

          (1)給nRF905上電后,MCU通過將TX_EN置低電平和TRX_CE置高電平,使nRF905進入接收模式(圖6中的TA時刻);





          (2)650μs后,nRF905開始檢測有無發(fā)送的數(shù)據(jù)(圖6中的T0時刻);

          (3)當nRF905探測到有接收頻率的載波時,將CD置高電平(圖6中的Tl時刻);

          (4)當nRF905接收完有效匹配地址后,將AM置高電平(圖6中的T2時刻);

          (5)當nRF905接收完有效數(shù)據(jù)且CRC檢驗正確后,將DR置高電平(圖6中的T3時刻);

          (6)MCU在DR變高電平后可以通過SPI讀取nRF905接收的數(shù)據(jù)。

          4.5 動感控制部分的編程

          根據(jù)硬件電路的連接,可以利用外部中斷0服務(wù)程序?qū)崿F(xiàn)動感的實時控制,這樣,MCU在DR變成高電平后即可控制動感平臺動作,提高了實效性。程序流程如圖7所示。





          5 結(jié)束語

          據(jù)考證,國內(nèi)現(xiàn)有的車輛統(tǒng)均未安裝動感系統(tǒng)。車輛模擬駕駛動感系統(tǒng)具有廣闊的發(fā)展前景。本文為該系統(tǒng)的設(shè)計提供了切實可行、安全可靠的參考設(shè)計方案。

          上一頁 1 2 下一頁

          關(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); })();