Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Отправка sms через GSM-телефон  (Прочитано 5853 раз)
0 Пользователей и 1 Гость смотрят эту тему.
asker
Помогающий

ru
Offline Offline
Пол: Мужской

« : 20-05-2007 07:03 » new

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

Эта тема является некоторым продолжением темы "И снова работа с COM-портом (в асинхронном режиме)".

Вопросы:
1) Одинаково ли должен быть настроен COM-порт для общения с разными моделями телефонов (сотовых)?
    У меня 2 телефона Nokia 6131 и Siemens C60. Nokia подключается к компу через bluetooth. Siemens
    через data-кабель. в обоих случаях com-порты виртуальные.
    Настройки COM-порта такие:
                // Размеры внутреннего входного и выходного буферов 4096 и 512
                // ...
                // DCB
                dcb.BaudRate = CBR_9600;
      dcb.ByteSize = 8;
      dcb.fParity = NOPARITY;
      dcb.StopBits = ONESTOPBIT;
      dcb.fBinary = 1;
                dcb.XonLim = 1024;
                dcb.XoffLim = 1024;
                dcb.XonChar = 0x11;
                dcb.XoffChar = 0x13;
                dcb.fRtsControl = RTS_CONTROL_ENABLE;
                dcb.fDtrControl = DTR_CONTROL_ENABLE;
                dcb.fTXContinueOnXoff = TRUE;
                // Тайм-ауты
                commTO.ReadIntervalTimeout = MAXDWORD;
             commTO.ReadTotalTimeoutMultiplier = 0;
             commTO.ReadTotalTimeoutConstant = 10;
             commTO.WriteTotalTimeoutMultiplier = 0;
             commTO.WriteTotalTimeoutConstant = 3000;
    В этом случае nokia отвечает на мои AT-команды, например ATE0. Siemens при этих же настройках
    молчит, по крайне мере я от него ничего не получаю.

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

2) Порт настроен под нокиа. Почему телефон принимает команду на отправку sms, если длина не более 7 символов (кодировка 7 бит, т.е. длина sms <= 160 символам).
Т.е. посылаю команду AT+cmgs=<длина>;
Модем отвечает приглашающем символом ">"
Дальше отсылаю sms (в закодированном виде).
Если текст sms не более 7 символов, то модем думает и через некоторое время говорит ... OK
Если же текст sms более 7 символов, то модем практически сразу говорит ERROR.
Кстати тоже самое и с гипертерминалом!
Спашивается это моя прога косячит или не правильно кодирует.
Но в правильности кодировки я уверен почти на 90%, т.к. я кодировку отлаживал по другой проге (SiMoCo), которая отправляла sms-ки + примеры + теория.
Записан

С уважением, asker
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines