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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Посылка в UART SIM900R более 554 символов, Если посылаю больше, то ERROR
sashaoff3
сообщение Feb 8 2016, 05:36
Сообщение #1


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Через терминальную программу SSCOM3.2 посылаю в SIM900R 560 символов - в ответ символы выводятся, их количество совпадает с посланным, а в конце ERROR. Если меньше, то в ответ ОК. Аналогичная ситуация и при обмене с МК. Из-за него и пишу. Почитал инфу, но ничего не нашёл. Может быть есть настройка по увеличению кол-ва символов или тайм-аута? Прошу помочь добрым советом.
Go to the top of the page
 
+Quote Post
smalcom
сообщение Feb 8 2016, 09:10
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



ась?
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Feb 8 2016, 09:18
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



>>>посылаю в SIM900R 560 символов - в ответ символы выводятся, их количество совпадает с посланным, а в конце ERROR.

В каком режиме, куда они потом должны уйти, это данные или поток команд.....???
В какой версии фирмваре???

Давайте изначально правильно ставить вопросы, а то телепаты еще с нового года не протрезвели sm.gif




--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
Go to the top of the page
 
+Quote Post
BorisN
сообщение Feb 8 2016, 09:36
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 30-09-06
Из: Украина, Запорожье
Пользователь №: 20 834



В дополнение к вышесказанному,

Так же полезно уточнить, в каком конечном устройстве установлен модуль, либо это штатная отладочная плата, либо разрабатываемое устройство...
Далее, что отвечает модуль на АТ команды? для начала есть ли "правильный" ответ на АТ, ну и на какие либо прочие...
Go to the top of the page
 
+Quote Post
sashaoff3
сообщение Feb 8 2016, 09:51
Сообщение #5


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Версия B05, последняя, как я понимаю. Модуль работает. Подключен к компу через вышеуказанную терминальную программу. На всё отвечает. По непонятной мне причине, если послать файл объёмом >= 560 байт, то вышеописанная ситуация.

File size:560
BaudRt:19200bps
Time require: 0 s
Wait...
Send OK! Ў1111111111111111111111111111111111111111111111111111111111111111111111111111111
11111111111111111111111111111111111111111111111111111111111111111111111111111111
1
11111111111111111111111111111111111111111111111111111111111111111111111111111111
1
11111111111111111111111111111111111111111111111111111111111111111111111111111111
1
11111111111111111111111111111111111111111111111111111111111111111111111111111111
1
11111111111111111111111111111111111111111111111111111111111111111111111111111111
1
1111111111111111111111111111111111111111111111111111111111111111111111111111
ERROR

А если послать меньше, то будет ОК. Для дальнейшей обработки ERROR может и не помешает, но ведь почему-то модуль ругается.
Может быть не модуль ругается, а терминальная программа? Попробовал в hypertrm, данные не выходят. Ппробую ещё какую-нибудь.

Сообщение отредактировал sashaoff3 - Feb 8 2016, 10:05
Go to the top of the page
 
+Quote Post
BorisN
сообщение Feb 8 2016, 10:11
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 30-09-06
Из: Украина, Запорожье
Пользователь №: 20 834



Для ускорения процесса, предлагаю, запустите у себя на компе terminal.exe,
подайте команду, получите ответ, запросите например скорость порта, уровень сигнала, вообщем "поговорите" с модулем,
результаты сюда пожалуйста,
далее обсудим вопрос с файлом
Просто так, без подготовительных процедур, посылать модулю файл, просто не имеет смысла...
Go to the top of the page
 
+Quote Post
sashaoff3
сообщение Feb 8 2016, 10:19
Сообщение #7


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Цитата(BorisN @ Feb 8 2016, 10:11) *
Для ускорения процесса, предлагаю, запустите у себя на компе terminal.exe,
подайте команду, получите ответ, запросите например скорость порта, уровень сигнала, вообщем "поговорите" с модулем,
результаты сюда пожалуйста,
далее обсудим вопрос с файлом
Просто так, без подготовительных процедур, посылать модулю файл, просто не имеет смысла...

Попробовал в Terminal - то же самое. Я ведь ответил - модуль на всё отвечает. Если нетрудно, пошлите несколько файлов разной длины. Terminal на короткие не ругается, а на длинные ERROR...
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Feb 8 2016, 10:20
Сообщение #8


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Насколько я понимаю, человек ждет эхоконтроль, причем в командном режиме, причем без "AT". Странно, что модуль еще так много проглотил...
Go to the top of the page
 
+Quote Post
BorisN
сообщение Feb 8 2016, 10:24
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 30-09-06
Из: Украина, Запорожье
Пользователь №: 20 834



Пожалуйста, выложите здесь все что модуль отвечает..

