kotishe Прохожий
|
Clip в 4015 Comfort (корректировка EEPROM)
|
[code]
>>> AVCh (07/02/2003 17:05 )
>>> TopicID=12306, Clip в 4015 Comfort (корректировка EEPROM)
>> Через какой порт LPT или COM безопасней
>> прошить базу с помощью программатора.
Я конечно не специалист в делах прошивки, поэтому могу лишь
высказать свое мнение по данному вопросу.
В моем понимании безопасность прошивания базы складывается из
двух частей:
Очень не хочется пожечь мелкосхему ФлешПЗУ.
Evgeni (05/02/2003 00:27) писал, что есть опасность налететь на
грабли 24С64S фирмы STMicroelectronics с 3.6 вольтовым управлением.
СОМ порт имеет размах сигналов от -12V до +12V, казалось бы
24С64S должна сгореть сразу, LPT порт имеет размах сигналов о 0V до 5V
и по входным уровням совместим с ТТЛом, но имеет высокое входное (CMOS),
это же относится и к СОМу хотя и несет в себе некоторое нарушение
стандарта RS232. Но все дело в том, что указанные сигналы не подаются
непосредственно на 24С64S. Между портом и микросхемой памяти стоит
программатор, задачей которого как раз и является преобразование
уровней сигналов к требуемым рамкам. Если программатор изготавливается
собственно ручно, то мне больше нравится на LPT прорт, но исключительно
за то что он немного проще схемотехнически. Единственно что следует
отметить: программатор ОБЯЗАТЕЛЬНО должен иметь выходы с открытыми
коллекторами, тогда напряжения (на 24С64S) будут определятся платой
телефона, что должно исключить повреждение 24С64S избыточным
программирующим напряжением. Я проводил эксперименты с программатором для
паралельного порта, взяв за основу программатор
"PonyProg Easy I2C Bus interface" http://www.lancos.com/e2p/easyI2Cbus.gif
подвергнув его ряду упрощений:
вопервых резысторы R1 и R2 ставить не обязательно, а резысторы R3 и R4
ставить нельзя ни в коем случае, транзисторы кт316, но можно попольлзовать
практически любой маломощный npn транзистор. Также ОЧЕНЬ выжно обеспечить
хороший контакт между проводами I2C шины и контактными площадками,
прячущимися в недрах базового блока. Я использовал палочки от карамелек
ЧупаЧупс (которые очень плотно входят в соответствующие отверстия на попке
у базового блока) на концах которых закрепил маленькие пружинки.
(1 разъем, 2 транзистора и 3 провода проще кажись некуда :-) )
>>> Chaos99 (04/02/2003 23:56 )
>> для контроля надо прочитать ее несколько раз и сравнить результаты,
>> дабы потом не потерять телефон
Хочу особо подчеркнуть, что перед началом экспериментов надо протестировать
программатор на чем нибуть безопасном, я тестировал ВРЕМЕННО подключив
резисторы R3 и R4 и источник +5V. Затем ОБЯЗАТЕЛЬНО несколько раз прочитать
содержимое родной прошивки, записать его в файл и сравнивая результаты
убедиться, что программатор надежно читает данные из микросхемы.
Эти файлы переписать на 2 дискеты и спрятать подальше чтобы небыло
мучительно больно за убитый телефон (пусть даже только базовый блок).
>>> Chaos99 (04/02/2003 23:56 )
>> верхняя - "земля"
>> средняя - "SCL"
>> нижняя - "SDA"
Все правильно, хочу только предостеречь, что благодаря конденсаторам
на корпусе компа имеется ~110V, что существенно больше 5V и даже 12V
о которых упоминалось выше, а еще они переменные с частотой 50 Герц
и совсем не синусоидальные (водал как то на осциллографе), это я к
тому, что оная наводка может не только пожечь к едени фене все
микросхемы телефона (и компа), но и выполнить несколько циклов
записи во флэш, а Вы между прочим только собирались первый раз
прочитать его содержимое :-(. Это я к тому что земляной провод
должен ОБЯЗАТЕЛЬНО подключаться первым и отключаться последним.
Поскольку при включении питания базы происходит загрузка данных
из флешки в процессор, чтобы избежать конфликта на I2C шине
я подключал провода "SCL" и "SDA" после того как база выполнит
загрузку. Можете называть перестраховщиком (есть мысль что это
делать было не обязательно, а может быть даже вредно). Земляной
провод я не отключал в течении всего периода экспериментов.
Я пользовал программу PonyProg { http://www.lancos.com/prog.html }
Сначала выполняем калибровку скорости процессора (для задержек),
Затем выбираем тип программатора SetupInterfaceBoardSetup
Parallel, Lpt1, EasyI2C I/O
У меня в GS4010Micro стоит 24C32S6 так что выбираем
DevType I2C Bus 16bit eeprom 2432
Конечно у PonyProg не очень удобный редактор буфера, но поскольку
она может сохранять данные в бинарном виде во внешнем файле
можно сказать что программа очень не плоха.
Также были обнаружены подводные камни, поначалу повергшие в
глубокую депресию. Как то после очередного исправления прошивки
База перестала подавать признаки жизни, и что самое поганое,
при попытке записать в флешку исходную прошивку PonyProg выдавала
ошибку, что то вроде "Неполужено подтверждение записи" или
"Неправильный тип устройства". Можете представить какие
имоции может вызвать подобное явление. А происходит видимо
вот что: прсцессор читает из флешки данные, видит вместо
нормальной прошивки какуюто срань, обижается и начинает
перезагружаться снова, как резальтат, на I2C шине имеет
место активность которая недает выполнить нормальный цикл
записи :-(. В конце концов спасает то что активность, видимо,
происходит не непрерывно, а периодически и если ресетить
базу по питанию и давать кнопку записи в PonyProg то
в конце концов удается записать 1 страницу памяти флэшки, а
когда 1 страницу памяти записана корректно то хотя база
еще и не работает как надо, но процессор уже перестает
блокировать шину и тогда после очередной перезагрузки
становится возможным провести нормальный цикл записи :-).
>>> Chaos99 (04/02/2003 23:56 )
>> Мне удалось разблокировать Clip путем изменения пары байтиков
>> в EEPROM базы 4015Comfort Rus.
О Великий Chaos99, я пробовал методом тыка сделать из прошивки
что нибудь интересное, но максиум чего удалось добиться это
зачморить менюшку Call Barring, видимо метод тыка был не
очень научный, наверно мне нехватает крсивой идеи так как
перебрать 32768! (факториал) вариантов не представляется
возможным. Поделись, откуда взялись эти
>> Offset Data (Hex)
>> 00000252h: 08 25 01 00 0C 18 E0 1A 00
т.к. мне они все равно не подходят у меня GS4010M,
а тоже хочется чего нибудь этакого :-).
Да прибудет с Вами Великая Сила!
P.S. Народ! Может всетаки у кого нибудь есть прошивка от серого GS4010Micro???
[/code]
|