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.

SPI EEPROM programming failure

Other Parts Discussed in Thread: CCSTUDIO

Hi!

I'm trying to program the SPI EEPROM on the EVM5505 board. I've converted the COFF file to a binary file suitable for programming, using hex55 v4.3.5.

> hex55.exe -boot -v5505 -serial8 -b -o output.bin program.out
Translating program.out to Binary format...
"program.out" ==> vector (BOOT LOAD)
"program.out" ==> .cinit (BOOT LOAD)
"program.out" ==> .const (BOOT LOAD)
"program.out" ==> .switch (BOOT LOAD)
"program.out" ==> .text (BOOT LOAD)

I've loaded the programmer.out (available at C:\CCStudio_v3.3\boards\evm5505_v1\demo\programmer.out) into the board. The programming dialog can be seen below:

Choose the device...
0XX - CPLD setup only
1x - NAND Flash [CSx: 2,3,4,5]
2x - NOR Flash [CSx: 2,3,4,5]
3x - SPI EEPROM [x=1: EVM, x=2: USB Stick]
4 - IIC EEPROM
5 - MMC; 6 - SD
31
Operation to perform...
0 - CPLD setup for this device
1<file> - Program device with <file>
2<file> - Read device data to output <file>
1c:\output.bin
SPI EEPROM...
Writing data to device...
Opening c:\output.bin...
Input file opened
WRITE ERROR! at 0x0000
Wrote 0x0001 Read 0x0003

  • Hi Reine Johansson,

    I am sorry that you experienced the problem. The hex55 and the programmer tools looks OK. I think somehow writing did not work. It seems to me that it is a hardware problem. Please check the SPI signlas when the programmer tries to write with Scope. If the signals and data commands are correct, then it should be the EEPROM problem.  

    Best Regards,

    Peter Chung

     

  • Thanks for the reply!

    I hooked up a scope today to read the SPI communication, and suddenly the programming was successful. I disconnected the scope and the programming still succeeded. I have no idea why it failed repeatedly yesterday, and why it works today. Anyway, case is closed. =)

  • Once again it's impossible to program the SPI EEPROM. I've hooked up a scope and noticed that the programmer runs the clock of the SPI bus at 5MHz.  Vcc on CAT25C256 is 2.096V. According to the datasheet for CAT25C256, Vcc needs to be 4.5V-5.5V to be able to run at a speed of 5MHz. Maybe that is the problem?

    The first commands on the SPI bus are WREN and RDSR, and the status register is 00001110b (0x0E)  which means full array protection (despite the WREN command). I've also measured pin 3 (inv WP) and it's set to VDD_IO01 (2.096V) as it should be. Maybe the programmer should lower its speed to 3 MHz (Vcc 2.5V-6V)?