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

 
 
15 страниц V  « < 3 4 5 6 7 > »   
Reply to this topicStart new topic
> AT команды, всякие мелкие вопросы
Master of Nature
сообщение Dec 7 2009, 22:19
Сообщение #61


Мыслящий
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270



Цитата(Aner @ Dec 8 2009, 02:11) *
Ну вы блин даете!
Intel придумал такой формат давно давно. Если гуглить не можете, то вот википедия вам поможет:
http://ru.wikipedia.org/wiki/Intel_Hex

В таком случае не совсем корректно сформулирован вопрос?
Или это не вопрос, а просто размышление вслух: посылать данные в двоичном виде или в текстовом?
Непонятно как-то, что значит - сервер не поймет ASCII, он настроен на прием HEX ?
И приведенной выше ссылки следует, что HEX - это формат текстовых файлов в кодировке ASCII.
Значит как текст и надо передавать.


--------------------
FAQ по AD
Форум по AD
Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью.
...стоит запомнить ...вернее задуматься.
Go to the top of the page
 
+Quote Post
Aner
сообщение Dec 7 2009, 22:29
Сообщение #62


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



текст то текстом а вот кто-то должен формировать остальные атрибуты:

Начало записи
Счётчик байт
Адрес
Тип записи
Данные в ASCII
Контрольная сумма

например это все увеличивает размер файла.
Если нет этих атрибутов как сервер поймет?
Go to the top of the page
 
+Quote Post
av-master
сообщение Dec 7 2009, 22:40
Сообщение #63


Знающий
****

Группа: Свой
Сообщений: 857
Регистрация: 14-05-05
Из: Украина
Пользователь №: 4 998



если бинарные данные. переходите в прозрачный режим и шлите все что угодно.. Возврат в командный по +++ или ДТР
Go to the top of the page
 
+Quote Post
Master of Nature
сообщение Dec 7 2009, 22:44
Сообщение #64


Мыслящий
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270



Цитата(Aner @ Dec 8 2009, 02:29) *
текст то текстом а вот кто-то должен формировать остальные атрибуты:

Начало записи
Счётчик байт
Адрес
Тип записи
Данные в ASCII
Контрольная сумма

например это все увеличивает размер файла.
Если нет этих атрибутов как сервер поймет?

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

Особенно мне понравилось, что к "остальным атрибутам" причислены "данные в ASCII".
Тогда ради чего передача ведется ?


--------------------
FAQ по AD
Форум по AD
Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью.
...стоит запомнить ...вернее задуматься.
Go to the top of the page
 
+Quote Post
west329_
сообщение Dec 8 2009, 07:03
Сообщение #65


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 10-09-07
Из: UKR/Voz
Пользователь №: 30 423



Извиняюсь, перечитал, сегодня с утра, действительно написал вопрос непонятно. Данные все они одинаковые 1/0, просто я заметил на форуме что большинство использует передачу сообщений ASCII, имхо удобно для отладки, но непрактично. Вот и заинтересовало, как правильно передавать просто сырые данные (любое значение байта).

Отдельно спасибо Baser. Направил в нуженое русло.

из даташита SIM300D AT Commands Set V1.06 sim300d_atc_v1.06.pdf
Код
Write command AT+CIPSEND=<length>

This command is used to send fixed length data.
If connection is not established or disconnect:
ERROR If sending successfully: SEND OK If sending fail: SEND FAIL Parameter
<length> a numeric parameter which indicatesthe length of sending data, it must less than 1024


неполностью разобрался как правильно вызвать эту команду, поправте если ошибаюсь

Действие 1. шлем в модем
Код
AT+CIPSEND=512<

Действие 2. шлём сырые данные 512байт
Код
.........

Действие 3. закрываем передачу
Код
>
Go to the top of the page
 
+Quote Post
av-master
сообщение Dec 8 2009, 09:15
Сообщение #66


Знающий
****

Группа: Свой
Сообщений: 857
Регистрация: 14-05-05
Из: Украина
Пользователь №: 4 998



в таком режиме можно получить интересные глюки...
если коды лежат вне ascii диаппазона... например h17 может не проходить... хотя если включено аппаратное управление потоком то все вроде работает...
Go to the top of the page
 
+Quote Post
west329_
сообщение Dec 8 2009, 10:29
Сообщение #67


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 10-09-07
Из: UKR/Voz
Пользователь №: 30 423



Как тогда выйти с такого положения ?
данные могут быль любые в диапазоне 0х00-0хFF
Go to the top of the page
 
+Quote Post
Baser
сообщение Dec 8 2009, 10:53
Сообщение #68


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

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



Цитата(west329_ @ Dec 8 2009, 09:03) *
неполностью разобрался как правильно вызвать эту команду, поправте если ошибаюсь

После установления коннекта шлем команду:
Код
AT+CIPSEND=512

Модуль возвращает предложение ввести данные (хотя выдачу этой галки можно и отключить, но паузу выдержать желательно, были сообщения о глюках, если посылать данные после команды без паузы):
Код
>

Шлете 512 байтов любых данных, после чего модем передает их все одним куском и выдает:
Код
SEND OK

После чего можно или ждать, когда нужно будет послать новые данные или закрывать соединение.

Управление потоком должно быть или выключено, или установленно "аппаратное".
Go to the top of the page
 
+Quote Post
av-master
сообщение Dec 8 2009, 11:46
Сообщение #69


Знающий
****

