新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 基于LabVIEW的CSDB總線數(shù)據(jù)測試技術(shù)

基于LabVIEW的CSDB總線數(shù)據(jù)測試技術(shù)

作者: 時(shí)間:2010-11-05 來源:網(wǎng)絡(luò) 收藏

  原理

  對總線信號進(jìn)行,是先將信號電平轉(zhuǎn)換為和計(jì)算機(jī)適應(yīng)的RS-232電平,再根據(jù)總線的規(guī)則,實(shí)現(xiàn)對控制信息的正確發(fā)送和實(shí)時(shí)反饋信息的正確接收,并根據(jù)需要,將有用信息提出送系統(tǒng)處理,完成對航空機(jī)載設(shè)備的自動(dòng)化測試。具體步驟分為信號電氣轉(zhuǎn)換、通信同步、實(shí)現(xiàn)。

  圖2 CSDB總線信號通信原理框圖

  通信配置

  (1)電氣轉(zhuǎn)換

  CSDB總線信號經(jīng)過電氣轉(zhuǎn)換芯片后直接與計(jì)算機(jī)進(jìn)行串口通信。在進(jìn)行RS-422-A到RS-232的電氣標(biāo)準(zhǔn)轉(zhuǎn)換時(shí),使用MAX488全雙工電平轉(zhuǎn)換芯片。

  (2)通信同步

  CSDB總線為異步串行通信,按照串行數(shù)據(jù)傳輸?shù)幕驹?,?shí)現(xiàn)正確通信的基本條件是保持接收和發(fā)送雙方時(shí)鐘一致,以避免發(fā)送與接收雙方的數(shù)據(jù)位寬產(chǎn)生累積誤差,造成不能正確檢測到總線數(shù)據(jù)。在串行通信中,信息是按位傳送的,傳送速率用波特率表示,數(shù)據(jù)的發(fā)送和接收受各自的時(shí)鐘控制,因此,發(fā)送方和接收方的波特率應(yīng)保持一致。經(jīng)對具體部品測試,CSDB數(shù)據(jù)總線數(shù)據(jù)波特率為12.5Kbit/s,為與此同步,要求計(jì)算機(jī)產(chǎn)生的波特率也應(yīng)為12.5Kbit/s。

  如圖2所示,在計(jì)算機(jī)中負(fù)責(zé)串行通信的器件為8250異步通信適配器(UART),或其兼容元器件,程序通過對8250內(nèi)部的寄存器讀寫來控制通信模式,8250使用頻率為1.8432MHz的基準(zhǔn)時(shí)鐘輸入信號作為主數(shù)據(jù)時(shí)鐘,通過對8250內(nèi)部寄存器置位來獲得需要的波特率。在異步串行通信中,為防止由于信號畸形、不同步等原因造成對數(shù)據(jù)的誤讀,通信適配器規(guī)定每讀取或發(fā)送1bit數(shù)據(jù)至少要用16個(gè)時(shí)鐘脈沖來控制其波特率,實(shí)際應(yīng)用中波特率時(shí)鐘是主時(shí)鐘的1/16或1/(16×N),對于要求的波特率,在寫寄存器時(shí)用如下公式計(jì)算除數(shù)因子:

  除數(shù)因子=(主數(shù)據(jù)時(shí)鐘頻率/16)/波特率=115200/波特率

  在算出除數(shù)因子后,將相應(yīng)數(shù)據(jù)寫入8250內(nèi)部的波特率設(shè)置寄存器,即可在串口得到相應(yīng)波特率的數(shù)據(jù)。經(jīng)計(jì)算,115200除以12500后不為整數(shù),所以,受到計(jì)算機(jī)異步通信適配器8250的限制,在波特率設(shè)置上不能完全和12.5Kbit/s相同,經(jīng)計(jì)算,當(dāng)除數(shù)因子取9時(shí)對應(yīng)的波特率為12.8Kbit/s,與CSDB總線要求的波特率最為接近,其每bit占據(jù)78?S,相對80?S/bit(12.5Kbit/s)誤差為0.25%,小于串行通信波特率最大容許誤差5%,理論上可實(shí)現(xiàn)通信同步,因此在程序上將通信的波特率設(shè)置為12.8Kbit/s。



評論


相關(guān)推薦

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

關(guān)閉