реклама на сайте
подробности

 
 
> установка фиксированной частоты обмена для SIM300, после получения команды AT+IPR и ответа на нее модуль замолкает
олег_уфа_81
сообщение Jan 5 2008, 11:26
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 35
Регистрация: 28-12-07
Пользователь №: 33 704



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

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

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

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

подскажите пожалуйста в чем дело? где я ошибаюсь?
smile.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
shb
сообщение Jan 6 2008, 17:45
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 425
Регистрация: 17-07-06
Из: Россия МО
Пользователь №: 18 877



У меня так. При конкретном 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
Может ты не до конца читаеш буфер. А при следующем чтении хватаеш предыдущие хвосты (недочитанные). Разберись.
Пустая строка это вообше странно. Не может такого быть.
Go to the top of the page
 
+Quote Post
олег_уфа_81
сообщение Jan 7 2008, 05:04
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 35
Регистрация: 28-12-07
Пользователь №: 33 704



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

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

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>. поэтому эхо я понимаю как всеголишь начало первой строки, а начало ОК как её конец. при таком приеме корректная синхронижация наступает только при второй посылке. :-)
так что похоже опять я дурак. а модуль молодец :-) буду переписывать smile.gif
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 16:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01354 секунд с 7
ELECTRONIX ©2004-2016