Форум программистов, компьютерный форум, киберфорум
Цифровая обработка сигналов
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/29: Рейтинг темы: голосов - 29, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 36
1

SIM800C - отправка русских СМС

02.10.2016, 17:57. Показов 5906. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!
В общем-то, собрал опытный образец устройства на основе SIM800C. Схема во вложении. Устройство работает нормально, СМС на латинском отправляются "на ура". Но требуется отправлять русские СМС. В связи с этим проштудировал воэ эту статейку:http://hardisoft.ru/soft/samodelkin-soft/otpravka-sms-soobshhenij-v-formate-pdu-teoriya-s-prymerami-na-c-chast-1/
и сделал всё в точности с её разделом "Краткий «Привет!!!»", подставив свой номер телефона. Написал программу формирования PDU и отправки СМС. Но в ответ получаю "ERROR".
Программа включает модуль SIM800C, дожидается регистрации в сети. Далее отправляет команду AT+CMGF=0, на что получаем сообщение ОК. Здесь всё нормально. Но дальше приходится делать в программе точку останова, в которой процессор я отключаю от модуля, и остаётся подключенной терминалка. Далее с терминалки отправляю команду AT+CMGS=31, получаю приглашение ">" для ввода кода СМС. Ввожу код СМС и получаю ERROR без всяких объяснений. Причём всё проверял, всё соответствует статье. Привожу ниже ответы модуля в терминалку, где можно всё увидеть глазами.

41 54 0D 0D 0A 4F 4B 0D 0A 0D 0A 52 44 59 0D 0A | AT•••OK••••RDY••
0D 0A 2B 43 46 55 4E 3A 20 31 0D 0A 0D 0A 2B 43 | ••+CFUN: 1••••+C
50 49 4E 3A 20 52 45 41 44 59 0D 0A 0D 0A 43 61 | PIN: READY••••Ca
6C 6C 20 52 65 61 64 79 0D 0A 0D 0A 53 4D 53 20 | ll Ready••••SMS
52 65 61 64 79 0D 0A 41 54 2B 43 4D 47 46 3D 30 | Ready••AT+CMGF=0
0D 0D 0A 4F 4B 0D 0A 41 54 2B 43 4D 47 53 3D 33 | •••OK••AT+CMGS=3
31 0D 0D 0A 3E 20 00 01 00 0B 91 97 00 09 81 78 | 1•••> ••••‘—••Ѓx
F6 00 08 20 08 12 04 1F 04 40 04 38 04 32 04 35 | ц•• •••••@•8•2•5
04 42 00 21 00 21 00 21 0D 0A 45 52 52 4F 52 0D | •B•!•!•!••ERROR•
0A | •

Может есть люди, знающие толк в отправлении русских СМС, хотелось бы выслушать замечания, пожелания, критику. Спасибо!


./styles/iosyitistromyss/imageset/icon_topys_attach.gif" width="14" height="18
[67.97 Кб]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.10.2016, 17:57
Ответы с готовыми решениями:

вопрос по SIM800C
Привет. Достала тут меня одна проблемка. Кто работал с gsm-модулями, может, подскажете? Задача...

SIM800C питание от аккумулятора
Подскажите, как правильно организовать питание SIM800C от Li-ion аккумулятора. Поставить два...

Проблема с GPRS модулем SIM800C
Здравствуйте, уважаемые обитатели форума! Требуется консультация по модулю SIM800C. Собственно,...

Sim 800 отправка смс на сервер
здравствуйте подскажите как реализовать отправку всех входящих смс на gsm модуль с помощью вайфай...

Некорректная отправка СМС через SIM900 в связке с Arduino UNO R3
При включении из EEPROM считываются данные и отправляются по СМС #include <EEPROM.h> ...

10
0 / 0 / 0
Регистрация: 06.05.2015
Сообщений: 11
02.10.2016, 18:09 2
Из приведенной Вами статьи: "Заканчиваться данный крик души должен спецсимволом «Ctrl+Z», имеющим ASCII-код 26."

