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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> отправка SMS
maxntf
сообщение Jul 14 2009, 10:08
Сообщение #1


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

Группа: Участник
Сообщений: 107
Регистрация: 13-05-09
Пользователь №: 49 008



Такая вот проблема.
Использую модуль SIM300
Раньше отправлял SMS в текстовом режиме AT+CMGF=1.
Все остальное оставалось по умолчанию. Сейчас в таком варианте если отправить сообщение на телефоне вместо текста кубики.
Что изменилось, причем такое началось недавно.
Go to the top of the page
 
+Quote Post
chief_olimp
сообщение Jul 14 2009, 13:46
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 249
Регистрация: 31-10-05
Из: Украина Нетешин
Пользователь №: 10 344



а если так? AT+CSMP=17,167,0,25
Go to the top of the page
 
+Quote Post
maxntf
сообщение Jul 15 2009, 06:21
Сообщение #3


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

Группа: Участник
Сообщений: 107
Регистрация: 13-05-09
Пользователь №: 49 008



Цитата(chief_olimp @ Jul 14 2009, 17:46) *
а если так? AT+CSMP=17,167,0,25

Все равно!
Нормально отправляется только в цифре(PDU) или кирилице.
Go to the top of the page
 
+Quote Post
SKov
сообщение Jul 15 2009, 07:30
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119



Цитата(maxntf @ Jul 15 2009, 10:21) *
Нормально отправляется только в цифре(PDU) или кирилице.

Извините, я тут немножко не понял. Можно передавать смс кириллицей в текстовом режиме (не в PDU)?
Если можно, чуть подробнее, как это сделать?
Go to the top of the page
 
+Quote Post
maxntf
сообщение Jul 15 2009, 08:06
Сообщение #5


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

Группа: Участник
Сообщений: 107
Регистрация: 13-05-09
Пользователь №: 49 008



Цитата(SKov @ Jul 15 2009, 11:30) *
Извините, я тут немножко не понял. Можно передавать смс кириллицей в текстовом режиме (не в PDU)?
Если можно, чуть подробнее, как это сделать?

Ставим юникод
пр.
AT+CMGS="00380030003100310031003100310031003100310031"
> 0054004500530054

Передаст на номер 8011111111111 SMS с текстом TEST

Так что кто может сказать что поменялось в кодировках у Украинских операторов. Почему теперь при отправки SMS в формате "IRA" или "GSM" в текстовом режиме вместо текста получаю квадратики?
Go to the top of the page
 
+Quote Post
MiklPolikov
сообщение Jul 15 2009, 10:29
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702



Цитата(maxntf @ Jul 15 2009, 12:06) *
Ставим юникод
пр.
AT+CMGS="00380030003100310031003100310031003100310031"
> 0054004500530054

Передаст на номер 8011111111111 SMS с текстом TEST

Так что кто может сказать что поменялось в кодировках у Украинских операторов. Почему теперь при отправки SMS в формате "IRA" или "GSM" в текстовом режиме вместо текста получаю квадратики?


У меня абсолютно та же проблема , хоть я и в Москве.
Отправляю смс в GSM и получаю квадратики .

Я правильно понимаю, что кодировка GSM 7и битовая это значит символы надо кодировать так :
1 байт – старший бит это младший бит 2-го символа + 7 бит первого символа
2 байт – 2 старших бита это младшие два бита 3-го символа + 6 оставшихся
бит 2-го символа

и т.д ?


--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
Go to the top of the page
 
+Quote Post
MiklPolikov
сообщение Jul 15 2009, 11:55
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702



Вот что интересно :

1) Отправляю смс 123456789 с сотового на сим300
получаю :
+CMGR: "REC UNREAD","+79055314063",,"09/07/15,15:15:51+16"123456789

2)Отправляю эту же смс с СИМ300 самому себе и сразу же её получаю
+CMGR: "REC UNREAD","+79035825709",,"09/07/15,15:33:47+16">123456789

Во втором случае появился символ '>'

Если этот символ не слать перед текстом то смс всё равно отправляется ! То есть он и не нужен !

AT+CMGS="+79055314063"
0x0D
123456789
0x1A


Но вопрос в другом : Почему сам СИМ300 свою смс получает нормально, а сотовый получает квадратики ?


--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jul 15 2009, 12:01
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(MiklPolikov @ Jul 15 2009, 14:55) *
Во втором случае появился символ '>'
Если этот символ не слать перед текстом то смс всё равно отправляется ! То есть он и не нужен !
А символ > и не надо слать перед СМС! Этот символ передаёт телефон(модуль) как приглашение для ввода СМС.
Go to the top of the page
 
