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.

BQ4050EVM-561: BQ4050EVM-561

Part Number: BQ4050EVM-561
Other Parts Discussed in Thread: BQ40Z50, BQSTUDIO, BQ40Z50-R1

hi,
Can you please tell me how to write in data flash via SM BUS of BQ4050EVM-561?
Or you can suggest me any document related to this.
I want actual sequence to write and read in data flash of BQ4050EVM-561.

Regards
Rahul

  • Hi Rahul,
    You can find instructions on reading and writing the dataflash in the "Data Flash Access()" section of the technical reference manual for bq40z50
    Regards,
    Swami
  • hi swami,

    I also use bq27750 in my own product but the problem is when I write in to the data flash then no data is write in to the register,

    for example : If I want to write on register CUV  Threshold ( address is 0x45FB ) and set 3000 mv by sending the I2C command format i.e. 

    Write : 3E FB 45 ( little endian )

    Write : 40 B8 0B ( little endian )

    Write : 60 FC 06 ( little endian )

    It will show default value 2500 mv, command is fail to write on the register.

    But the following write sequence is work on BQ27750EVM.

     

    Regards 

    Rahul Kumar

    8860719701

  • Hi Rahul,
    The bq40z50 uses SMBus protocol (www.ti.com/.../slua475.pdf) and it uses ManufacturerAccess() block read write to access the data flash.
    Instructions on reading and writing the dataflash in the "Data Flash Access()" section of the technical reference manual for bq40z50
    To write the "CUV Threshold" (location 0x484f in bq40z50-R1, location may differ for the different revisions of bq40z50, please check either the memory address using bqStudio or in the technical reference manual)on bq40z50:
    Write Block to 0x44, 0x4F 0x48 (setting the address)
    Read block 0x44, returns 34-bytes the first two bytes are 0x4F 0x48 (adrress being read "CUV Threshold"), next two bytes are the actual data 0xC4 0x09. So the current setting is 0x09C4 = 2500mV
    To change the setting to 3000mV (0x0BB8)
    Write block 0x44, 0x4F 0x48 0xB8 0x0B
    Read dataflash will show "CUV Threshold" changed to 3000mV
    Regards,
    Swami