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

 
 
 
Reply to this topicStart new topic
> Вопросы по sim900r64, "хвосты" эха некоторых команд
vassabi
сообщение May 31 2013, 15:33
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Столкнулся с такой ситуацией, "хвосты" эха некоторых команд "приезжают" вместе с ответом, например:
AT+CIICR, у меня парсится эхо, алгоритм ждет его 200нс, если эхо валидное - начинаем ждать ответа, который, в данном случае, может приехать и через минуту. Если эха нет по таймауту - считаем модуль зависшим и уходим не алгоритмы перегруза.
ISR ловит конец строки '\n', после этого строка считается принятой и доступной для парсера.
Так вот, по идее эхо и ответ должны выглядеть вот так (хвосты синие):
____________эхо_____________------------------------____ОК___
41 54 2B 43 49 49 43 52 0D 0D 0A ожидание ответа 4F 4B 0D 0A
А в реальности приезжает вот так (кусок хвоста эха красный):
____________эхо________ ---------------------- ______ОК______
41 54 2B 43 49 49 43 52 0D ожидание ответа 0D 0A 4F 4B 0D 0A
Т.е. получается если отлавливать конец строки по '\n', то строка не будет считаться принятой до получения ответа, который прийдет очень не скоро.
Понятно, что можно ловить конец строки и по '\r' (собственно сейчас так и выкрутился), но кроме того, что придется "вЫчитать" остаток хвоста, это еще и через ж..., имхо!

Это же "явление" замечено и на AT+CPOWD, скорее всего есть еще где-то...
И кстати на sim900d было тоже самое!

Хотелось бы понять, знает ли об этом SIMOM и какие у него планы на этот счет? Или это только мне так повезло и у остальных все нормально? sm.gif

з.ы. Пока диагностировал перелопатил весь алгоритм работы... два раза, жаль времени sad.gif
Go to the top of the page
 
+Quote Post
jack_avenger
сообщение May 31 2013, 16:49
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 170
Регистрация: 30-06-05
Из: Киев
Пользователь №: 6 426



Как по мне, так 200нс как-то мало даже для 115200. Время передачи одного бита на такой скорости 8680 нс. Но думаю это просто опечатка.
А теперь по сути: если мне не изменяет память, то в конце команды по стандарту должно быть просто <CR>, а не <CR><LF>
Go to the top of the page
 
+Quote Post
vassabi
сообщение May 31 2013, 16:59
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата(jack_avenger)
Но думаю это просто опечатка.
Ага, очепятка, спасибо. Имелось в виду 200мс
Цитата(jack_avenger)
...по стандарту должно быть просто <CR>, а не <CR><LF>
А по какому стандарту? Я в доках simcom`а не нашел...
Ну и даже если по стандарту, то все равно, почему "хвосты" разных команд отличаются?

Сообщение отредактировал vassabi - May 31 2013, 17:01
Go to the top of the page
 
+Quote Post
jack_avenger
сообщение May 31 2013, 17:11
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 170
Регистрация: 30-06-05
Из: Киев
Пользователь №: 6 426



Цитата(vassabi @ May 31 2013, 19:59) *
А по какому стандарту? Я в доках simcom`а не нашел...

По 3GPP TS 27.007, раздел 4.1.
Обратите внимание на "command line termination character"
Цитата(vassabi @ May 31 2013, 19:59) *
Ну и даже если по стандарту, то все равно, почему "хвосты" разных команд отличаются?

Потому что Вы отступаете от стандарта. После передачи команды (которая должна заканчиваться символом <CR>) надо ждать рекции, а не продолжать передачу.
Go to the top of the page
 
+Quote Post
vassabi
сообщение May 31 2013, 17:38
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата('jack_avenger')
По 3GPP TS 27.007, раздел 4.1.
Ага, теперь понятно, малоопытность сказывается sm.gif. Документик прояснил ситуацию, спасибо! Вопрос снимаю.
Цитата(jack_avenger)
... После передачи команды (которая должна заканчиваться символом <CR>) надо ждать рекции, а не продолжать передачу.
Ну я в общем так и делаю, просто конец строки ловлю не так как нужно sm.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 23:35
Рейтинг@Mail.ru


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