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.

MSP430FR5847 current consumption before program user firmware

Other Parts Discussed in Thread: MSP430FR5847

Hi Community member,

My customer developing the product with MSP430FR5847.

They has a question, please let me confirm the following question.

[question]

1. How many current consumption when the power on  before programming user firmware ?

What is written to the FRAM at the factory shipment ?

If it is erase (0x0000?) the FRAM , operation mode is transition to LPM4 when first power on before programmed user firmware  .

Is this collect ?

If you have any questions, please let me know.

Best regards,

Yane

  • Hi Yane!

    Erased memory is set to '1', so all bytes are 0xFF. About the current-consumption: I don't know. Since there is nothing running it will be quite small. But wait for somebody else knowing more about that.

    Dennis
  • Section 1.2.1 of the User's Guide says:

    A device that is unprogrammed or blank is defined as having its reset vector value, residing at memory address FFFEh, equal to FFFFh. Upon system reset of a blank device, the device automatically enters operating mode LPM4.

    A factory-shipped chip has a blank reset vector, but I did not find any guarantee about the rest of the memory.

    In any case, it's possible that you will do your own testing before programming the actual firmware, or that you want to upgrade the firmware later, so it is always a good idea to initialize all memory that you want to have a specific value.

  • Indeed, while on flash-based devices, a mass erase will erase everything (including the reset vector) and is done before writing a new firmware (and likely before shipping, to erase any test firmware and reset the reset vector to 0xFFFF), on FRAM-based devices each memory cell can be written individually. So there is no need for a "mass erase" and it is not defined whether memory is reset to 0xFFFF before shipping.
    Also, if you upload a smaller firmware than the one before, I guess that the remaining space will still contain the old firmware parts.
    Clemens' advice to initialize everything you want to be initialized is a really good one.
    If you want parts of FRAM initialized at upload time only, rather place constant data there with your intended init value (so the area isn't initialized on every program start). You may even combine this: place a constant in FRAM that has a certain init value, and execute your iit function only if this value is still unchanged, then change it.

**Attention** This is a public forum