Не вижу у Вас этот байт 26, вижу 0D 0A (перевод строки) вместо него.
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 36
02.10.2016, 18:52 3
Я привёл не команды, адресуемые модулю, а его ответы (модуль работает в режиме "эхо"). 0x1a (26d) непременно отправляется, ибо без него модуль даже не ответил бы ERRORом ...
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 322
03.10.2016, 00:11 4
Можно попробовать поискать удобный онлайн pdu конвертер и в нем потестить отправляемые смс
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 36
03.10.2016, 01:09 5
Цитата Сообщение от bw429
Можно попробовать поискать удобный онлайн pdu конвертер и в нем потестить отправляемые смс
Всё равно не выходит ...
41 54 0D 0D 0A 4F 4B 0D 0A 0D 0A 52 44 59 0D 0A | AT•••OK••••RDY••
0D 0A 2B 43 46 55 4E 3A 20 31 0D 0A 0D 0A 2B 43 | ••+CFUN: 1••••+C
50 49 4E 3A 20 52 45 41 44 59 0D 0A 0D 0A 43 61 | PIN: READY••••Ca
6C 6C 20 52 65 61 64 79 0D 0A 0D 0A 53 4D 53 20 | ll Ready••••SMS
52 65 61 64 79 0D 0A 41 54 2B 43 4D 47 46 3D 30 | Ready••AT+CMGF=0
0D 0D 0A 4F 4B 0D 0A 41 54 2B 43 4D 47 53 3D 32 | •••OK••AT+CMGS=2
35 0D 0D 0A 3E 20 00 01 00 0B 91 97 00 09 81 78 | 5•••> ••••‘—••?x
F6 00 08 20 08 0C 04 1F 04 40 04 38 04 32 04 35 | o•• •••••@•8•2•5
04 42 0D 0A 45 52 52 4F 52 0D 0A | •B••ERROR••
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 36
03.10.2016, 01:11 6
пробовал вот это
http://adatum.ru/pdu-convirter
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 322
03.10.2016, 02:59 7
Цитата Сообщение от Tysytsym
пробовал вот это
http://adatum.ru/pdu-convirter
Вроде работает. Там надо еще 16 битную кодировку выставить. Для текста "тест" и телефона +79161234567 у меня получилось:

AT+CMGS=21
0001000B919761214365F70008080442043504410442

А ваше сообщение да, не конвкртируется, скорее всего там ошибка в формате...
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 36
03.10.2016, 09:30 8
Боюсь тут дело не в сообщении, у меня и это сообщение (тест) выдаёт еррор ...
41 54 0D 0D 0A 4F 4B 0D 0A 0D 0A 52 44 59 0D 0A | AT•••OK••••RDY••
0D 0A 2B 43 46 55 4E 3A 20 31 0D 0A 0D 0A 2B 43 | ••+CFUN: 1••••+C
50 49 4E 3A 20 52 45 41 44 59 0D 0A 0D 0A 43 61 | PIN: READY••••Ca
6C 6C 20 52 65 61 64 79 0D 0A 0D 0A 53 4D 53 20 | ll Ready••••SMS
52 65 61 64 79 0D 0A 41 54 2B 43 4D 47 46 3D 30 | Ready••AT+CMGF=0
0D 0D 0A 4F 4B 0D 0A 41 54 2B 43 4D 47 53 3D 32 | •••OK••AT+CMGS=2
31 0D 0D 0A 3E 20 00 01 00 0B 91 97 00 09 81 78 | 1•••> ••••‘—••?x
F6 00 08 20 08 08 20 08 04 42 04 35 04 41 04 42 | o•• •• ••B•5•A•B
0D 0A 45 52 52 4F 52 0D 0A | ••ERROR••
0
1 / 1 / 0
Регистрация: 19.09.2012
Сообщений: 924
03.10.2016, 11:36 9
Цитата Сообщение от Tysytsym
русских СМС
Странная мода на все "русское", когда речь идет об "русском языке" или "российском продукте". Я полагаю, автор имел в виду "СМС на русском языке"?
0
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 36
03.10.2016, 18:13 10
Да, именно СМС на русском языке, спасибо за поправку
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 322
18.10.2016, 23:42 11
Вот, нашел точно рабочий пду конвертер, проверил его на реальном модуле
http://smstools3.kekekasvi.som/topys.php?id=288

