This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/BQ76PL455A-Q1: CAN communication in BQ76PL455A-Q1 Example Code

Part Number: BQ76PL455A-Q1
Other Parts Discussed in Thread: HALCOGEN, BQ76PL455A

Tool/software: Code Composer Studio

Hello.

We are using the BQ76PL455A-Q1 EVM along with Hercules TMS570LS04 LaunchPad for building a 48V BMS solution. We are working with the BQ76PL455A-Q1 Example Code (Rev. A) provided on the software tab of BQ76L455AQ1 product page. We want to enable CAN communication in the LaunchPad so that communication with an external controller can be done. We have successfully tested the CAN communication between two Hercules TMS570LS04 LaunchPads as per the Hercules CAN tutorials. We now want to include this CAN functionality with the BQ76PL455A-Q1 Example Code. How do we include the necessary header and source files? Is the HALCOGEN file for BQ76PL455A-Q1 Example Code available? How do we proceed?

Thank you in advance.

Regards,

Kartik

  • Hi Kartik,

    Thanks for the question! Unfortunately we don't have a ready made Halcogen file for this device but once you have all of the CAN functionality working and have enabled any peripherals with the TMS570 in Halcogen - you can begin to write or copy over desired portions of code to begin talking with the bq76pl455 device. The headers/source files of interest would be pl455.h, pl455.c and sysmain.c but you can also design from scratch using several examples from the code, which are described in the Software Design Reference document found under the "Technical Documents:" page. This document shows several commands sent in the example code converted to the hex values actually transmitted. You can then develop code by essentially just re-using the "WriteReg" and "ReadReg" functions to transmit data to/from the bq76pl455. Let us know if you run in to any issues.

    Best Regards,

    Taylor
  • Hello Taylor,
    Thank you for your quick reply.
    To clarify, we are not trying to communicate with the BQ76PL455A using CAN. We are fine with existing UART communication that is happening. What we are trying is that the TMS750LS0432 microcontroller that is running the BQ76PL455A software code, now needs to communicate with an external controller by means of CAN so as to transfer the cell monitoring values that it is receiving from BQ76PL455AQ1. In this context, before we begin CAN initialization and using canTransfer in the sysmain.c, how do we include the necessary CAN header/source files in the existing files of the BQ76PL455A software code? Can we simply copy the CAN related files from an HALCOGEN generated code and include it in the CCS project of BQ76PL455A software code? Are any other changes also necessary?
  • Hi Kartik,

    I would think that you can copy over the CAN files as you mentioned but this question is more suited for the TMS570 experts forum as this has to do with the CCS/Halocogen/CAN relationship rather than the pl455 device. Please reach out to them for advice here: e2e.ti.com/.../312 and I can further help troubleshoot communication to the pl455 device itself once you have it setup correctly.

    Hope this helps,

    Taylor
  • Hello Taylor,
    Thank you for your reply.