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

 
 
> Общий вопрос приема данных
M@@}{
сообщение Jan 6 2009, 06:49
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 17-08-08
Пользователь №: 39 653



Кто и как принимает, данные ? (готовым изделием)

Есть несколько вариантов приема:

1. Принимаем по стокам пока не встретим OD OA а далее копируем в буфер для обработки в основной программе !

2. Или принимаем до тех пор пока не встретим "OK" + OD OA а потом отдаем в обработку основной программе.

Хочу услышать мнения.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
KGB
сообщение Jan 12 2009, 20:23
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 21-12-08
Пользователь №: 42 644



во... наконецто народ сознаваться сталь что у него нихрена ничего не работает..
в силу того что даже незнает как модуль работает. rolleyes.gif
впрочим как и я.
ну для этого мы тут и собрались.... чтобы выяснить все "китайские" моменты.

пока я заметил тока одно..что модуль одновременно принимать и передовать не может ( я думаю что оно так и должно быть, ПОТОМУ ЧТО ПОДРУГОМУ НЕ ПОЛУЧИТСЯ!!)
потому что если прям сразу отправить ему что нибуть после прихода чево нибуть из модуля... и даже по теме модуль бывает нихрена не понимает.
поэтому приходиться делать между ними паузу.
-------------------------
теперь по обработке ответов.
вот пример....
подключаемя к серваку и дрочим модуть входящими звонками..в момент подключения!!!

--------
пояснение небольшое....
чтобы упростить себе жизнь и не набирать каждый раз то что можно не набирать я сделал так..
; предварительная настройка модуля
;
; ATE0 - выключаем эхо
; ATV0 - переводим режим ответов в цыфровой режим
; AT+CMEE=0 - выключаем коды ошибок, и получаем цифровой вид error без пояснений на код ошибки
;
; настраиваем под PPP
;
; AT+CIPATS=0 - отключаем таймер авто посылки
; AT+CDNSORIP=0 - выбираем режим IP
;
; настраиваем под SMS ---- я исползую смс на русском языке
;
; AT+CMGF=1 - включаем текстовый режим
; AT+CSCS="UCS2" - включкем юникод
; AT+CSMP=17,167.0,25 - выбираем параметры текстового режима
;
; AT&W - Запись в модуль выбраных настроек
;
после этого эти команды находятся в таком состоянии по умолчанию...
следовательно их больше не набираем.

так вот ДЕЛАЮ ТАК..
влючаю устройство....

Call Ready - жду пона оно не поймает это и только потом начинает рабатать

AT+CGATT=1 - выдаю это !!!! тут 0=ОК и оно сразу не вываливается, есть какаято пауза
похоже что тут ок вываливается не на приём команды а на конкрето конект в сети gprs.. ну или не конект

0 - это ОК в цыфровом виде - далее понятно...

AT+CIPCSGP=1,"internet.volga"
0
AT+CIPSTART="TCP","89.X.X.X","6565" - а вот тут чуть зарание беру телефон и звоню на модуль... ОК вываливается сразу после набора команды итолько потом сразу RING=2
0

2 - это RING

2

2

3 - а это я дал отбой..и если долго ждать то отбой даст оператор.
так вот дальше конектится к серверу нет смысла.. потому сто мы звонком отвалили жпрс

AT+CIPSHUT - этим надо закрыть подключения к серверу... а то без этого дальше ничего не получится <--- вот тут уже результат обработки ответов
0 = ок

AT+CGATT=1
0
AT+CIPCSGP=1,"internet.volga"
0
AT+CIPSTART="TCP","89.X.X.X0","6565"
0

+PDP: DEACT

6
AT+CIPSHUT

0
AT+CGATT=1
0
AT+CIPCSGP=1,"internet.volga"
0
AT+CIPSTART="TCP","89.X.X.X","6565"
0

+PDP: DEACT

6
AT+CIPSHUT

0
AT+CGATT=1
0
AT+CIPCSGP=1,"internet.volga"
0
AT+CIPSTART="TCP","89.X.X.X","6565"
0

+PDP: DEACT

6
и так далее по кругу... пока не включим сервер biggrin.gif
он был спецыально выключен для настройки обработки комант начинаюшихся на +.....+PDP: DEACT
кокоче сделан автоматический конект к серверу..пробовал звонить.. посылать смс..ничего не мешает.. всё это игнорируется и конект начинается заново...
(тут ещё не закончено... пока не настроен сам конект при включеном сервере... по тех причинам.. но это дело времени)
-----------
теперь про обработку осветов....
как вы уже заметили я модуль переключил на цифровые ответы.. (посмотрите командуATV0)
но в работе с жпрс некоторые команды идут всётаки в текстовом формате
например CONNECT.... в разных вариациях
(если кто знает как это сделать..дайте знать.. я пока не нашол.)

короче после команды сразу после неё AT+CIPSTART идёт ответ на принятие самой команды который может быть только двух видов
0 или 4 = ок или еррор
впринципе ответ 4 теоретически возможен а практически если передача в модуль отлажена хорошо то 4 получить трудно но реально ( короче в некоторых устройствах можно не делать)

так вот если 0 идём дальше если 4 набираем команду занова.
теперь после ОК
будут ответы на сам конект к серверу.. + цифровые
значит будут и цифровые и текстовые...
тут требуется помощь колектива!!!! так как в пдф нет реального синтаксиса ответов... гдето перед текстом стоит + гдето нету...
а проверить все РЕАЛЬНЫЕ ответы я не могу.
поэтоу у меня щас запущена обработка не всех команд....
для меня это важно... для того чтобы избежать всякие зависания ПОТОМУ ЧТО Я НЕ ПОЛЬЗУЮСЬ ПРОЦОВЫМ ВОТЧДОГ или кто он там не важно...
так вот чтобы у нас ничего не повисло нам надо знать все варианты ответов...
( biggrin.gif странно ... описывая это .. сам начинаю понимать как оно работает!!!)
теперь ..после уже обработаного 0 просто принимаем байт и начинаем его сравнивать

выглядит это так
принимаем байт - пусть например будет 0D
И НАЧИНАЕМ СРАВНИВАТЬ СО ВСЕМИ ВОЗМОЖНЫМИ В ЭТОМ МЕСТЕ!!!!!!!!!
0=
1=
2=
3=
4=
6=
7=
8=
9=
(некоторые могут начинатся на +... например в этом месте может прийти смс..проверено...заначит добовляем+)
+=
(некоторые могут начинатся на CONNECT ... я не помню начинается ли он на +..заначит добовляем 43)
43=
если дошли досюда то значит нам это байт не нужен и начинаем ловить его занова- идем на "принимаем байт "
--------------
пеперь по веткам

0 = значт ок (тут надо проверить как откликнится CONNECT ОК- возможно будет ответ = 1) если по этой команде то
идём на CIPSEND
---------------
2= это ринг, он нам нах не нужет при конекте... но есть два варианта (мы пытаемся приконектится поэтому 3й вариант нах)
1й дать ответ ATH и потом уйти на "принимаем байт "
2й просто проигнарировать и уйти на "принимаем байт " - у меня пока так
3й обработать звонок если вам надо
---------------
раз была 2
значит обязательно 3
3= уйти на закрытие конекта и начинаем заново... так как звонок нам сорвал жпрс
---------------
если приняли
43=то это могут быть
CONNECT в разных вариациях ..ОК или FAIL --ТИПА КАСЯК!!!
тогда после 43 начинаем ловить дальше пропуская 7 байт и цыпляемся за 8й
это будет О или F - ну что делать с ними понятно...опять ухлдим в две ветки..
-------------
+= это значит будет текстовая команда с ней поступаем также как с предыдущей..
----------------------------------------------------

я думаю принцип обработки ответов понятен...
это я приводил опираясь на применения асемблера.
и не приводил реальных исходников чтоб народ не заморачивался а понял принцип действия.
я не утверждаю что это правельный или единственый метод..
но на обработке некоторых команд уже проверено.

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

AT+CIPSTART="TCP","89.X.X.X","6565"
ОК - это поняно
нато то что возможно тут!!!!!
уже знаю такие ответы

+PDP: DEACT
+CMTI:.....
CONNECT ОК
CONNECT FAIL
2=RING
3=NO CARRIER
6=NO DIALTONE
-----------------
А ВОТ ЭТИ 2 Я ДУМАЮ ЧТО НЕ ВОЗМОЖНЫ... МЫЖ ТУТ НЕ ЗВОНИМ!!!
7=BUSY
8=NO ANSWER
-----------------

КАКИЕ ЕЩЁ ???????

Сообщение отредактировал KGB - Jan 12 2009, 20:30
Go to the top of the page
 
+Quote Post
M_Z
сообщение Jan 15 2009, 06:44
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 483
Регистрация: 1-09-06
Из: Гродно РБ
Пользователь №: 20 011



Цитата(KGB @ Jan 12 2009, 23:23) *
;
; ATE0 - выключаем эхо
; ATV0 - переводим режим ответов в цыфровой режим
; AT+CMEE=0 - выключаем коды ошибок, и получаем цифровой вид error без пояснений на код ошибки
;

Мне нравится когда люди сначала создают сами себе проблемы настройками такого рода, а потом с ними же борются.
Былиб нормальные настройки и получал бы не цифру 8 а а конкретное сообщение, которое трактуется однозначно.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- M@@}{   Общий вопрос приема данных   Jan 6 2009, 06:49
- - WHALE   я делаю по первому варианту,только плюс проверка-н...   Jan 6 2009, 07:12
- - M_Z   Цитата(M@@}{ @ Jan 6 2009, 10:49) Кто и к...   Jan 6 2009, 07:56
- - KGB   http://ru.wikipedia.org/wiki/ASCII смотрим этот аб...   Jan 6 2009, 08:06
|- - M_Z   Цитата(KGB @ Jan 6 2009, 12:06) вот про э...   Jan 6 2009, 08:14
|- - KGB   Цитата(M_Z @ Jan 6 2009, 11:14) после уст...   Jan 6 2009, 11:14
|- - M_Z   Цитата(KGB @ Jan 6 2009, 15:02) нихрена я...   Jan 6 2009, 11:24
- - KGB   M_Z с вами всё понятно....: а как вы отрпавляет...   Jan 6 2009, 12:02
|- - M_Z   Цитата(KGB @ Jan 6 2009, 16:02) M_Z с вам...   Jan 6 2009, 13:24
|- - KGB   Цитата(M_Z @ Jan 6 2009, 16:24) я как то ...   Jan 6 2009, 16:06
|- - M_Z   Цитата(KGB @ Jan 6 2009, 20:06) а те кто ...   Jan 6 2009, 16:44
- - Baser   Цитата(M@@}{ @ Jan 6 2009, 08:49) Кто и к...   Jan 6 2009, 14:54
- - WHALE   Цитата(KGB @ Jan 6 2009, 19:06) пишем... ...   Jan 6 2009, 18:17
- - Dron_Gus   Цитата(KGB @ Jan 6 2009, 19:06) там да бу...   Jan 6 2009, 19:19
- - KGB   ВАХ!!!!!1 ХОРОЩАЯ КОМПАНИЯ СОБ...   Jan 6 2009, 23:13
|- - M@@}{   Цитата(KGB @ Jan 7 2009, 04:13) ВАХ!...   Jan 7 2009, 08:24
|- - M_Z   Цитата(M@@}{ @ Jan 7 2009, 12:24) Спасибо...   Jan 7 2009, 10:11
|- - KGB   Цитата(M_Z @ Jan 7 2009, 13:11) Не всегда...   Jan 7 2009, 10:32
|- - KGB   Цитата(M_Z @ Jan 7 2009, 13:11) Есть еще ...   Jan 8 2009, 03:50
|- - M@@}{   Цитата(KGB @ Jan 8 2009, 08:50) ЭТО КАК.....   Jan 9 2009, 12:02
|- - M_Z   Цитата(M@@}{ @ Jan 9 2009, 15:02) А может...   Jan 9 2009, 12:46
||- - M@@}{   Цитата(M_Z @ Jan 9 2009, 17:46) возможны ...   Jan 11 2009, 18:28
|- - KGB   Цитата(M@@}{ @ Jan 9 2009, 15:02) Сейчас ...   Jan 9 2009, 14:06
|- - Baser   Цитата(M@@}{ @ Jan 9 2009, 14:02) Кстати ...   Jan 9 2009, 14:31
- - KGB   ....действительно отвлеклись. непосредствено с сим...   Jan 7 2009, 10:05
- - KGB   Baser я вот подумал.. надо сообща написать алгор...   Jan 9 2009, 21:34
|- - KGB   Цитата(KGB @ Jan 10 2009, 00:34) Baser ...   Jan 10 2009, 02:02
- - Baser   Цитата(KGB @ Jan 9 2009, 23:34) я вот под...   Jan 10 2009, 11:33
- - av-master   даже, не представляю, как контроллер может пропуст...   Jan 11 2009, 19:12
|- - M@@}{   Цитата(av-master @ Jan 12 2009, 00:1...   Jan 12 2009, 17:49
|- - M_Z   Цитата(M@@}{ @ Jan 12 2009, 20:49) Я хоте...   Jan 12 2009, 19:33
||- - M@@}{   Цитата(M_Z @ Jan 13 2009, 00:33) Возможны...   Jan 13 2009, 15:54
|- - Baser   Цитата(M@@}{ @ Jan 12 2009, 19:49) Я хоте...   Jan 13 2009, 22:32
|- - KGB   Цитата(Baser @ Jan 14 2009, 01:32) По пов...   Jan 14 2009, 16:48
|- - KGB   Цитата(M_Z @ Jan 15 2009, 09:44) Мне нрав...   Jan 15 2009, 19:33
|- - M_Z   Цитата(KGB @ Jan 15 2009, 22:33) добавил ...   Jan 16 2009, 18:46
- - av-master   ЦитатаТак шта... Программа просто не должна затыка...   Jan 13 2009, 23:32
- - KGB   короче как говорится после сборки обработать напил...   Jan 14 2009, 21:45
- - KGB   Baser обрабатывать не всё не получится... смотри к...   Jan 15 2009, 06:35
- - KGB   кстати... выше описаный недостаток можно использов...   Jan 16 2009, 16:34
- - KGB   M_Z давай не будем друг другу мозг калупать!...   Jan 17 2009, 01:34
|- - HARMHARM   Цитата(KGB @ Jan 17 2009, 03:34) всё пучк...   Jan 18 2009, 18:43
|- - KGB   Цитата(HARMHARM @ Jan 18 2009, 21:43) Я з...   Jan 19 2009, 12:23
- - hound   Откопал же тему)) надеюсь тут еще кто-то есть и ув...   Mar 24 2015, 09:17


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

 


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


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