日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于S3C2410的CAN總線通信設計與開發(fā)

          基于S3C2410的CAN總線通信設計與開發(fā)

          作者: 時間:2013-02-27 來源:網絡 收藏


          圖2 濾池就地控制單元硬件結構圖

          3.1 接口軟件實現

          的SPI可以工作在四種模式,但是MCP2515的SPI接口只支持其中的兩種。因此應該將的SPI接口配置為MCP2515支持的模式工作。從圖1中可以看出的SPI應該配置為正常模式的中斷方式,具體配置操作請見參考文獻[2]。

          S3C2410-SPI的單個字節(jié)讀、寫函數實現如下:

          unsigned char ReadSPI( void )
          {
          SPRDAT0 = 0x00; // 初始化SPI總線
          while ( !REDY );
          // 判斷接收數據是否完成
          return ( SPRDAT0 );
          // 獲取接收到的數據
          }
          unsigned char WriteSPI( unsigned char data )
          {
          SPRDAT0 = data; // 寫數據到發(fā)送緩沖區(qū)
          if ( DCOL ) return ( -1 );
          // 判斷是否發(fā)生沖突,發(fā)生沖突則返回錯誤標準
          else while( !REDY );
          // 否則等待數據發(fā)送完成
          return ( 0 ); // 返回發(fā)送成功標準
          }

          對MCP2515的讀寫函數原型如下:

          void Mcp_Read( unsigned char Addr, unsigned char *ReadData, unsigned char Length );
          void Mcp_Write( unsigned char Addr, unsigned char *WriteData, unsigned char Length );
          Addr:要讀寫區(qū)域的首地址;
          ReadData/WriteData:讀取數據存放區(qū)、寫出數據緩沖區(qū)首地址;
          Length:要讀、寫數據的字節(jié)數。

          其它對MCP2515的操作在此不一一列舉,請見參考文獻[3]。

          3.2 總線數據收發(fā)軟件設計

          本設計采用外部中斷1響應MCP2515的總中斷,并且配置控制器始終處于喚醒模式,發(fā)送器工作在正常模式,使能接收、發(fā)送、錯誤中斷。中斷方式處理總線數據收發(fā)的流程如圖3,分別從發(fā)送處理、接收處理、錯誤處理三個部分加以說明。


          圖3 中斷方式實現CAN總線數據收發(fā)流程圖



          關鍵詞: S3C2410 CAN 總線通信

          評論


          相關推薦

          技術專區(qū)

          關閉