我在使用一个intel的flash(28F160 C3 T)的时候遇到了一个奇怪的问题:
flash给每个block都加了软件锁,我用解锁命令d0可以解开所有31个64K的block,但是到了8个8K的block却一个都解不开,请高手指点
谢谢!
[em17] [align=right][color=#000066][此贴子已经被作者于2004-12-14 17:04:50编辑过][/color][/align]参考:
#define UNLOCK_STP1 0x6060 #define UNLOCK_STP2 0xd0d0
void unlckAllBlk(void) { volatile USHORT *br; ULONG flEndAddr; ULONG i; br = (USHORT *)FLASH_BASE_ADRS; flEndAddr = FLASH_BASE_ADRS + FLASH_SIZE; for(i=0; i<SMALL_BLK_NUMS; i++) { wtFlashReg(br, UNLOCK_STP1); wtFlashReg(br, UNLOCK_STP2); br = br + SMALL_BLK_WD_SIZE; } while((ULONG)br < flEndAddr) { wtFlashReg(br, UNLOCK_STP1); wtFlashReg(br, UNLOCK_STP2); br = br + BIG_BLK_WD_SIZE; } }