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.

MSP430F4152 INFO_A能否擦除

Other Parts Discussed in Thread: MSP430F4152

最近在学习MSP430F4152 INFO段的读写操作,但网上部分网友反映INFO段的A段不能擦出,A段保存单片机部分数据,擦除单片机会出问题,请问各位专家MSP430F4152单片机能否擦除A区???

    • void write_SegA (char value)
      {
        int *Flash_ptr;                          // Flash pointer
        unsigned char i;

        Flash_ptr = (int *) 0x1080;              // Initialize Flash pointer
        FCTL1 = FWKEY + ERASE;                    // Set Erase bit
        FCTL3 = FWKEY;                            // Clear Lock bit
        *Flash_ptr = 0;                           // Dummy write to erase Flash segment

        FCTL1 = FWKEY + WRT;                      // Set WRT bit for write operation

        for (i=0; i<128; i++)
        {
          *Flash_ptr++ = value;                   // Write value to flash
        }

        FCTL1 = FWKEY;                            // Clear WRT bit
        FCTL3 = FWKEY + LOCK;                     // Set LOCK bit
      }

  • 如果不需要使用INFO_A段里的那些数据,完全可以进行擦除掉。

    擦除INFO_A段flash时记得先解锁。

  • 十分感谢您的帮助,我看到的A段里面都是FF,论坛之前有人说A段保存单片机参数,比如晶振校正参数之类的,想问您下,什么情况下才可以确定“完全可以进行擦除掉”。

  • 这个应该是段长度128的程序,段长度64的是否一样。另外,论坛有人说A段保存晶振校正参数之类的数据,不建议擦除,请教您,4152能否擦除?

  • 强烈建议不要擦除,因为里面保存了DCO和内部温度传感器的校正值。

    另外如果需要使用information bank的话,建议还是使用 B,C,D三个区。

    谢谢