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.

how to interface to a tms320 series MCU through SMBus?

Other Parts Discussed in Thread: BQ40Z60, CONTROLSUITE

Hi Everybody,

there is a battery management section in an application.

the bq40z60, a complete battery management IC ( charge + gauge + protection ), has been preferred to be selected if it can interface with a tms320 series MCU ( doesn't have SMBus ).

is it easy to implement SMBus using tms320 series MCUs?

(see: https://e2e.ti.com/support/power_management/battery_management/f/180/p/577069/2117899#2117899 )

regards,

Rasool

  • Hi Ras,

    Most C200 devices do not support SMBus natively, i.e. there is no HW module for it. The TMS320F28004x familIf y of devices does have a single PMBus hardware module, and can possibly work for your application.

    For other device families you would have to run SMBus over I2C. We do have an application library that implements PMBus over I2C - depending on what portions of the SMBus transport protocol you need, this library may be useful to you. 

    You can find the code in controlSUITE (C:\ti\controlSUITE\libs\app_libs\comms\PMBus\v100)

  • Hi Rasool,

    Ras Sharif50 said:
    is it easy to implement SMBus using tms320 series MCUs?

    You can very well build SMBUS over I2C and its not a daunting task at all. I've done the same and its performance is good enough. Though I didn't refer to the library Vishal suggested above.

    Regards,

    Gautam  

  • hi Gautam ,
    how should to do this?

    thank you,
    Rasool
  • Ras Sharif50 said:
    how should to do this?

    You can go through the PMBus implementation: 

    I'd a very customized requirement for SMBUS and hence I built the same over I2C by simply modifying the I2CRegs configuration and TX/RX routines. Once SMBUS was successfully built, the rest of the protocol with PEC, ARP, SMBALERT# was built later.

    Regards,

    Gautam