+Quote Post
MiklPolikov
сообщение Jul 15 2009, 14:24
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702



Я решил проблему !!!

AT+CSCS="GSM"
0x0D
OK

AT+CSMP=17,167,0,0
0x0D
OK

AT+CMGS="+79055314063"
0x0D
>
HELLOW
0x1A

Приходит смс HELLOW
AT+CSMP=17,167,0,0 в этой строчке последняя цифра задаёт Data Coding Sheme . 0 это Default GSM
Alphabet. Почему при этом не приходится перекодировать 8и битовые символы в 7и я не понимаю. Но главное работает.


--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
Go to the top of the page
 
+Quote Post
SKov
сообщение Jul 15 2009, 14:40
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119



Цитата(MiklPolikov @ Jul 15 2009, 18:24) *
Приходит смс HELLOW
AT+CSMP=17,167,0,0 в этой строчке последняя цифра задаёт Data Coding Sheme . 0 это Default GSM
Alphabet. Почему при этом не приходится перекодировать 8и битовые символы в 7и я не понимаю. Но главное работает.

А почему нельзя просто включить текстовый режим и просто передать загадочное слово HELLOW
в текстовом режиме? ИМХО, нетекстовые режимы и всякие юникоды нужны для передачи не латиницы.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jul 15 2009, 14:52
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(MiklPolikov @ Jul 15 2009, 17:24) *
Почему при этом не приходится перекодировать 8и битовые символы в 7и я не понимаю.
Как это я себе понимаю: телефон(модуль) передаёт СМС в каком-то своём формате. Скорее всего, этот формат и есть PDU (или что-то очень близкое, но будем называть его "PDU"). В текстовом режиме телефон(модуль) берёт на себя функции перекодирования из текста в "PDU". Поля этого "PDU" нужно заполнить некоторыми значениями, которые Вы задаёте командой AT+CSMP. Data Coding Sheme - это одно из полей "PDU" и собственно текст СМС (тот, что Вы задаёте после приглашения к вводу после приёма ">") в этот "PDU" телефоном(модулем) в указанном Вами формате и помещается.
Go to the top of the page
 
+Quote Post
maxntf
сообщение Jul 17 2009, 09:26
Сообщение #12


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

Группа: Участник
Сообщений: 107
Регистрация: 13-05-09
Пользователь №: 49 008



Цитата(MiklPolikov @ Jul 15 2009, 18:24) *
Я решил проблему !!!

AT+CSCS="GSM"
0x0D
OK

AT+CSMP=17,167,0,0
0x0D
OK

AT+CMGS="+79055314063"
0x0D
>
HELLOW
0x1A

Приходит смс HELLOW
AT+CSMP=17,167,0,0 в этой строчке последняя цифра задаёт Data Coding Sheme . 0 это Default GSM
Alphabet. Почему при этом не приходится перекодировать 8и битовые символы в 7и я не понимаю. Но главное работает.

Это конечно хорошо. Только вот вопрос в другом, что на самом деле поменялось, и как можно быть уверенным что так будет работать и дальше?
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Sep 8 2010, 18:18
Сообщение #13


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



1. Каким символом ACSII заменяется Ctrl+Z для отправки смс? Символом '&' (0x26)?
2. Перед набором текста смс, необходимо ожидать символ '>' (0x3E) или лучше вставить временную паузу?
Спасибо.

Сообщение отредактировал Alt.F4 - Sep 8 2010, 18:20
Go to the top of the page
 
+Quote Post
Master of Nature
сообщение Sep 8 2010, 18:59
Сообщение #14


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

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



Цитата(Alt.F4 @ Sep 8 2010, 22:18) *
1. Каким символом ACSII заменяется Ctrl+Z для отправки смс? Символом '&' (0x26)?
2. Перед набором текста смс, необходимо ожидать символ '>' (0x3E) или лучше вставить временную паузу?
Спасибо.

1) 0x1A - это спецсимвол и равен он десятичному числу 26
2) лучше дождаться приглашения '>'


--------------------
FAQ по AD
Форум по AD
Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью.
...стоит запомнить ...вернее задуматься.
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Sep 8 2010, 19:25
Сообщение #15


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Спасибо.
Еще хочу уточнить: бывали случаи отсутствия символа '>'?
з.ы. защита от зависания при отсутствии '>' занимает 10% флэш памяти МК, что для меня критично.
Go to the top of the page
 
+Quote Post

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

 


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


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