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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種CAN總線高層通信協(xié)議的設(shè)計(jì)與實(shí)現(xiàn)

          一種CAN總線高層通信協(xié)議的設(shè)計(jì)與實(shí)現(xiàn)

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

          對(duì)于每個(gè)模塊,上電1s后若未收到任何通信信息,則按計(jì)算延時(shí)發(fā)送自身的地址碼和溫度電流采樣值。延時(shí)時(shí)間的計(jì)算為[6]:

          tdelay=t×add

          其中:tdelay-為延時(shí)發(fā)送時(shí)間;

          t-為單位延時(shí)時(shí)間常數(shù),該值根據(jù)通信速率定義;可以取1個(gè)位周期,在波特率為100khz時(shí)為10μs;

          add-為模塊地址編碼。

          主模塊是id10=0的模塊,因此具有最高的優(yōu)先級(jí)。上電后主模塊首先向總線廣播發(fā)送自身的地址碼和溫度電流采樣值,然后即按順序向從機(jī)發(fā)送指令,等待從機(jī)的回答。主機(jī)1秒鐘后若未收到任何通信信息則認(rèn)為該模塊出錯(cuò),發(fā)出報(bào)警。同樣從機(jī)1s后若未收到主機(jī)任何通信信息則認(rèn)為主機(jī)出錯(cuò),按照源地址優(yōu)先級(jí)由其 余模塊中地址最低的模塊充當(dāng)主模塊,并將其id10由1改為0,以獲得最高通信優(yōu)先權(quán)。

          各模塊檢測(cè)到自身故障時(shí),將切斷輸出,退出通信,并向上位機(jī)報(bào)警,同時(shí)發(fā)出聲光報(bào)警。

          5 結(jié)束語(yǔ)

          本文中所介紹的can通信協(xié)議,結(jié)構(gòu)簡(jiǎn)單、使用靈活、可靠性極高,實(shí)現(xiàn)也比較容易。很適合在節(jié)點(diǎn)數(shù)不多、通信可靠性要求高、控制結(jié)構(gòu)較簡(jiǎn)單的小型控制系統(tǒng)中應(yīng)用,具有一定的實(shí)用價(jià)值。

          參考文獻(xiàn)

          [1] can基本知識(shí)[eb]. http://www.zlgmcu.com.

          [2] 控制器局域網(wǎng)(can)未來(lái)的工業(yè)微處理器串行通訊[eb]. http://www.zlgmcu.com.

          [3] 周立功等. 增強(qiáng)型80c51單片機(jī)速成與實(shí)戰(zhàn)[m]. 北京:北京航空航天大學(xué)出版社,2003.

          [4] 饒運(yùn)濤等.現(xiàn)場(chǎng)總線can原理與應(yīng)用技術(shù)[m]. 北京:北京航空航天大學(xué)出版社,2003.

          [5] 蔣建文等. can總線通信協(xié)議的分析和實(shí)現(xiàn)[j]. 計(jì)算機(jī)工程,2002,2.

          [6] 鄭尊標(biāo).數(shù)字化智能電源模塊研究[d]. 浙江:浙江大學(xué),2001.

          [7] canbus現(xiàn)場(chǎng)總線基礎(chǔ)方案芯片篇[eb]


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

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(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); })();