新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > AT90CAN單片機(jī)CAN通信模塊介紹及軟件編程

AT90CAN單片機(jī)CAN通信模塊介紹及軟件編程

作者: 時間:2010-12-09 來源:網(wǎng)絡(luò) 收藏

  for(i = 0;i8;i++) {

  MSG=PCSJ[i]; //將接收到的數(shù)據(jù)發(fā)送回上位機(jī)

  }

  CDMOB=0x58;//使能發(fā)送

  STMOB=~(1TXOK);//清TXOK標(biāo)志

  wait(2);

  }

  }

  實例中數(shù)據(jù)接收由MOB5產(chǎn)生中斷完成,中斷服務(wù)子程序如下:

  #pragma interrupt_handler can_isr:19//CAN控制器中斷向量入口

  void can_isr(void) {

  if ((CANSIT2 0x20)==0x20) {//判斷是否是MOB5產(chǎn)生中斷

  CANPAGE=0x50;

  for(i = 0; i 8; i++) {

  PCSJ[i] =CANMSG;

  }

  CANSTMOB = 0x00; //清狀態(tài)位

  CANCDMOB = 0x98;//重新使能接收功能

  }

  }

  4 結(jié)論

  AVR系列內(nèi)部有可編程的Flash,自帶EEPROM,支持JTAG接口片內(nèi)調(diào)試和對Flash、EEPROM、熔絲位和鎖定位的編程,因此成為眾多芯片的首選。其內(nèi)部集成了獨立CAN控制器的系列,彌補(bǔ)了單片機(jī)在CAN總線應(yīng)用中的缺陷,不必再擴(kuò)展外圍的CAN控制芯片,簡化了硬件電路設(shè)計。本文通過對系列單片機(jī)CAN的詳細(xì),旨在說明如何對其進(jìn)行編程實現(xiàn)CAN通信功能,為使用單片機(jī)進(jìn)行CAN通信的初學(xué)者提供了編程參考。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