Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SIM900 AT+CNTP
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
pomidorov
Здравствуйте,

Наблюдаю падение программы Embedded AT при выполнении следующих команд:

Код
...
12:56:45 a>m: AT+CDEVICE?
12:56:45 a<m: Device Name:ST_M36W0R6050U
12:56:45 a<m: OK
12:56:45 a>m: AT+CGMR
12:56:45 a<m: Revision:1137B04SIM900M64_ST_DTMF_JD_EAT
12:56:45 a<m: OK
...
12:56:58 a>m: AT+SAPBR=3,1,"Contype","GPRS"
12:56:58 a<m: OK
12:56:58 a>m: AT+SAPBR=3,1,"APN","internet"
12:56:58 a<m: OK
...
12:56:58 a>m: AT+SAPBR=1,1
12:56:58 a<m: OK

12:56:59 a>m: AT+CNTP="pool.ntp.org",8,1,1
12:56:59 a<m: OK
12:56:59 a>m: AT+CNTP
12:56:59 a<m: OK
IIIIyyyy
[reboot]


Кто нибудь сталкивался с подобным? Это известная проблема?

Спасибо.
BorisN
С проблемой, когда модуль с загруженным приложением ЕАТ циклически перезагружается разумеется сталкивался и не раз.
причин может быть несколько.
Для того что бы порекомендовать что либо осмысленное, уточните, приложение с которым Вы работаете, ранее работало без рестарта? Я имею в виду, скажем, в код добавлен какой либо фрагмент и после этого модуль начал перезагружаться, либо написан некий фрагмент кода и модуль выполняя его циклически перезагружается.

В любом случае, рекомендую загрузить любое рабочее приложение из примеров среды, и убедиться в том что модуль работает стабильно и перезагрузка не наблюдается, если так, то значит проблем с несоответствием версий среды, прошивки и т.д. нет

Так же "полезно" помнить, о специфике приложений ЕАТ, в том смысле, что приоритет вашего приложения не самый высокий, а жизнь всей системы (модуль, ОС, сеть) носит асинхронный характер,
в своих приложениях я использую таймер (программный), для того что бы между фрагментами кода реализовать небольшую задержку, ну скажем 100 мС, а не "сыпать в ядро командами без остановки" - очень помогает
pomidorov
Цитата(BorisN @ Jan 26 2016, 11:36) *
С проблемой, когда модуль с загруженным приложением ЕАТ циклически перезагружается разумеется сталкивался и не раз.
причин может быть несколько.
Для того что бы порекомендовать что либо осмысленное, уточните, приложение с которым Вы работаете, ранее работало без рестарта? Я имею в виду, скажем, в код добавлен какой либо фрагмент и после этого модуль начал перезагружаться, либо написан некий фрагмент кода и модуль выполняя его циклически перезагружается.

В любом случае, рекомендую загрузить любое рабочее приложение из примеров среды, и убедиться в том что модуль работает стабильно и перезагрузка не наблюдается, если так, то значит проблем с несоответствием версий среды, прошивки и т.д. нет

Так же "полезно" помнить, о специфике приложений ЕАТ, в том смысле, что приоритет вашего приложения не самый высокий, а жизнь всей системы (модуль, ОС, сеть) носит асинхронный характер,
в своих приложениях я использую таймер (программный), для того что бы между фрагментами кода реализовать небольшую задержку, ну скажем 100 мС, а не "сыпать в ядро командами без остановки" - очень помогает


Да, падения появились только при добавлении команд CNTP.

Также используются таймера и state машина, и перед вызовом CNTP добавлялась задержка в 10 секунд - результат тот же. Можно было бы подождать и посбрасывать watchdog но это как-то некрасиво и похоже падение происходит до возврата какого-либо управления из команды AT-CNTP.

C этой же программе с EAT нормально работают команды которые возвращают нотификацию не сразу (например Для работы с HTTP), а по завершению выполнения какой-либо операции.
Ну т.е. механизм такой есть и скорее дело в этой конкретной команде.

Вобщем пока приходится свой sntp клиент использовать.
BorisN
Ну что же, давайте проверим магическую команду в "ручном" режиме, просто подключите отладочную плату или модем к терминалу и посмотрите как будет отрабатываться команда.
Так же рекомендую проверить на разных операторах, как на припэевских картах так и на контрактных,
у меня бывали случаи, когда ТСР клиент на одной симке поднимался а на другой ни в какую (баланс был разумеется положительным)

Да, Вы видимо МТС используете (судя по точке доступа), так за последний год пришлось раза три отлавливать их "хитрости", так как модули в шлюзах не регистрировались в сети...., например, в одном случае, достаточно было установить СИМку в тлф, получить СМСку от провайдера, после чего эта карта начинала адекватно работать уже в нашем приборе
ArtemKAD
Любопытно - в каком состоянии на момент подачи команды соединение и что будет если поменять адрес NTP-сервера к примеру на ntp2.stratum2.ru ?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.