首页- 新闻中心- 正文

dsPIC30F系列写数据EEPROM技术

来源:芯片解密-龙芯世纪   时间:2010-08-03   阅读:2393

    要写EEPROM 数据存储单元,必须按照下列顺序进行:
  1. 擦除数据EEPROM 的字。
  a) 在NVMCON 寄存器中,选择字擦除数据EEPROM,并置1 WREN 位。
  b) 把要擦除的字的地址写入NVMADR。
  c) 允许NVM 中断(可选)。
  d) 把“55”写入NVMKEY。
  e) 把“AA”写入NVMKEY。
  f) 置1 WR 位。这将开始擦除周期。
  g) 查询NVMIF 位或等待NVMIF 中断。
  h) 当擦除周期结束时WR 位会被清零。
  2. 把数据字写入数据EEPROM 的写锁存器中。
  3. 把1 个数据字编程到数据EEPROM 中。
  a) 在NVMCON 寄存器中,选择字编程数据EEPROM,并置1 WREN 位。
  b) 允许NVM 写完成中断(可选)。
  c) 把“55”写入NVMKEY。
  d) 把“AA”写入NVMKEY。
  e) 置1 WR 位。这将开始编程周期。
  f) 查询NVMIF 位,或者等待NVM 中断。
  g) 当写周期结束时WR 位会被清零。
  此外,必须置1 NVMCON 中的WREN 位来使能写操作。这样的机制,防止由于不可预料的代码执行而意外地写数据EEPROM。除非在更新EEPROM 时,否则WREN位应该始终保持清零。硬件不能清零WREN位。在写过程启动之后,清零WREN 位将不会影响当前的写周期。禁止把WR 位置1,除非WREN 位已置1。必须在前一条指令中置1 WREN 位。不能在同一条指令中置1 WR 和WREN 位。
    对于每个字,如果上述序列(把0x55 写入NVMKEY,把0xAA 写入NVMCON,然后置1 WR 位)没有严格遵守的话,写操作不会启动。 强烈建议在这段代码执行期间,禁止中断。
  写周期结束时,硬件清零WR 位,非易失性存储器写完成中断标志位(NVMIF)置1。用户可以允许这个中断,或者查询这个标志位。NVMIF 必须由软件清零。 
     DSPIC30F系列DSP芯片解密是龙芯世纪科技近期取得重大技术突破的优势解密系列之一,这里我们仅提供对该系列芯片写数据EEPROM技术进行简单分析,欲了解更多技术详情或芯片解密服务详情者,欢迎与龙芯世纪科技联系,咨询电话:+86-0755-83757070  83346939。