|
Есть ли классика обработки ответов от GSM модуля на стороне МК ?, Асинхронный режим, без контроля потока |
|
|
|
Mar 17 2013, 10:04
|

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

|
Задался вопросом, а существует ли классический алгоритм обработки ответов модуля на стороне микроконтроллера? Лично я пробую обрабатывать на лету: Временный буфер (50 байт, например), он до начала приема заполнен значениями 0А, это для обработки двух-символьных ответов 30 0D и 34 0D. Указатель - переменная на последний принятый байт в буфере, по умолчанию = 1. В основном цикле отправляю команду в модуль и в цикле жду изменения переменной результата. По прерыванию на UART: - пополняю временный буфер принятым байтом (пополнение начинается не с нулевого байта, а с первого, опять же, для обработки двух-символьных ответов); - если указатель >= 2, проверяю три последних символа буфера на соответствие маске (0A 30 0D, 0A 34 0D etc.); - если соответствие есть - записываю в переменную результата (соответственно 30, 31, 34 etc.); - инкрементирую указатель на последний принятый байт и опять жду прерывания.
Думал просто искать ответ во временном буфере, выдержав какую-то паузу после отправки команды в модуль, но время выполнения команд может быть очень разное... В общем, это мой дебютный алгоритм опроса модулей, по этому и задался вопросом, а как пишут бывалые?
|
|
|
|
Сообщений в этой теме
vassabi Есть ли классика обработки ответов от GSM модуля на стороне МК ? Mar 17 2013, 10:04 kan35 Я сделал структуру для ответа с собственно массиво... Mar 17 2013, 12:31 vassabi ЦитатаОтсекая строки по 0D 0A... Так не все же отв... Mar 17 2013, 13:06 kan35 Цитата(vassabi @ Mar 17 2013, 17:06) Так ... Mar 17 2013, 18:00 andrewlekar Классики нет, особенно если требуется принимать да... Mar 17 2013, 13:26 AlexandrY Цитата(vassabi @ Mar 17 2013, 12:04) В об... Mar 17 2013, 13:47 x893 Цитата(AlexandrY @ Mar 17 2013, 17:47) Пр... Mar 17 2013, 14:27  AlexandrY Цитата(x893 @ Mar 17 2013, 16:27) Не выго... Mar 17 2013, 18:25   kan35 Цитата(AlexandrY @ Mar 17 2013, 22:25) DM... Mar 17 2013, 19:03 vassabi Цитата("AlexandrY")...записываются симво... Mar 17 2013, 20:30 jack_avenger Цитата(kan35 @ Mar 17 2013, 15:31) Я сдел... Mar 17 2013, 23:00 vassabi Цитата("vassabi")Очень круто, но я так п... Mar 18 2013, 00:34 GeGeL И после всего этого еще ругают OCPU, EAT etc. На... Mar 18 2013, 19:49 Aurochs Цитата(GeGeL @ Mar 18 2013, 21:49) И посл... Mar 18 2013, 22:19  stepper88 Недавно соорудил управление Quectel M10 аналогии с... Mar 22 2013, 09:13   _Артём_ Цитата(stepper88 @ Mar 22 2013, 11:13) Но... Mar 22 2013, 11:17 jack_avenger Цитата(GeGeL @ Mar 18 2013, 22:49) И посл... Mar 18 2013, 20:12 zebrox Думаю "отлов" это единственно правильный... Mar 22 2013, 12:09 megajohn делаю всё как AlexandrY но с некоторыми отличиями:... Mar 22 2013, 14:13 _Артём_ Цитата(zebrox @ Mar 22 2013, 14:09) Думаю... Mar 22 2013, 14:35 jack_avenger Думаю что речь не идет о 100% парсинге, а только о... Mar 22 2013, 14:44 stepper88 to megajohn
А как у вас построенна эта обработка а... Mar 22 2013, 15:07  vassabi Цитата(stepper88 @ Mar 22 2013, 17:07) ..... Mar 22 2013, 15:15   stepper88 Цитата(vassabi @ Mar 22 2013, 21:15) А за... Mar 22 2013, 17:03 jack_avenger Цитата(stepper88 @ Mar 22 2013, 18:07) to... Mar 22 2013, 15:28 zebrox Ловить надо только то, что нас интересует.
В том ... Mar 22 2013, 16:32 jack_avenger Цитата(zebrox @ Mar 22 2013, 15:09) Думаю... Mar 22 2013, 17:00 zebrox Цитата(jack_avenger @ Mar 22 2013, 20:00)... Mar 22 2013, 17:31 jack_avenger Цитата(zebrox @ Mar 22 2013, 20:31) Оконч... Mar 22 2013, 17:41 zebrox Цитата(jack_avenger @ Mar 22 2013, 20:41)... Mar 22 2013, 18:09  vassabi Цитата(zebrox)... выставляет сигнал РТЦ. После вых... Mar 22 2013, 18:13 zebrox да, ртс Mar 22 2013, 22:23 jack_avenger Цитата(zebrox @ Mar 22 2013, 22:09) Для э... Mar 23 2013, 13:18 vassabi Цитата(jack_avenger @ Mar 23 2013, 15:18)... Mar 23 2013, 17:13 zebrox Честно говоря, не совсем понимаю зачем отличать юр... Mar 23 2013, 17:52 jack_avenger Цитата(vassabi @ Mar 23 2013, 21:13) По э... Mar 23 2013, 18:32 vassabi Цитата(jack_avenger @ Mar 23 2013, 20:32)... Mar 23 2013, 18:44 zebrox Да нет, обработчик один, на все отведы, эха, юрц.
... Mar 23 2013, 19:55 jack_avenger Цитата(vassabi @ Mar 23 2013, 22:44) Это ... Mar 23 2013, 19:55 vassabi Цитата(jack_avenger @ Mar 23 2013, 21:55)... Mar 23 2013, 23:44 jack_avenger Цитата(vassabi @ Mar 24 2013, 03:44) GSM ... Mar 23 2013, 23:51
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|