高性能FLASH存储器在DSP电机智能保护中的应用
处于正确状态,当CE或WE不是低电平或OE不是高电平时,编程操作将被禁止。
本文链接地址:http://www.oyaya.net/fanwen/view/157158.html
由于在32位浮点芯片TMS320C32进行硬件连接时,采用的是4片数据宽度为8位的Flash来作为一片数据宽度为32位的Flash使用,所以在实际的总线操作过程中,向对应地址写入的数据应为8位16进制数据。例如芯片复位操作时,写入某一地址的数据应该是0xF0F0F0,而不应是单片时写入的0xF0。其软件命令序列可同时参见表1。
表1 Am29F010B编程命令序列表
在Am29F010B擦除及编程操作中使用检测机制可确保操作的正确性和有效性。其核心代码如下:
flash_rase:
……
check_rase:LDI *AR0,R0
NOP
NOP
XOR *AR2,R0
BNZ check_rase
……
RETS
flash_prog:
……
check_prog:LDI * -AR1,R0
NOP
NOP
XOR *-AR1,R0
BNZ check_prog
……
RETS
在将数据或程序烧写到Am29F010B时,应先单步执行烧写程序,同时应观察烧写程序执行过程中有无异常。笔者曾遇到过的FLASH的操作指令代码执行后变成.word XXH的情形,后来经检查发现是由于芯片Am29F010B的地址线引脚再现虚焊所致;另一方面,还要观察在仿真开发环境的存储区查看窗口,以观察FLASH内相应单元内容的变化有否异常
《高性能FLASH存储器在DSP电机智能保护中的应用(第3页)》