Обратите внимание (см выше) отсылать модулю файл без предварительных осмысленных действие просто бессмысленно..
Поясняю на примере, если Вы хотите отправить файл удаленному модему, то это одна история, если Вы хотите записать файл в память модуля это совсем другая история... и т.д.
Go to the top of the page
 
+Quote Post
smalcom
сообщение Feb 8 2016, 11:46
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



Цитата(sashaoff3 @ Feb 8 2016, 11:51) *
Версия B05, последняя, как я понимаю. Модуль работает. Подключен к компу через вышеуказанную терминальную программу. На всё отвечает. По непонятной мне причине, если послать файл объёмом >= 560 байт, то вышеописанная ситуация.
...
А если послать меньше, то будет ОК. Для дальнейшей обработки ERROR может и не помешает, но ведь почему-то модуль ругается.
Может быть не модуль ругается, а терминальная программа? Попробовал в hypertrm, данные не выходят. Ппробую ещё какую-нибудь.


- Доктор, когда я делаю вот так, то у меня вот тут хрустит.
- Ну так не делайте так.
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 8 2016, 12:18
Сообщение #11


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(CADiLO @ Feb 8 2016, 11:18) *
Давайте изначально правильно ставить вопросы, а то телепаты еще с нового года не протрезвели sm.gif

Брррр!! Ну, вроде я пришел в себя... sm.gif
Телепатирую:

Цитата(sashaoff3 @ Feb 8 2016, 07:36) *
Через терминальную программу SSCOM3.2 посылаю в SIM900R 560 символов - в ответ символы выводятся, их количество совпадает с посланным, а в конце ERROR. Если меньше, то в ответ ОК. Аналогичная ситуация и при обмене с МК.

Цитата(sashaoff3 @ Feb 8 2016, 11:51) *
1111111111111111111111111111111111111111111111111111111111111111111111111111
ERROR

А если послать меньше, то будет ОК. Для дальнейшей обработки ERROR может и не помешает, но ведь почему-то модуль ругается.
Может быть не модуль ругается...

Модуль ругается, он самый.
Объясняю:
товарищ пытается послать модулю в командном режиме с включенным эхом соответственно команду (пример команды см. выше).
В ответ видит эхо. Длина буфера модема 556 байт.
Цитата
The Command line buffer can accept a maximum of 556 characters. If the characters entered
exceeded this number then none of the Command will executed and TA will return "ERROR".

Одно не сходится: утверждается, что если послать меньше байт, ответ ОК.
На мой взгляд тоже должен быть ERROR
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Feb 8 2016, 14:50
Сообщение #12


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Логика подсказывает что да, или "ERROR" или вообще ничего. Если команды не было, то с чего вдруг "OK" ?
Go to the top of the page
 
+Quote Post
sashaoff3
сообщение Feb 8 2016, 15:05
Сообщение #13


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Спасибо Baser! Это и есть. Проявилось это у меня когда принимал смс в UCS2. Максимальный размер сообщения 608 байт. Я складываю принимаемые символы в массив и затем содержимое этого массива посылаю на экран компа через терминальную программу для проверки. Я планирую принимать кириллицу. Как правильно делать: разделять на части? Может есть какое то хорошее решение?

Цитата(rx3apf @ Feb 8 2016, 14:50) *
Логика подсказывает что да, или "ERROR" или вообще ничего. Если команды не было, то с чего вдруг "OK" ?

Команда была послать файл (последовательность символов). Через терминальную программу кнопкой Send, а я посылал из МК командой for (i = 0; i <size_sms_t; i++) {putch(str_sms_1t[i]); if (str_sms_1t[i] == '\r') break;}}.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Feb 8 2016, 15:26
Сообщение #14


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Попробую намекнуть - ЗАЧЕМ (и, главное, КУДА) Вы пытаетесь "послать файл" в КОМАНДНОМ режиме ?

Сообщение отредактировал rx3apf - Feb 8 2016, 15:26
Go to the top of the page
 
+Quote Post
sashaoff3
сообщение Feb 8 2016, 15:42
Сообщение #15


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Цитата(rx3apf @ Feb 8 2016, 15:26) *
Попробую намекнуть - ЗАЧЕМ (и, главное, КУДА) Вы пытаетесь "послать файл" в КОМАНДНОМ режиме ?

Вы бы сказали прямо. Не все понимают намёки. Посылаю я только для визуальной проверки на экране компа наполнения массива при проработке приёма смс. Это просто приём(метод) для проверки. Может и некорректно - поправьте. Кстати, эта переписка, дала мне понять, что из смс в массив данные идут полным ходом, но точно проверить через экран компа достоверное кол-во и зн-е я не смогу без разделения на блоки < 556. По итогам обсуждения я сделал следующее: в смс с сайта ТЕЛЕ2 в начале текста оператор вставляет IP адрес отправителя. Занимает он около 90 символов. Я посылаю для проверки на экран символы приёмного массива, начиная с 92 символа. Тогда у меня всё оставшееся входит в буфер модуля и неприятный ERROR не вылезает. Спасибо всем.