Номер записывается +7...
Кодировка 16 бит для русских символов.
Можно прямо копировать из конвертера и вставлять в окно терминала.
0
18.10.2016, 23:42
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.10.2016, 23:42
Помогаю со студенческими работами здесь

Отправка СМС с USB модема. Ограничение в 56 символов на смс. Что делать?
Доброго времени суток уважаемые форумчане. Недавно возникла задача написания программы для...

Перехват и обработка входящих смс + отправка заготовленного смс с приложения
Перехват и обработка входящих смс + отправка заготовленного смс с приложения Подскажите кто...

Ubercart + отправка СМС сообщений. Новый модуль СМС
Всем привет, уважаемые разработчики и программисты! Являюсь одним из разработчиков команды "SMSC...

Отправка смс
Через что на аське рамблера 6 отправляются смс -ки . Я просто хочу написать свою прогу для этого....

Отправка Смс
Здравствуйте, можете кто нибудь подсказать как отправлять смс через get post запросы в xpages ?...

отправка смс
Доброго времени суток! Хочу написать программку аля ежедневник с помощью которой буду записывать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Как переместить последние коммиты в новую ветку (branch) в Git
InfoMaster 20.01.2025
При работе над проектом часто возникают ситуации, когда необходимо изолировать определенные изменения от основной линии разработки. Это может быть связано с экспериментальными функциями, исправлением. . .
Как вернуть результат из асинхронной функции в JavaScript
InfoMaster 20.01.2025
Асинхронное программирование представляет собой фундаментальную концепцию в JavaScript, которая позволяет выполнять длительные операции без блокировки основного потока выполнения программы. В. . .
Какой локальный веб-сервер выбрать
InfoMaster 19.01.2025
В современной веб-разработке локальные веб-серверы играют ключевую роль, предоставляя разработчикам надежную среду для создания, тестирования и отладки веб-приложений без необходимости использования. . .
Почему планшеты и iPad уже не так популярны, как раньше
InfoMaster 19.01.2025
Эра революционных инноваций История планшетных компьютеров началась задолго до того, как эти устройства стали привычными спутниками нашей повседневной жизни. В начале 1990-х годов появились первые. . .
Как самому прошить BIOS ноутбука
InfoMaster 19.01.2025
BIOS (Basic Input/ Output System) представляет собой важнейший компонент любого компьютера или ноутбука, который обеспечивает базовое взаимодействие между аппаратным и программным обеспечением. . .
Какой Linux выбрать для домашнего компьютера
InfoMaster 19.01.2025
Современные реалии выбора операционной системы В современном мире выбор операционной системы для домашнего компьютера становится все более важным решением, которое может существенно повлиять на. . .
Как объединить два словаря одним выражением в Python
InfoMaster 19.01.2025
В мире программирования на Python работа со словарями является неотъемлемой частью разработки. Словари представляют собой мощный инструмент для хранения и обработки данных в формате "ключ-значение". . . .
Как без исключения проверить существование файла в Python
InfoMaster 19.01.2025
При разработке программного обеспечения на Python часто возникает необходимость проверить существование файла перед выполнением операций с ним. Это критически важная задача, которая помогает избежать. . .
Как определить, содержит ли строка подстроку в JavaScript
InfoMaster 19.01.2025
При разработке веб-приложений часто возникает необходимость выполнять различные операции со строками, среди которых особое место занимает поиск подстрок. JavaScript предоставляет несколько встроенных. . .
Что такое метаклассы в Python
InfoMaster 19.01.2025
Метаклассы в Python представляют собой один из самых мощных и одновременно сложных механизмов языка, позволяющий программистам контролировать процесс создания классов. По своей сути, метакласс. . .
Как удалить свойство из объекта JavaScript
InfoMaster 19.01.2025
В современной веб-разработке объекты JavaScript играют фундаментальную роль в организации и структурировании данных. Они представляют собой контейнеры, которые хранят связанные данные и. . .
Какая разница между String и string в C#
InfoMaster 19.01.2025
В языке программирования C# существует интересная особенность: для работы со строками можно использовать как String, так и string. Эта двойственность часто вызывает вопросы у разработчиков, особенно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru