Flash program problem, help?

Started by volunteer_sysu April 11, 2006
I am trying to program a Flash device, SST39VF1601, via the UART.
The flash programmer is OK, and I can also write the first few
instructions into the device. But just after that, it stopped
working. I have tried many times, however, the results were the same.
The following were the several lines in HEX form that could be
written into the flash:

:2000000018F09FE518F09FE518F09FE518F09FE518F09FE5805F20B9F0FF1FE518F0
9FE5ED
:200020008C0000804000008044000080480000804C00008000000000000000005000
0080CC
:20004000FEFFFFEAFEFFFFEAFEFFFFEAFEFFFFEAFEFFFFEA0E00A0E1D3F021E3B4D0
9FE5C4

And the corresponding instrutions are:
_start: ldr pc, ResetAddr
ldr pc, UndefinedAddr
ldr pc, SoftwareAddr
ldr pc, PrefetchAddr
ldr pc, DataAbortAddr
.word 0xb9205f80
ldr pc, [pc, #-0xff0]
ldr pc, FastAddr

ResetAddr: .word ResetInit
UndefinedAddr: .word Undefined
SoftwareAddr: .word SWI_Handler
PrefetchAddr: .word PrefetchAbort
DataAbortAddr: .word DataAbort
Non_Used: .word 0
InterruptAddr: .word 0
FastAddr: .word FIQ_Handler

Undefined:
b Undefined
SWI_Handler:
b SWI_Handler
PrefetchAbort:
b PrefetchAbort
DataAbort:
b DataAbort
FIQ_Handler:
b FIQ_Handler
/* Initialize the stacks for each mode */
StackInit:
mov r0, lr
/* build the SVC stack */
msr cpsr_c, #0xd3
ldr sp, =_svc_stack /*_svc_stack is defined in link
the file*/

24 instuctions in total; It's at the last one that the programmer
stopped.

What's the problem? Hopefully someone could help me?

Thanks in advance!

Best regards,

Kevin

An Engineer's Guide to the LPC2100 Series