Сообщение отредактировал sashaoff3 - Feb 8 2016, 17:05
Go to the top of the page
 
+Quote Post
smalcom
сообщение Feb 8 2016, 16:20
Сообщение #16


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



Цитата
Вы бы сказали прямо.

про бревно и соринку пословицу видать не знаете
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 8 2016, 16:29
Сообщение #17


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Становится все интереснее.
1. А почему вы считаете, что "проработка приёма смс" должна отличатся на уровне приема байтов от модема от приема любых других ответов или данных от модема?
2. Приемный буфер модема длиной 556 байт не имеет никакого отношения к выдаче модемом данных/ответов наружу. Они не идут через приемный буфер.
3. Судя по всему вы пытаетесь работать с длинными смс в текстовом режиме. Поддерживает ли SIM900 автоматом прием и склеивание длинных смс я не скажу, не знаю, но послать длинное смс в текстовом режиме точно нельзя, нет нужных полей в команде, только в режиме PDU и все вручную. А макс. длина обычной смс: 160 символов в ASCII или 70 символов в юникоде. Как ни крутись, 556 байт всегда хватает (хотя они тут совсем ни причем) sm.gif

з.ы. smalcom, вы бы сказали бы чего по делу, а то только ходите вокруг да ухмыляетесь, мне одному отдуваться? lol.gif
А то CADiLO сейчас занят (всего, всего, всего, Эдуард!!!! tort.gif ) подмочь не может.
Go to the top of the page
 
+Quote Post
sashaoff3
сообщение Feb 8 2016, 17:18
Сообщение #18


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Уважаемый Baser п.1 и 2 поддерживаю. По п.3. Если смс принимаем в UCS2, то на каждый символ ASCII приходится по 4 символа в принимаемой смс. К примеру '5' будет '0''0''3''5' или в hex 30303335. Поэтому 160 x 4 = 640. Я вручную посчитал, получилось 608, а это > 556. Поддерживаю поздравления CaDilo.

Сообщение отредактировал sashaoff3 - Feb 8 2016, 17:20
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 8 2016, 17:37
Сообщение #19


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(sashaoff3 @ Feb 8 2016, 19:18) *
К примеру '5' будет '0''0''3''5' или в hex 30303335. Поэтому 160 x 4 = 640. Я вручную посчитал, получилось 608, а это > 556.

Немного не так, "160 символов в ASCII или 70 символов в юникоде"
т.е. поле данных смс 320 байт ASCII или 280 байт юникода.
Плюс все служебные поля, все равно меньше 556. Но главное не это, а то, что через этот буфер будет проходить только исходящая от вас смс, которая внутри команды AT+CMGS.
Кстати, вполне возможно, что сам текст смс, который вводится в текстовом режиме после приглашения ">", уже не идет через приемный командный буфер. Я по GPRS нормально гоняю блоки по 1 кбайту без проблем.

з.ы. советую при первом включении модема тут же выключать эхо. Это наследие еще со времен ручных телетайпов, чтобы индицировать на экране то, что печатает оператор. В сегодняшних реалиях это мешающий рудимент.
Go to the top of the page
 
+Quote Post
sashaoff3
сообщение Feb 8 2016, 17:56
Сообщение #20


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Лично мне эхо очень помогает. Что-то глючит, даю в блоке команду на выдачу типа putch('R'); Не всегда, но часто помогает понять зашла ли программа в этот блок или что-то напутал. Да и в примере этой темы, как проверить приходящую смс, что мне отдельный терминал городить? Про меньше 556 я уже писал, что прямо на экране посчитал - получилось 608. Если послать с ТЕЛЕ2 140 единиц + ip адрес. Оператор делит эту смс на две. Одна - 608, вторая - 84. Это только тело, без заголовка.

Сообщение отредактировал sashaoff3 - Feb 8 2016, 18:20
Go to the top of the page
 
+Quote Post
ArtemKAD
сообщение Feb 8 2016, 18:53
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364



Цитата(sashaoff3 @ Feb 8 2016, 19:56) *
Лично мне эхо очень помогает. Что-то глючит, даю в блоке команду на выдачу типа putch('R'); Не всегда, но часто помогает понять зашла ли программа в этот блок или что-то напутал. Да и в примере этой темы, как проверить приходящую смс, что мне отдельный терминал городить? Про меньше 556 я уже писал, что прямо на экране посчитал - получилось 608. Если послать с ТЕЛЕ2 140 единиц + ip адрес. Оператор делит эту смс на две. Одна - 608, вторая - 84. Это только тело, без заголовка.

И че его городить? Делаешь себе отладочный порт или используешь встроенную отладку камня и заканчиваешь ходить по густо разложенным граблям набивая себе шишки...
Go to the top of the page
 
