Перейти к содержанию
    

установка фиксированной частоты обмена для SIM300

здравствйте ещё раз. :-)

 

как я и думал вопросы только начинаются. стыдно, а что подлелать? :laughing:

 

после включения модуля и получения от него строки "Call Ready" отсылаю в него строку "AT" для синхронизации, затем получаю ответ "AT OK" после этого пытаюсь выставить фиксированную скорость обмена: AT+IPR=19200 модуль отвечает вполне корректно: "AT+IPR=19200 ОК" после этого не могу достачутся до модуля ни на 19200, ни на 115200. до установки фиксированной частотты модуль команды понимает, но почему-то со второго раза.

 

судя по описаню ат-команд выбранная вновь частота обменя вступает в силу как раз после получения мной ответа: "AT+IPR=19200 ОК"

 

подскажите пожалуйста в чем дело? где я ошибаюсь?

:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня при работе с терминалкой работает так. После включения до установки фиксированной скорости модуль только первый раз проглатывает АТ. Затем на все АТ стабильно дает ОК. Отключаюсь и перенастраиваю на другую скорость терминалку, подключаюсь. Первый АТ нет реакции, все остальные ОК. Устанавливаю IPR=19200. Перенастраиваю терминалку на 19200. На первый и последующий АТ шлет ОК. Перенастраиваю на другую скорость терминалку. На все АТ тишина либо мусор, в зависимости от скорости. Что то в МК не корректно перенастраиваешь скорость.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

но всеравно модуль стабильно проглатывает первую посылку. точнее не проглатывает, а возвращает на нее пустую строку: 0x0D\0x0A 0x0D\0x0A... странно.... в принципе пол беды... лишь бы он стабильно так делал...

эхо у меня включено. частота обмена фиксированная. ситауция такая:

 

1. шлю модулю: AT\0x0D

2. первый раз он стабильно возвращает: 0x0D\0x0A 0x0D\0x0A

3. повторно шлю AT\0x0D

4. модуль возвращает: 0x0D\0x0A AT 0x0D\0x0A

 

если тут же повторять шаг 1, то опять возвращает пустую строку...

 

и так со всеми командами.

 

ни у кого нет мыслей по этому поводу? может это какие-то настройки SIM300?

 

ошибся когда писал:

 

4. модуль возвращает: 0x0D\0x0A AT 0x0D\0x0A 0x0D\0x0A OK 0x0D\0x0A

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня так. При конкретном IPR.

1. шлю модулю: AT\0x0D

2. возвращается AT\0x0D\0x0D\0x0A\OK\0x0D\0x0A

3. повторно шлю AT\0x0D

4. возвращает: AT\0x0D\0x0D\0x0A\OK\0x0D\0x0A

Терминалка после этого пишет отправлено 6 символов, принято 18.

И так стабильно. Сначало возвращается то что отправил символ в символ, затем ОК обрамленный 0D\0A

Может ты не до конца читаеш буфер. А при следующем чтении хватаеш предыдущие хвосты (недочитанные). Разберись.

Пустая строка это вообше странно. Не может такого быть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

кажется начинаю понимать... пишу для контроллера буффер организовал программный. так что вполне возможно что и ошибся где-то. первый раз пишу подобным образом. до этого по другому организовывал обмен. а щас хочется поднять уровень программирования. :-)

 

как я понял из описания:

 

1.4 AT Command syntax

The "AT" or "at" prefix must be set at the beginning of each command line. To terminate a command line enter <CR>.

Commands are usually followed by a response that includes.”<CR><LF><response><CR><LF>”

Throughout this document, only the responses are presented, <CR><LF> are omitted intentionally.

 

модуль всегда возвращает следующую строку:

 

<CR><LF><ответ><CR><LF>.

 

а если то, что ты говоришь правильно, то получается что при возврате эха он отсылает обратно мою посылку один в один. без первоначальных <CR><LF> это объясняет почему я принимаю первый раз пустую строку. потому что я ищу начало строки по первому входжению в нее <CR>, а её конец по второму вхождению <CR>. поэтому эхо я понимаю как всеголишь начало первой строки, а начало ОК как её конец. при таком приеме корректная синхронижация наступает только при второй посылке. :-)

