亚洲精品影院一区二区-亚洲精品永久一区-亚洲精品中文一区不卡-亚洲精品中文字幕久久久久久-国产亚洲精品aaa大片-国产亚洲精品成人a在线

您好,歡迎光臨電子應用網![登錄] [免費注冊] 返回首頁 | | 網站地圖 | 反饋 | 收藏
在應用中實踐
在實踐中成長
  • 應用
  • 專題
  • 產品
  • 新聞
  • 展會
  • 活動
  • 招聘
當前位置:中國電子應用網 > 技術應用 > 正文

基于CAN總線的汽車CAN節點測試儀設計

2011年10月18日14:27:38 本網站 我要評論(2)字號:T | T | T
關鍵字:汽車 單片機 

關鍵字:CAN總線 節點測試儀

  CAN通訊程序包括SJA1000芯片的初始化、接收數據和發送數據。測試儀上電后進行SJA1000的初始化,該操作必須正確可靠,這是接收數據和發送數據的前提。根據SJA1000的手冊,設計 代碼如下:

writesja1000(MODADDR, 0x09);

   //設置方式寄存器,進入復位操作以初始化

writesja1000(CDRADDR, 0x88);

   //設置時鐘分頻寄存器,選PeliCAN模式

writesja1000(AMR0ADDR, AMR0 );

   //設置接收屏蔽寄存器0

writesja1000(AMR1ADDR, AMR1);

   //設置接收屏蔽寄存器1

writesja1000(AMR2ADDR, AMR2);

   //設置接收屏蔽寄存器2

writesja1000(AMR3ADDR, AMR3);

   //設置接收屏蔽寄存器3

writesja1000(ACR0ADDR, ACR0);

   //設置接收驗收代碼寄存器0

writesja1000(ACR1ADDR, ACR1);

   //設置接收驗收代碼寄存器1

writesja1000(ACR2ADDR, ACR2);

   //設置接收驗收代碼寄存器2

writesja1000(ACR3ADDR, ACR3);

   //設置接收驗收代碼寄存器3

writesja1000(BTR0ADDR, 0x03);

   //設置總線定時器0

writesja1000(BTR1ADDR, 0xFF);

   //設置總線定時器1

writesja1000(OCRADDR, 0xAA);

   //設置輸出寄存器

writesja1000(RBSAADDR, 0x00);

   //設置接收數據緩沖區首地址

writesja1000(TXERRADDR, 0x00);

   //清除發送錯誤寄存器

writesja1000(RXERRADDR, 0x00);

   //清除接收錯誤寄存器

readsja1000(ECCADDR);

   //清除錯誤代碼捕捉寄存器

writesja1000(IERADDR, 0xFF);

   //打開中斷使能寄存器

writesja1000(MODADDR, 0x08);

   //設置方式寄存器,進入政黨操作模式以收發數據

writesja1000()和readsja1000()是封裝好的底層函數,其具體實現如下:

static void writesja1000(unsigned char addr, unsigned char data)

{
  *SJAADDR = addr;

  *SJADATA = data;
}

static unsigned char readsja1000(unsigned char addr)

{
  *SJAADDR = addr;

   return *SJADATA;
}

  其中SJADATA、SJAADDR分別是為讀/寫SJA1000的數據或地址所分配的AT91RM9200地址。

  接收數據和發送數據均采用中斷來實現,基于中斷的數據處理流程是CAN通訊程序的重點,其具體實現流程如圖4所示:

  結束語

  與傳統的8/16位單片機測試儀系統相比,本文介紹的測試儀基于32位ARM9處理器,運行速度可高達180MHz,擴展能力強;采用Linux操作系統,軟件更加模塊化,更新和移植更加方便,運行更穩定;采用虛擬儀器技術實現測試儀的操作面板,便于功能擴展,通用性強。在對汽車CAN節點現場測試時,該測試儀運行穩定快速,保證了該產品的順利生產。

網友評論:已有2條評論 點擊查看
登錄 (請登錄發言,并遵守相關規定)
如果您對新聞頻道有任何意見或建議,請到交流平臺反饋。【反饋意見】
關于我們 | 聯系我們 | 本站動態 | 廣告服務 | 歡迎投稿 | 友情鏈接 | 法律聲明
Copyright (c) 2008-2025 01ea.com.All rights reserved.
電子應用網 京ICP備12009123號-2 京公網安備110105003345號