Computers & software

LPT программатор для SPI FlashROM

Схема LPT программатора для SPI FlashROM




Схема взята с сайта rayer.ic.cz . Там же находится программа прошивальщика(версии для DOS и Windows). Как следует из описания, можно прошивать микросхемы:

Atmel: AT26DF041 (512kB), AT26DF081A (1MB), AT26DF161A (2MB), AT26DF321 (4MB)

EON: EN25P16 (2MB), EN25P32 (4MB), EN25P64 (8MB), EN25P128 (16MB), EN25F16 (2MB), EN25F32 (4MB), EN25F64 (8MB), EN25F128 (16MB)

Macronix: MX25L1005 (128kB), MX25L2005 (256kB), MX25L4005 (512kB), MX25L8005 (1MB), MX25L1605 (2MB), MX25L3205 (4MB), MX25L6405 (8MB)

Spansion: S25FL004A (512kB), S25FL008A (1MB), S25FL016A (2MB), S25FL032A (4MB), S25FL064A (8MB), S25FL128P (16MB)

SST: SST25VF010 (128kB), SST25VF020 (256kB), SST25VF040 (512kB), SST25VF080 (1MB), SST25VF016 (2MB), SST25VF032 (4MB), SST25VF064 (8MB), SST25VF128 (16MB), SST26VF016 (2MB), SST26VF032 (4MB), SST26VF064 (8MB)

ST Microelectronic: M25P10 (128kB), M25P20 (256kB), M25P40 (512kB), M25P80 (1MB), M25P16 (2MB), M25P32 (4MB), M25P64 (8MB), M25P128 (16MB)

Winbond: W25X10 (128kB), W25X20 (256kB), W25X40 (512kB), W25X80 (1MB), W25X16 (2MB), W25X32 (4MB), W25X64 (8MB)

Я прошивал MX25L4005A . Была собрана такая вот каракатица:

LPT программатор для SPI FlashROM


Команды:

SYNTAX: spipgm /i|r|d|e|p [filename] [address] [size] [/l=iobase] [/d=delay]
/i - identify SPI FlashROM
/r address size - read & display data block (0x prefix = hexa number)
/d filename - dump entire FlashROM to file
/p filename - program entire FlashROM from file (without erase)
/e - erase entire FlashROM
/u - unlock write protection bits (may depend on WP# level)
/l= LPT port I/O base address (default is 378h - LPT1)
/d= additional delay for SPI clock pulse width [usec] (default is 0)

Прошивал в DOS. Первая попытка - неудачно.
1.Поленился впаять конденсатор.
2.Сопротивления - вместо 150om ( не нашел) впаял 200om.
3.Питание брал от батарейки (припаял гнездо от сгоревшей материнки), замерял напряжение - 2.7V.

В результате - еле стирает и вообще не пишет. Что в общем и не удивительно, поскольку микросхема даже не опознавалась.

Работа над ошибками:
1.Допаял конденсатор.
2.Заменил сопротивления на 100om.
3.Допаял разъем для питания от внешнего источника 3.5V

В результате - прошито с первого раза.

Рекомендуется после прошивки слить результат прошивки и сравнить с исходным файлов прошивки.