SPRA876B January   2003  – September 2017 TMS320C28341 , TMS320C28341 , TMS320C28342 , TMS320C28342 , TMS320C28343 , TMS320C28343 , TMS320C28343-Q1 , TMS320C28343-Q1 , TMS320C28344 , TMS320C28344 , TMS320C28345 , TMS320C28345 , TMS320C28346 , TMS320C28346 , TMS320C28346-Q1 , TMS320C28346-Q1 , TMS320F2801 , TMS320F2801 , TMS320F2801-Q1 , TMS320F2801-Q1 , TMS320F28016 , TMS320F28016 , TMS320F28016-Q1 , TMS320F28016-Q1 , TMS320F2802 , TMS320F2802 , TMS320F2802-Q1 , TMS320F2802-Q1 , TMS320F28030 , TMS320F28030 , TMS320F28030-Q1 , TMS320F28030-Q1 , TMS320F28031 , TMS320F28031 , TMS320F28031-Q1 , TMS320F28031-Q1 , TMS320F28032 , TMS320F28032 , TMS320F28032-Q1 , TMS320F28032-Q1 , TMS320F28033 , TMS320F28033 , TMS320F28033-Q1 , TMS320F28033-Q1 , TMS320F28034 , TMS320F28034 , TMS320F28034-Q1 , TMS320F28034-Q1 , TMS320F28035 , TMS320F28035 , TMS320F28035-EP , TMS320F28035-EP , TMS320F28035-Q1 , TMS320F28035-Q1 , TMS320F28050 , TMS320F28050 , TMS320F28051 , TMS320F28051 , TMS320F28052 , TMS320F28052 , TMS320F28052-Q1 , TMS320F28052-Q1 , TMS320F28053 , TMS320F28053 , TMS320F28054 , TMS320F28054 , TMS320F28054-Q1 , TMS320F28054-Q1 , TMS320F28055 , TMS320F28055 , TMS320F2806 , TMS320F2806 , TMS320F2806-Q1 , TMS320F2806-Q1 , TMS320F28062 , TMS320F28062 , TMS320F28062-Q1 , TMS320F28062-Q1 , TMS320F28062F , TMS320F28062F , TMS320F28062F-Q1 , TMS320F28062F-Q1 , TMS320F28063 , TMS320F28063 , TMS320F28064 , TMS320F28064 , TMS320F28065 , TMS320F28065 , TMS320F28066 , TMS320F28066 , TMS320F28066-Q1 , TMS320F28066-Q1 , TMS320F28067 , TMS320F28067 , TMS320F28067-Q1 , TMS320F28067-Q1 , TMS320F28068F , TMS320F28068F , TMS320F28068M , TMS320F28068M , TMS320F28069 , TMS320F28069 , TMS320F28069-Q1 , TMS320F28069-Q1 , TMS320F28069F , TMS320F28069F , TMS320F28069F-Q1 , TMS320F28069F-Q1 , TMS320F28069M , TMS320F28069M , TMS320F28069M-Q1 , TMS320F28069M-Q1 , TMS320F2808 , TMS320F2808 , TMS320F2808-Q1 , TMS320F2808-Q1 , TMS320F2809 , TMS320F2809 , TMS320F2810 , TMS320F2810 , TMS320F2810-Q1 , TMS320F2810-Q1 , TMS320F2811 , TMS320F2811 , TMS320F2811-Q1 , TMS320F2811-Q1 , TMS320F2812 , TMS320F2812 , TMS320F2812-Q1 , TMS320F2812-Q1 , TMS320F28232 , TMS320F28232 , TMS320F28232-Q1 , TMS320F28232-Q1 , TMS320F28234 , TMS320F28234 , TMS320F28234-Q1 , TMS320F28234-Q1 , TMS320F28235 , TMS320F28235 , TMS320F28235-Q1 , TMS320F28235-Q1 , TMS320F28332 , TMS320F28332 , TMS320F28333 , TMS320F28333 , TMS320F28334 , TMS320F28334 , TMS320F28335 , TMS320F28335 , TMS320F28335-Q1 , TMS320F28335-Q1 , TMS320R2811 , TMS320R2811 , TMS320R2812 , TMS320R2812

 

  1.   Programming Examples for the TMS320x28xx eCAN
    1.     Trademarks
    2. 1 Introduction
      1. 1.1 TMS320F28x eCAN Features
    3. 2 Programs
    4. 3 Debug and Design Tips to Resolve/Avoid CAN Communication Issues
      1. 3.1 Minimum Number of Nodes Required
      2. 3.2 Why a Transceiver is Needed
      3. 3.3 Debug Checklist
        1. 3.3.1 Programming Issues
        2. 3.3.2 Physical Layer Issues
        3. 3.3.3 Hardware Debug Tips
    5. 4 References
  2.   Revision History

Programming Issues

  • Is clock to the CAN module enabled? Check for this if writes to CAN registers are not going through. Clock is enabled through a bit in the PCLKCRn register.
  • Are 32-bit R/W operations used while accessing the eCAN registers? For an example, see the device-specific TRM.
  • Comment all EDIS from your code until you get it to work. You could add it later. Many registers and bits are EALLOW protected and a write may not go through if EALLOW is not active.
  • Try your code without interrupts first. Use polling instead. Once polling works, you can add interrupts later.
  • If a specific mailbox is not working, have you attempted to use a different mailbox? Have the mailboxes been enabled in the CANME register and the mailbox direction correctly configured in the CANMD register?
  • Was the MSGGID register initialized to zero, before the individual bits/Bit-fields were configured? Watch out for bits that may come up undefined upon reset.
  • Do not use Acceptance Mask Filtering initially. Transmit the same MSGID. Filtering could be added later once it is confirmed there are no hardware issues with the bus.