What directory is your output.hex located?
Is the EEPROM write protect pin connected to P1? It looks like the first write failed, and this is generally because the EEPROM NACK'ed the write because WP is asserted. Could you also post a picture of the EEPROM transaction when this first write is attempted?
output.hex is located in same directory with ChipLoad.exe.
Thank you for your comment.
I use 20732S module. So I think EEPROM write protect pin should be connected to P1 internallly.
When I saw I2C bus by the oscilloscipe, EEPROM issued ACK after slave address and write command (0xa0).
Then 20732 wrote many 0x00.
Could you tell me what I need to correct?
Do you have a 10K pull-up on P1?
Is it nessesary for programming?
I still can not program 20732S.
Is there any other way to program it?
In case, I tied WP(P1) to GND. But it didn't affect the result.
After sending the first 16 bytes in output.hex, the log says 0x58 as received byte from HW.
What does it mean?
Since Pin 25 is an input on powerup, its logic state is indeterminate unless biased one way or the other.
When Pin 25 is asserted low, the on-board EEPROM cannot be written, when asserted high it can be written. If you want to be able to write to the EEPROM, you must assert this pin high.
Your text from 5/28 @ 8:12pm states you pulled it to ground. This is the opposite of what you want to do.
There may be something else going on that's preventing the programming, but please assert it high and try again.
I changed pin 25 to 10kohm pull-up. But it doesn't work.
Please help me.
0x58 is a generic error code that indicates something went wrong during the download. Looking at the log, it appears that the error occurred when the chipload tried to write the first few bytes to the EEPROM. Is there any other device on the I2C bus? Can you get a logic analyzer trace of the I2C transaction when the write is attempted? And also a portmon log of the uart transaction would be helpful.
Thank you for your help.
I don't connect anything on I2C.
I put 20732S on a breadboard and connect following 5 wires.
Pin3, 7, 18 and 19 are connected to TTL-232R-3V3 directly.
Pin25 is connected to 3 with 10kohm to pull it up.
I tried several boards but the results are all failed.
When I checked I2C bus by an oscilloscope, it wrote 32kB 0x00.
And it read address 0x00 (read was successful), then stopped suddenly.
After that there was no communication on I2C bus.
Could I have any advice on this?
Are you still struggling with the programming of your device?
You mention the "TTL-232R-3V3" - Is this the FTDI cable you are using?
Please let us know if you are still struggling.