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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于CAN總線的87C196CA在單片機串行通訊的應用

          基于CAN總線的87C196CA在單片機串行通訊的應用

          作者: 時間:2012-05-22 來源:網(wǎng)絡 收藏

          3 通訊軟件

            對于通過CAN 總線連接的單片機之間的通訊軟件編程需要定義一系列的控制字,并在兩個單片機上進行配置。即首先進行上電初始化,定義CAN控制寄存器,定義位定時寄存器選擇CAN 的通訊速率,定義信息體屏蔽寄存器選擇接收對象。其次對信息體進行初始化,分別定義兩個信息體工作模式、發(fā)送字節(jié)數(shù)、選擇CAN2.0A 或CAN2.0B 方式。其程序代碼:

            / *CAN 控制器初始化*/

            can_con = 0x41 ; / *CAN 控制器CCE 位置1 ,

            則可以定義CAN 定器* /

            can_ btime0 = 0x41 ; /* 定義CAN 定時器為

            250 Kb/ s * /

            can_btime1 = 0x67 ;

            can_con = 01 ; / *允許對CAN 控制器進行軟

            件初始化* /

            can_sgmsk = 0x0 ; / * 定義標準CAN 通訊格

            式的屏蔽控制字,所有位都不濾紙*/

            can_msg1con0 = 0x55 ; / * 信息體1 控制器0

            初始化* /

            can_msg1con1 = 0x55 ; / * 信息體1 控制器1

            初始化* /

            can_msg1cfg = 0x88 ; / *定義信息體1 為發(fā)

            送,發(fā)送8 字節(jié),標準CAN 格式* /

            can_msg1id = 0xc8c8c8c8 ; / * 信息體1 標識

            寄存器初始化標識符為c8c8c8c8 ;

            can_ msg1con0 = ox95 ; / * 信息體1 控制器

            0MSGVAL 位置1 ,標明信息體1 有效* /

            can_msg2con0 = 0x55 ; / * 信息體2 控制器0

            初始化* /

            can_msg2con1 = 0x55 ; / *信息體2 控制器1

            初始化* /

            can_msg2cfg = 0x80 ; / *定義信息體2 為接

            收,接收8 字節(jié),標準CAN 格式* /

            can_msg2id = 0xc8c8c8c8 ; / *信息體2 標識

            寄存器初始化標識符為c8c8c8c8 */

            can_ msg2con0 = ox95 ; / * 信息體2 控制器

            0MSGVAL 位置1 ,標明信息體2 有效 */

            can_con = 0x02 ; / * CAN 控制器軟件初始化

            完成*/

            / *發(fā)送8 字節(jié)數(shù)據(jù): * /

            can_msg1con1 = 0x5a ; / * CPUUPD 置1 ,使

            軟件刷新數(shù)據(jù),NEWDA T 置1 使信息置1 使信息

            體有效* /



          評論


          相關推薦

          技術專區(qū)

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