так что похоже опять я дурак. а модуль молодец :-) буду переписывать :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

модуль всегда возвращает следующую строку:

<CR><LF><ответ><CR><LF>.

Да в заводских установках. Формат ответа можно поменять. Не помню какой камандой, надо покопаться. Вообще если работать с МК я эхо отключаю. Мешается, лишние символы обрабатывать зачем.

 

 

Посмотри команду ATV Set result code format mode

 

Кстати пока баловался с автоботрейтом выяснилось что модули SIM300D с последней 13-й прошивкой его не имеют. При IPR=0 работают только на 115200. Похоже скоро будет след. прошивка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я раньше тоже отключал эхо. :-) а щас решил оставить. удобным кажется то, что модуль возвращает команду. сразу ясна чего он там хочет.

 

вобщем, с твоей неоценимой помощью разобрался с форматом посылки. :-) теперь стабильно работает и с первого раза. :-) спасибо боольшое.

 

а тебе не приходилось решать задачу - сделать гаратнированный дозвон до абонента?

 

я как-то делал это с помощью команд AT+CPAS и АТ+CEER. как-то гомоздко получилось на мой взгляд, но работало стабильно.

 

вообще говоря руки бы оторвать тому, кто описание на эти модули делает. оно блин как справочник-памятка и если ты не сильно владеешь материалом, то помощь от него весьма условная.

 

судя по описанию модуль возвращает строку CONNECT... при каком типе звонка? эта настройка по умолчанию или ей надо как-то активизировать?

 

вопросы детские канешно... ну а кому щас легко? :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

CONNECT - это при CSD звонке. При голосовом успешно работает периодическая отсылка запроса AT+CLCC - в ответ будет выдано состояние всех текущих вызовов.

Может быть и NO CARRIER - в этом случае AT+CEER расскажет, в чем дело - абонент отбил, или не в сети, или сеть перегружена, или еще что...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

уважаемый Harbinger нет ли у вас ICQ? :-) а то не савсем удобно и долго задавать все интересующие вопросы в форуме. :-)

 

уважаемый Harbinger нет ли у вас ICQ? :-) а то не савсем удобно и долго задавать все интересующие вопросы в форуме. :-)

 

если что - мой номер 289677866

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробовал команду AT+CLCC. результаты получил следующие:

 

при входящем звонке:

+CLCC: 1,1,4,0,0,"номер входященго звонка",145,""

 

при исходящем звонке:

+CLCC: 1,0,3,0,0,"набираемый номер",145,""

 

при исходящем звонке, и поднятой принимающей стороной трубке:

+CLCC: 1,0,0,0,0,"набираемый номер",145,""

 

если просто режим ожидания:

OK

 

просвятите пожалуйста о формате ответа на запрос AT+CLCC

 

для примера:

+CLCC: 1,1,4,0,0,"номер входященго звонка",145,""

 

[+CLCC: <id1>,<dir>,<stat>,<mode>,<mpty>[,<number>,<type>[,“”]]

[<CR><LF>+CLCC: <id2>,<dir>,<stat>,<mode>,<mpty>[,

<number>,<type>[,“”]] [...]]] OK

 

вроде как:

id1 = 1 что такое этот id?

dir = 1 - это направление звонка входящий/исходящий?

stat = с этим вопросов нет. это статус текущего звонка.

mode и mpty тоже вопросов не вызывают...

 

насколько я понимаю в ответе присутствуют id2... и т.д. если используется что-то типа конференц связи? или я ошибаюсь?

 

то есть при одном входящем звонке должно быть что-то вроде:

 

<CR><LF>+CLCC: <id1>,<dir>,<stat>,<mode>,<mpty>[,<number>,<type>[,“”]

<CR><LF>OK<CR><LF>

 

особый интерес представляет точное расположение сиволов <CR><LF> в строке ответа.

 

никто этот вопрос не изучал? :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

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

×
×
  • Создать...