Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SIM900 EAT UpdateEmbeddedAp
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
АндрейАК
Хочу в своем устройстве испльзовать удаленное обновление пользовательского ПО. Прочитал документ SIM900_Embedded AT Application

Note_V1.0.pdf, в английском не силен, но пример на функцию eat1_09UpdateEmbeddedAp ввел меня еще в большее заблуждение. Попробую по порядку

описать, а вы меня поправте и подскажите, если что не так. Сначало значит пишем в флеш-память код программы из файла с расширением .cla.

Писать можно с любога идентификатора, лишь бы он не превышал 60000, размер блока записи не должен превышать 8 кб. Ну например, первые 2500

идентификаторов от 0 до 2499 использую под архив НС, размер записи 8 байт каждая. Новое ПО, допустим 50000 байт, значит пишу последовательно

начиная с 2500 номера 6 блоков по 8192 байта и 2506-ой размером 848 байт, далее вызываю eat1_09UpdateEmbeddedAp(2500, 7, 50000) и

вываливаюсь из основного цикла.
Из документа не понял сколько максимальный размер загружаемого кода программы может быть (в примере в коментариях пишут вроде не более 60000 байт, а

сами грузят аж 160 кб), а также первый параметр процедуры eat1_09UpdateEmbeddedAp это стартовый идентификатор куда я сохранил новое ПО или

куда оно будет установлено, вообщем запутался, помогите ....направте на путь истинный sm.gif
АндрейАК
Есть замечание, пробовал писать в флеш 8 байт данных, так отжирается сегмент в 512 байт, так что с идентификаторами надо быть осторожней

Попробовал обновить пользовательское ПО - не получилось sad.gif
Создал пробный проект, пробилдил - все ОК
Зашил в модуль свой test.cla - все ОК, работает.
Создал еще один проект test1.cla (размер 3942 байта), изменил в первом только сообщение, чтобы убедится в обновлении.
Вообщем записал в флеш-память этот файл ebdat3_03FlashWriteData(0, 3942, (u8*)ByteBuf)
Проверил наличия данного блока в флеш-памяти - все ОК все на месте.
Выполнил eat1_09UpdateEmbeddedAp(0,1,3942); и вышел из основного цикла....
Вижу реакцию модуля по индикатору на отладочной плате, ага, что то поделал он несколько секунд....далее перезагрузился STATUS погас, на терминал вывел:
IIIIþ
RDY
IIIIþþþ
RDY
IIIIþþÿÿÿ

и все... на команды не реагирует, по ходу не вошел в void fl_entry().
Кто-нибудь вообше пробовал обновить ПО???? подскажите ....pleassss sad.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.