В общем подпаял несколько проводов логического анализатора.
Управляющие CE#, OE# и IO 7-4 Бит VPPS оно [пока] не отображает, но общая картина показывает, что оно как-то попадает в состояние ERASE SUSPEND STATUS
А что туда его может загнать и как его из этого состояния вытаскивать?
Выжимка из декодирования обмена по выдаче команды очистки флеша (flash_eraseall)
читаем 0х50 -- возможно это содержимое регистра статуса - erase suspend + PGM error ?
читаем 0х00
читаем 0х00
пишем 0x50 -- команда clear status register
пишем 0x20 -- команда sector erase
пишем 0xD0 -- команда sector erase confirm
+50us
читаем 0х00 --- не может ли это чтение как-то сбить процесс стирания?
+260ms
читаем 0х00
+15ms
читаем 0х00
+15ms
читаем 0х00
+6us
пишем 0x70 -- команда запроса статуса
читаем 0x4x -- флаг erase suspend (подробности в младших битах недоступны)
+7us
пишем 0x50 -- команда clear status register
пишем 0x70 -- команда запроса статуса
+6ms
читаем [статус] 0x00 -- ??? где бит готовности?
+12us
читаем [статус] 0x00
+54us
читаем [статус] 0x00
+5us
Начинаем очистку [] сектора, повтор последовательности 0x50 0x20 0xD0
С теми же таймингами получаем тот же 0x40
Напоминаю, что к анализатору подключены только старшие 4 бита.