|
модуль SIM900, работа с модулем |
|
|
|
Nov 24 2011, 08:04
|
Группа: Участник
Сообщений: 10
Регистрация: 24-11-11
Пользователь №: 68 489

|
Люди добрые, подскажите, что я делаю не так.
Модуль SIM900 подключен к USB порту через FT232RL. Между FT232 и модулем стоят ключи, которые разрывают линию UART пока сигнал STATUS в модуле равен 0. FT232 и ключи прекрасно работают и команды с компьютера через программку Serial Port Monitor поступают на модуль. Модуль же в свою очередь, командным эхом передает обратно на компьютер принятые команды и так же нормально регистрируется в сети. Но на принятые команды он не реагирует, только отвечает эхом. При звонке на модуль, он пишет RING и пишет NORMAL POWER DOWN когда я нажимаю кнопку POWER KEY. Пины UARTа модуля: DTR и RTS сидят на земле, RxD и TxD идут на ключи и дальше на FT232.
Подскажите пожалуйста, в чем проблема, почему модуль не реагирует на команды?
|
|
|
|
|
Nov 24 2011, 08:15
|

Знающий
   
Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819

|
Цитата(Дюбо Андрей @ Nov 24 2011, 11:04)  Но на принятые команды он не реагирует, только отвечает эхом. Эхо после каждой команды? Эхо - повторение введёных команд? Или эхо только при включении? Осциллографом можете посмотреть RX на модуле? Может к нему команды-то не приходят?
--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
|
|
|
|
|
Nov 24 2011, 08:22
|
Группа: Участник
Сообщений: 10
Регистрация: 24-11-11
Пользователь №: 68 489

|
Цитата(KARLSON @ Nov 24 2011, 12:15)  Эхо после каждой команды? Эхо - повторение введёных команд? Или эхо только при включении?
Осциллографом можете посмотреть RX на модуле? Может к нему команды-то не приходят? Эхо приходит после каждой команды (эта функция модуля по умолчанию, которую можно отключить). И эхо приходит всегда, сразу после того как модуль становится готов к работе. Данные на вывод RX модуля приходят, только что проверил осциллографом. Да и если бы они не приходили на модуль, то и эха бы не было.
|
|
|
|
|
Nov 24 2011, 08:29
|
Мыслящий
    
Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270

|
Цитата(Дюбо Андрей @ Nov 24 2011, 12:22)  Эхо приходит после каждой команды (эта функция модуля по умолчанию, которую можно отключить). И эхо приходит всегда, сразу после того как модуль становится готов к работе. Данные на вывод RX модуля приходят, только что проверил осциллографом. Да и если бы они не приходили на модуль, то и эха бы не было. Вы посылаемые команды какими символами завершаете? Необходимо завершать символом - <CR>(<Возврат Каретки>) код этого символа 13 (десятичный) или 0x0D - шестнадцатеричный
--------------------
FAQ по ADФорум по ADЗнание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью. ...стоит запомнить ...вернее задуматься.
|
|
|
|
|
Nov 24 2011, 08:42
|
Группа: Участник
Сообщений: 10
Регистрация: 24-11-11
Пользователь №: 68 489

|
Цитата(Master of Nature @ Nov 24 2011, 12:29)  Вы посылаемые команды какими символами завершаете? Необходимо завершать символом - <CR>(<Возврат Каретки>) код этого символа 13 (десятичный) или 0x0D - шестнадцатеричный К примеру, на входящий звонок (на модуль) я посылаю команду ATA.Больше ничего не пишу. Можете на примере этой же команды написать как именно нужно писать? Может так надо ATA\r ? Цитата(Romashki @ Nov 24 2011, 12:36)  Нужно посмотреть схему между модулем и фт232. Между модулем и FT стоят ключи. Я проверял, они коммутируют входящие/выходящие сигналы без искажений.
|
|
|
|
|
Nov 24 2011, 08:49
|
Мыслящий
    
Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270

|
Цитата(Дюбо Андрей @ Nov 24 2011, 12:42)  К примеру, на входящий звонок (на модуль) я посылаю команду ATA.Больше ничего не пишу. Можете на примере этой же команды написать как именно нужно писать? Может так надо ATA\r ? Вы данные передаете с помощью какой программы? Если Serial Port Monitor - то там нужно отдельно добивать символ. Попробуйте другой терминальной программой воспользоваться. И первой командой попробуйте AT<CR>
--------------------
FAQ по ADФорум по ADЗнание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью. ...стоит запомнить ...вернее задуматься.
|
|
|
|
|
Nov 24 2011, 09:16
|

Участник

Группа: Участник
Сообщений: 32
Регистрация: 3-02-11
Из: Украина, Киев
Пользователь №: 62 695