Группа: Свой
Сообщений: 857
Регистрация: 14-05-05
Из: Украина
Пользователь №: 4 998



при ВЫКЛЮЧЕННОМ управлении потоком у меня сьедались 17-ки (это софтовый стоп). долго не мог понять причину )) пока не отправил 00 -- 01 -- 02 .... FF ... и не увидел пропавшую 17 (или 15) точно непомню...
Go to the top of the page
 
+Quote Post
Baser
сообщение Dec 8 2009, 14:23
Сообщение #70


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

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



Цитата(av-master @ Dec 8 2009, 13:46) *
при ВЫКЛЮЧЕННОМ управлении потоком у меня сьедались 17-ки (это софтовый стоп). долго не мог понять причину )) пока не отправил 00 -- 01 -- 02 .... FF ... и не увидел пропавшую 17 (или 15) точно непомню...

Вполне возможно, я без аппаратного управления потоком не проверял..
Go to the top of the page
 
+Quote Post
west329_
сообщение Dec 9 2009, 07:36
Сообщение #71


Местный
***

Группа: Свой
Сообщений: 378
Регистрация: 10-09-07
Из: UKR/Voz
Пользователь №: 30 423



Обычно простые 8 битные контроллеры не позволяют реализовать аппаратное управления потоком, это надо наверно сразу арм7 ставить.
Go to the top of the page
 
+Quote Post
stream
сообщение Dec 9 2009, 07:58
Сообщение #72


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

Группа: Участник
Сообщений: 142
Регистрация: 20-08-07
Из: Тула
Пользователь №: 29 919



Цитата(west329_ @ Dec 9 2009, 11:36) *
Обычно простые 8 битные контроллеры не позволяют реализовать аппаратное управления потоком, это надо наверно сразу арм7 ставить.

Да ладно тебе, все что требуется - это две ножки процессора для CTS/RTS и какой-то способ их периодической проверки для "восстановления после сработки" (таймерное прерывание или программа, написанная в виде одного большого цикла). Ну, бывает, наверное, что даже этого нет... я бы от такого кристалла держался подальше.
Go to the top of the page
 
+Quote Post
Baser
сообщение Dec 9 2009, 21:19
Сообщение #73


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

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



Цитата(west329_ @ Dec 9 2009, 09:36) *
Обычно простые 8 битные контроллеры не позволяют реализовать аппаратное управления потоком, это надо наверно сразу арм7 ставить.

biggrin.gif
"аппаратным", управление потоком называется, в основном, потому, что помимо линий данных применяются еще два аппаратных сигнала CTS и RTS.
Все остальное реализуется программно.
CTS - сигнал от модема к МК, что буфер передатчика вот-вот заполнится и нужно приостановит передачу данных в модем.
RTS - то же самое в обратную сторону.
Просто нужно иметь в виду, что после активизации сигнала запрета, несколько байт еще могут прилететь. А вот какое конкретно кол-во - зависит от реализации модема.
Go to the top of the page
 
+Quote Post
ironmaden
сообщение Aug 12 2010, 09:26
Сообщение #74





Группа: Новичок
Сообщений: 2
Регистрация: 12-08-10
Пользователь №: 58 871



Всем привет,
есть вопрос....

Интро:
-- Есть некоторая плата на ARM-e, с линуксом собранным на основе идеологии сборки openembedded
-- Вариант платы #1 - на плате распаяны два модема GSM/CDMA оба AnyData (выбор, вкл, выкл нужного модема через gpio)
-- Вариант платы #2 - на плате распаян GSM модем Wavecom

Общение в обоих случаях идет через последовательный порт /dev/ttySAC0.
При отладке общаюсь с модемом в ручном режиме через minicom но через тот же /dev/ttySAC0.

Треубется -- принимать на плату SMS-сообщения, с последующей их обработкой на стороне ещё одного приложения -- это по сути все реализовано и работает с модемом Wavecom для варианта индикации "AT+CNMI=2,2,2,1,0"

AnyData GSM (DTP-601W) модем с такими настройками работать не хочет
Код
at+cnmi=2,2,2,1,0
+CMS ERROR: 303


С другими значениями индикации тоже весело, на большую часть отвечает "+CMS ERROR: 303", на других (например, "AT+CNMI=2,1,0,0,0") виснет наглухо -- помогает только ребут всей платы.

Код
ati
Manufacturer: QUALCOMM INCORPORATED
Model: 19
Revision: U66WHH02  1  [Aug 10 2009 24:00:00]
IMEI: 354862010998768
+GCAP: +CGSM,+DS,+ES

OK
at+csq
+CSQ: 10,99

OK
at+cnmi=2,2,2,1,0
+CMS ERROR: 303
at+creg?
+CREG: 0,1

OK
at+cops?
+COPS: 0,0,"MegaFon RUS",2

OK


может это какие-либо ограничения, может баг прошифки, или надо какие-то ещё параметры выставить до того как включать режим индикации сообщений?

Сообщение отредактировал ironmaden - Aug 12 2010, 09:27
Go to the top of the page
 
+Quote Post
andrewlekar
сообщение Aug 13 2010, 04:58
Сообщение #75


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



Попробуйте AT+CNMI=2,2,0,1,0 и ещё AT+CNMI=2,2,0,0,0.
Go to the top of the page
 
+Quote Post

15 страниц V  « < 3 4 5 6 7 > » 
Reply to this topicStart new topic
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 


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


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