+Quote Post
Baser
сообщение Feb 8 2016, 18:53
Сообщение #22


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата
как проверить приходящую смс, что мне отдельный терминал городить?

По мне так принял строку от модема в МК под отладчиком, остановился после приема на брейкпоинте - и смотри в буфере данные хоть до одури. Или вы прямо на лету разбираете, во время приема?

А ваш процесс отладки я так и не понял, хотя и телепат sm.gif
Сдается мне, что вы из-за эха на экране видите в два раза больше "единиц", чем есть на самом деле.
При отладке одинаковые данные никогда не шлют, это может привести к накладкам.
Пошлите смс с различными данными, например повторяющиеся группы цифр "01234567890123456789" и т.д. 160 штук
и посмотрите, что увидите со своим методом отладки.
Go to the top of the page
 
+Quote Post
smalcom
сообщение Feb 8 2016, 20:07
Сообщение #23


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



Цитата
з.ы. smalcom, вы бы сказали бы чего по делу, а то только ходите вокруг да ухмыляетесь, мне одному отдуваться?

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

Цитата
Через терминальную программу SSCOM3.2 посылаю в SIM900R 560 символов - в ответ символы выводятся, их количество совпадает с посланным, а в конце ERROR. Если меньше, то в ответ ОК. Аналогичная ситуация и при обмене с МК. Из-за него и пишу. Почитал инфу, но ничего не нашёл. Может быть есть настройка по увеличению кол-ва символов или тайм-аута? Прошу помочь добрым советом.

это и не вопрос. а... инстаграм какой-то: вот я ем, вот я, извините, пукаю, вот жена, вот кровать. вопрос, подлец, задай. ведь заинтриговал же и держит в напряжении.
"SSCOM3.2" - в данном случае вообще мусорная информация. Это как конекчусь в rsterm'е. Там ведь HTTP-набор, т.е. специфика телита. И всё, часть потенциальных знатоков отсеялась ибо тут уже
что-то с программой может быть. А потом окажется что ТС-то руками вводил и что-то видел, а написать ему было лень. Также и тут: бу-бу-бу...

Зря вы манну потратили ))

-----------------------
Иногда надо как на торрент-трекерах: "Статус: недооформлено". И доступ только у ТСа пока не оформит тему нормально )
Go to the top of the page
 
+Quote Post
sashaoff3
сообщение Feb 9 2016, 04:49
Сообщение #24


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

Группа: Участник
Сообщений: 87
Регистрация: 29-11-14
Пользователь №: 83 902



Цитата(ArtemKAD @ Feb 8 2016, 19:53) *
И че его городить? Делаешь себе отладочный порт или используешь встроенную отладку камня и заканчиваешь ходить по густо разложенным граблям набивая себе шишки...

Постараюсь взять на вооружение. Спасибо ArtemKAD.

Цитата(Baser @ Feb 8 2016, 19:53) *
По мне так принял строку от модема в МК под отладчиком, остановился после приема на брейкпоинте - и смотри в буфере данные хоть до одури. Или вы прямо на лету разбираете, во время приема?

А ваш процесс отладки я так и не понял, хотя и телепат sm.gif
Сдается мне, что вы из-за эха на экране видите в два раза больше "единиц", чем есть на самом деле.
При отладке одинаковые данные никогда не шлют, это может привести к накладкам.
Пошлите смс с различными данными, например повторяющиеся группы цифр "01234567890123456789" и т.д. 160 штук
и посмотрите, что увидите со своим методом отладки.

Постараюсь взять на вооружение. Послал смс как Вы предложили - то же самое. Да и как по другому, посылаю 140 штук (с сайта ТЕЛЕ2 - это максимальное кол-во) и на экране 140 штук + ip в коде UCS2 (по четыре символа на 1 посланный). Сначала на экран по команде "прочитать" выводится вся смс, а затем уже из МК посылаю на экран то, что принял в массив. Спасибо Baser, что вникли в проблему и дважды помогли, а не посчитали себя "небожителем со знанием поговорок", как некоторые.

Сообщение отредактировал sashaoff3 - Feb 9 2016, 05:52
Go to the top of the page
 
+Quote Post
smalcom
сообщение Feb 9 2016, 07:29
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



Цитата
а не посчитали себя "небожителем со знанием поговорок", как некоторые.

вам матом ответить? тоже мне чувственный нашёлся. обидели кисю на..ли в ящик.
Go to the top of the page
 
+Quote Post
Hub
сообщение Feb 12 2016, 13:13
Сообщение #26


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

Группа: Свой
Сообщений: 184
Регистрация: 7-10-15
Из: Санкт-Петербург
Пользователь №: 88 743





Сообщение отредактировал Hub - Feb 12 2016, 13:15
Go to the top of the page
 
+Quote Post

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

 


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


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