|
QUOTE (Дюбо Андрей @ Nov 24 2011, 11:42)  Может так надо ATA\r ? Можно и так. Зависит от терминальной программы, которой пользуетесь. Если терминал от Брая - тогда в конце строки нужно дописывать $0D .($ указывает, что символ будет задан в hex формате) В общем нужно выдать символ перевода каретки. Это 0D в шестнадцатеричной системе. Добавите - должно нормально заработать.
|
|
|
|
|
Nov 24 2011, 09:18
|
Группа: Участник
Сообщений: 10
Регистрация: 24-11-11
Пользователь №: 68 489

|
Цитата(Master of Nature @ Nov 24 2011, 12:49)  Вы данные передаете с помощью какой программы? Если Serial Port Monitor - то там нужно отдельно добивать символ. Попробуйте другой терминальной программой воспользоваться. И первой командой попробуйте AT<CR> Большое спасибо. В конце команды добавил 0D и все заработало.
|
|
|
|
|
Nov 24 2011, 10:22
|
Группа: Участник
Сообщений: 10
Регистрация: 24-11-11
Пользователь №: 68 489

|
Цитата(CADiLO @ Nov 24 2011, 13:24)  А чтобы не городить ключи между модулем и FT и управлять ими от STATUS, достаточно на четвертый вывод FT232RL (VCCIO) подать напряжение с VEXT модуля. Тогда выходной буфер преобразователя будет запитываться нужной напругой и синхронно со статусом. На счет вывода VCCIO полностью согласен. А вот то что VEXT появляется синхронно со статусом, не соглашусь. Я специально сравнивал, VEXT появляется сразу после включения модуля, а статус появляется чуть позже, как только модуль будет готов к работе. Чтобы избежать неприятностей с фантомной загрузкой, то советую использовать только сигнал статуса. Подскажите пожалуйста, как передать данные с модуля на модуль, при обычном телефонном звонке (не TCP IP и не FAX). И какие выводы модуля нужно задействовать и каким образом?
Сообщение отредактировал Дюбо Андрей - Nov 24 2011, 10:27
|
|
|
|
|
Nov 24 2011, 10:29
|
Группа: Участник
Сообщений: 10
Регистрация: 24-11-11
Пользователь №: 68 489

|
Цитата(CADiLO @ Nov 24 2011, 14:26)  Можете не соглашаться, но все внутренние подтяжки модуля на порту сделаны именно к этой ножке (у меня схема модуля перед собой имеется  ). И в отличии от SIM300 и SIM300C где нельзя было просто так использовать Vext, в SIM900 можно. А програмное соответствие появления STATUS было переделано после 5 версии чобы соответствовать по временам 300й серии. Я с Вами спорить не могу, ибо только начал заниматься этими модулями Подскажите пожалуйста, как передать данные с модуля на модуль, при обычном телефонном звонке (не TCP IP и не FAX). И какие выводы модуля нужно задействовать и каким образом?
|
|
|
|
|
Nov 24 2011, 10:33
|
Мыслящий
    
Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270

|
Цитата(Дюбо Андрей @ Nov 24 2011, 14:22)  Подскажите пожалуйста, как передать данные с модуля на модуль, при обычном телефонном звонке (не TCP IP и не FAX). И какие выводы модуля нужно задействовать и каким образом? Никакие (дополнительно) - если речь про CSD. Все как на обычном модеме. необходимо просто вызов сделать ATDxxxxx<CR> А на другом - или снять трубку или включить автоснятие после первого гудка. И, естественно, дождаться установки соединения. Для удобства можно воспользоваться аппаратным управлением потока, для переключения между режимами команд и данных. Насчет этого - почитайте инструкцию или поищите здесь на форуме. Много документации есть на сайте Гамма
--------------------
FAQ по ADФорум по ADЗнание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью. ...стоит запомнить ...вернее задуматься.
|
|
|
|
|
Nov 24 2011, 10:42
|
Группа: Участник
Сообщений: 10
Регистрация: 24-11-11
Пользователь №: 68 489

|
Цитата(Master of Nature @ Nov 24 2011, 14:33)  Никакие (дополнительно) - если речь про CSD. Все как на обычном модеме. необходимо просто вызов сделать ATDxxxxx<CR> А на другом - или снять трубку или включить автоснятие после первого гудка. И, естественно, дождаться установки соединения. Для удобства можно воспользоваться аппаратным управлением потока, для переключения между режимами команд и данных. Насчет этого - почитайте инструкцию или поищите здесь на форуме. Много документации есть на сайте ГаммаТ. е. надо набрать номер ATDxxxxx без <;> и можно обмениваться данными по UART и будут использоваться те же выводы UART, что и при обычном телефонном звонке? И надо ли использовать вывод DCD?
Сообщение отредактировал Дюбо Андрей - Nov 24 2011, 10:47
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|