Перейти к содержанию
    

Люди добрые, подскажите, что я делаю не так.

 

Модуль SIM900 подключен к USB порту через FT232RL. Между FT232 и модулем стоят ключи, которые разрывают линию UART пока сигнал STATUS в модуле равен 0.

FT232 и ключи прекрасно работают и команды с компьютера через программку Serial Port Monitor поступают на модуль.

Модуль же в свою очередь, командным эхом передает обратно на компьютер принятые команды и так же нормально регистрируется в сети. Но на принятые команды он не реагирует, только отвечает эхом.

При звонке на модуль, он пишет RING и пишет NORMAL POWER DOWN когда я нажимаю кнопку POWER KEY.

Пины UARTа модуля: DTR и RTS сидят на земле, RxD и TxD идут на ключи и дальше на FT232.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но на принятые команды он не реагирует, только отвечает эхом.

 

Эхо после каждой команды? Эхо - повторение введёных команд? Или эхо только при включении?

 

Осциллографом можете посмотреть RX на модуле? Может к нему команды-то не приходят?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Эхо после каждой команды? Эхо - повторение введёных команд? Или эхо только при включении?

 

Осциллографом можете посмотреть RX на модуле? Может к нему команды-то не приходят?

Эхо приходит после каждой команды (эта функция модуля по умолчанию, которую можно отключить). И эхо приходит всегда, сразу после того как модуль становится готов к работе.

Данные на вывод RX модуля приходят, только что проверил осциллографом. Да и если бы они не приходили на модуль, то и эха бы не было.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Эхо приходит после каждой команды (эта функция модуля по умолчанию, которую можно отключить). И эхо приходит всегда, сразу после того как модуль становится готов к работе.

Данные на вывод RX модуля приходят, только что проверил осциллографом. Да и если бы они не приходили на модуль, то и эха бы не было.

Вы посылаемые команды какими символами завершаете?

Необходимо завершать символом - <CR>(<Возврат Каретки>)

код этого символа 13 (десятичный) или 0x0D - шестнадцатеричный

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы посылаемые команды какими символами завершаете?

Необходимо завершать символом - <CR>(<Возврат Каретки>)

код этого символа 13 (десятичный) или 0x0D - шестнадцатеричный

К примеру, на входящий звонок (на модуль) я посылаю команду ATA.Больше ничего не пишу.

Можете на примере этой же команды написать как именно нужно писать?

Может так надо ATA\r ?

 

Нужно посмотреть схему между модулем и фт232.

Между модулем и FT стоят ключи. Я проверял, они коммутируют входящие/выходящие сигналы без искажений.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

К примеру, на входящий звонок (на модуль) я посылаю команду ATA.Больше ничего не пишу.

Можете на примере этой же команды написать как именно нужно писать?

Может так надо ATA\r ?

Вы данные передаете с помощью какой программы?

Если Serial Port Monitor - то там нужно отдельно добивать символ.

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

И первой командой попробуйте AT<CR>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может так надо ATA\r ?

 

Можно и так. Зависит от терминальной программы, которой пользуетесь.

Если терминал от Брая - тогда в конце строки нужно дописывать $0D .($ указывает, что символ будет задан в hex формате)

В общем нужно выдать символ перевода каретки. Это 0D в шестнадцатеричной системе.

 

Добавите - должно нормально заработать.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы данные передаете с помощью какой программы?

Если Serial Port Monitor - то там нужно отдельно добивать символ.

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

И первой командой попробуйте AT<CR>

Большое спасибо. В конце команды добавил 0D и все заработало.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А чтобы не городить ключи между модулем и FT и управлять ими от STATUS, достаточно на четвертый вывод FT232RL (VCCIO) подать напряжение с VEXT модуля. Тогда выходной буфер преобразователя будет запитываться нужной напругой и синхронно со статусом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А чтобы не городить ключи между модулем и FT и управлять ими от STATUS, достаточно на четвертый вывод FT232RL (VCCIO) подать напряжение с VEXT модуля. Тогда выходной буфер преобразователя будет запитываться нужной напругой и синхронно со статусом.

На счет вывода VCCIO полностью согласен. А вот то что VEXT появляется синхронно со статусом, не соглашусь.

Я специально сравнивал, VEXT появляется сразу после включения модуля, а статус появляется чуть позже, как только модуль будет готов к работе.

Чтобы избежать неприятностей с фантомной загрузкой, то советую использовать только сигнал статуса.

 

Подскажите пожалуйста, как передать данные с модуля на модуль, при обычном телефонном звонке (не TCP IP и не FAX). И какие выводы модуля нужно задействовать и каким образом?

Изменено пользователем Дюбо Андрей

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можете не соглашаться, но все внутренние подтяжки модуля на порту сделаны именно к этой ножке (у меня схема модуля перед собой имеется :) ). И в отличии от SIM300 и SIM300C где нельзя было просто так использовать Vext, в SIM900 можно. А програмное соответствие появления STATUS было переделано после 5 версии чобы соответствовать по временам 300й серии.

 

Заглянул в даташит на чипсет - все правильно, в соответствии с перемычкой GPIO_Voltage выбирается питание портов 1.8 или 2.8 вольта и появляется питание VGPIO. С этого момента порты активны. Это же VGPIO выводится в модуле наружу под именем Vext.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можете не соглашаться, но все внутренние подтяжки модуля на порту сделаны именно к этой ножке (у меня схема модуля перед собой имеется :) ). И в отличии от SIM300 и SIM300C где нельзя было просто так использовать Vext, в SIM900 можно. А програмное соответствие появления STATUS было переделано после 5 версии чобы соответствовать по временам 300й серии.

Я с Вами спорить не могу, ибо только начал заниматься этими модулями :rolleyes:

Подскажите пожалуйста, как передать данные с модуля на модуль, при обычном телефонном звонке (не TCP IP и не FAX). И какие выводы модуля нужно задействовать и каким образом?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите пожалуйста, как передать данные с модуля на модуль, при обычном телефонном звонке (не TCP IP и не FAX). И какие выводы модуля нужно задействовать и каким образом?
Никакие (дополнительно) - если речь про CSD. Все как на обычном модеме.

необходимо просто вызов сделать ATDxxxxx<CR>

А на другом - или снять трубку или включить автоснятие после первого гудка.

И, естественно, дождаться установки соединения.

 

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

Насчет этого - почитайте инструкцию или поищите здесь на форуме.

 

Много документации есть на сайте Гамма

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Никакие (дополнительно) - если речь про CSD. Все как на обычном модеме.

необходимо просто вызов сделать ATDxxxxx<CR>

А на другом - или снять трубку или включить автоснятие после первого гудка.

И, естественно, дождаться установки соединения.

 

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

Насчет этого - почитайте инструкцию или поищите здесь на форуме.

 

Много документации есть на сайте Гамма

Т. е. надо набрать номер ATDxxxxx без <;> и можно обмениваться данными по UART и будут использоваться те же выводы UART, что и при обычном телефонном звонке? И надо ли использовать вывод DCD?

Изменено пользователем Дюбо Андрей

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...