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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Small RTOS51 下CAN總線數(shù)據(jù)收發(fā)實現(xiàn)

          Small RTOS51 下CAN總線數(shù)據(jù)收發(fā)實現(xiàn)

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

          1 簡介

          現(xiàn)場技術(shù)FCS(Fieldbus Control System)成為當(dāng)今工業(yè)自動化技術(shù)發(fā)展的熱點,德國Bosch公司的(1Mbit/s)是國際標(biāo)準(zhǔn)之一,也是Controller Area Network 的應(yīng)用標(biāo)準(zhǔn)。它屬于現(xiàn)場范疇,是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò)。由于其高性能、高可靠性、及獨特設(shè)計,總線已成為目前國外最普及和實時性最高的現(xiàn)場總線。CAN總線在可靠性和實時性方面遠(yuǎn)遠(yuǎn)優(yōu)于RS-485等工業(yè)現(xiàn)線CAN總線主要有下列特征:

          1. 信號采用差分電壓傳輸,兩條信號線”CAN_H”和” CAN_L”。

          2. 傳輸介質(zhì)可用雙絞線、同軸電纜或光纖,具有較強的抗干擾能力。直接通信距離最大可達10km(速率小于5kbit/s),最高通信速率可達1Mbit/s(此時距離最長為40m)。

          3. 節(jié)點不分主從,節(jié)點任意時刻可向其他節(jié)點發(fā)送信息,依據(jù)優(yōu)先權(quán)進行總線訪問,滿足不同的實時要求。

          4. 采用非破壞性基于優(yōu)先權(quán)總線仲裁技術(shù)。

          5. 采用短幀結(jié)構(gòu),每幀為8bit,保證了出錯率低。

          6. 可以點對點、點對多點及全局廣播方式傳送接收。

          7. 發(fā)送期間若丟失仲裁或由于出錯而遭破壞的幀可自動重發(fā)送。
          2 簡介

          是一個用于8051系列單片機的多任務(wù)實時操作系統(tǒng)。8051系列單片機一般只有很少的ROM和RAM資源,如P89C51只有4KB Flash和128字節(jié)RAM。一般的實時操作系統(tǒng)如RTX Tiny 雖然小,但是任務(wù)沒有優(yōu)先級和中斷管理,也無源代碼,而uc/os-II規(guī)模太大,需要大量外部RAM?;诖?, 是專為51 單片機編寫嵌入式操作系統(tǒng),它使用了RTX51 Tiny 的堆棧管理機制,并像uc/os-II一樣是搶占式的。

          3 一個典型的CAN節(jié)點

          3.1.CAN總線接口的結(jié)構(gòu)

          一個CAN總線接口有3 部分組成,如圖(a)所示,它們分別對應(yīng)于CAN總線的物理層、數(shù)據(jù)鏈路層和應(yīng)用層。

          最上層為微控制器,主要負(fù)責(zé)上層應(yīng)用以及系統(tǒng)控制,包括CAN協(xié)議的應(yīng)用層協(xié)議的,協(xié)調(diào)各系統(tǒng)設(shè)備的工作。(本設(shè)計采用的MCU是8051)

          中間層為CAN控制器,CAN控制器負(fù)責(zé)處理數(shù)據(jù)幀,完成數(shù)據(jù)的打包、解包,錯誤界定,并提供報文緩沖和傳輸濾波。(本設(shè)計采用的CAN總線控制器是Philips公司生產(chǎn)SJA1000)

          最底層為CAN器,主要是接口電平的轉(zhuǎn)換,接口電器特性的處理。(本設(shè)計采用82C250)

          (a)CAN接口結(jié)構(gòu)



          3.2.節(jié)點電路設(shè)計

          (1)SJA1000與單片機接口電路



          (b)SJA1000與單片機接口電路

          SJA1000 的AD0-AD7與單片機的數(shù)據(jù)總線相連,地址A17作為SJA1000的片選使能端,由ALE、WR、RD控制SJA1000 數(shù)據(jù)的發(fā)送和接收。注意SJA1000復(fù)位端的連接,單片機是高電平復(fù)位,而SJA1000是低電平復(fù)位,因此復(fù)位信號要通過一個反相器與SJA1000復(fù)位端相連。另外SJA1000的11腳MODE接高電平,選擇Intel二分頻模式 。SJA1000的16腳時中斷信號輸出,在中斷允許情況下,有中斷發(fā)生時,16腳出現(xiàn)有高電平到低電平的跳變。因此16腳可以直接與單片機的外部中斷輸入腳相連接。

          SJA1000的ODE引腳可選擇接口模式:

          ◆Intel模式MODE高

          ◆M0torola模式MODE低


          上一頁 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); })();