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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 基于DSP和FPGA的磁浮列車同步485通信方式的研究

          基于DSP和FPGA的磁浮列車同步485通信方式的研究

          作者: 時間:2009-05-18 來源:網(wǎng)絡(luò) 收藏

            由于傳送到的一幀數(shù)據(jù)為72bits,因此通過16bits數(shù)據(jù)線傳輸需要分5次才能傳送完,每16bits數(shù)據(jù)到達時產(chǎn)生一次外部中斷。設(shè)波特率時鐘為512k,假設(shè)來自定位單元完整的一幀數(shù)據(jù)為0x02123456789abcde03,車載電單元通過16bits數(shù)據(jù)線分次轉(zhuǎn)發(fā)到的數(shù)據(jù)則為0x0002, 0x1234, 0x5678, 0x9abc,0xde03 。數(shù)據(jù)及中斷信號產(chǎn)生的時序如圖6所示。由圖6可以看出,每對應移出一次dataout,都會相應地發(fā)出一個外部中斷信號xint1,一旦接收到外部中斷便在中斷服務子程序中從16bits數(shù)據(jù)線讀取信號值。為了完整的接收一幀信號,可在外部中斷服務程序中定義一個16級FIFO,當從FIFO的最底層讀出的數(shù)據(jù)為0x02時,便可以判斷一幀數(shù)據(jù)的開始(若在用戶數(shù)據(jù)和校驗值中存在0x02則要進行相應的字符轉(zhuǎn)義),依次接收以下的數(shù)據(jù)便得到完整的一幀定位信息。

          圖6 車載電傳輸單元DSP讀數(shù)據(jù)的仿真波形

          2 雙方的原理圖

            根據(jù)以上對485實現(xiàn)方法的描述,在ISE中利用ECS工具所描繪的頂層原理圖如下,包括測速定位單元數(shù)據(jù)發(fā)送和車載電控制單元數(shù)據(jù)接收。

            定位測速單元同步數(shù)據(jù)發(fā)送方的原理圖如圖7所示。

          圖7 同步數(shù)據(jù)發(fā)送方原理圖

            圖7中,addr_decode為地址譯碼模塊,用于從DSP完整地接收一幀定位信息;tra485data為串行數(shù)據(jù)及門控信號發(fā)送模塊。其中,din(15:0)直接來自DSP的16bits數(shù)據(jù)線;addr(3:0)與DSP的A17-A14地址線相連;clkin及anfin信號由車載無線電控制單元提供。輸出的dataout及uefout經(jīng)過輸出緩沖及差分電平轉(zhuǎn)換后送給車載無線電控制單元。

            車載無線電控制單元同步數(shù)據(jù)接收方的原理圖如圖8所示。

          圖8 同步數(shù)據(jù)接收方原理圖

            圖8中,divide_512k為發(fā)送時鐘產(chǎn)生模塊,產(chǎn)生所需的波特率時鐘;anf_shift 用于產(chǎn)生無線電請求信號;rec485data用于串行接收定位信息并通過dataconvert模塊轉(zhuǎn)發(fā)到。其中,Dataout(15:0)直接通過數(shù)據(jù)線連到DSP,Xint1則連到DSP的外部中斷1。anfout和clkout由輸入的晶振頻率分頻后得到,經(jīng)輸出緩沖及差分電平轉(zhuǎn)換后送給車輛測速定位單元。

          3 結(jié)束語

            在高速特殊的通信環(huán)境中,物理層的體現(xiàn)出其抗干擾性強、實時性好,誤碼率低等優(yōu)點,且實現(xiàn)原理簡單,硬件連接也不復雜。利用所實現(xiàn)的通信設(shè)計靈活、可靠性高,其功能在實際應用中已得到驗證,且效果良好。



          上一頁 1 2 3 下一頁

          評論


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