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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> SIM900 возвращает эхом любую команду и не реагирует на нее, Не могу запустить модуль на основе SIM900 от EFcom
Олежик
сообщение Mar 23 2013, 15:36
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 3-04-10
Из: Прибалтика
Пользователь №: 56 395



Здравствуйте.

Не могу запустить модуль на основе SIM900 от EFcom. Приобрел тут: http://www.elecfreaks.com/store/gprsgsm-mo...-por-p-450.html
Для связи с модулем использую мелкое USB-> UART устройство на CP2102: http://elecfreaks.com/store/download/datas.../USB/CP2102.pdf

Дело в том, что модуль возвращяет мне любую команду (эхо), которую я посылаю и никак на эту команду не реагирует. В то же время, модуль присылает мне "NORMAL POWER DOWN" когда я выключаю его кнопкой PWR. Более того, работает видимо и Autobauding, т.к. я могу принять "NORMAL POWER DOWN" на любом бод-рейте, если до выключения модуля что-то посылал.

Если до включения модуля я настрою виртуальный КОМ-порт на 115200, то при включении модуля я получаю 49 49 49 49 FE FE FE FE, что и должно быть по даташиту. Но блин, я могу писать что угодно - в ответ приходят только эхо команд... как будто RX замыкается на TX.

Схемка на CP2102 работает на 3.3 В, имеет подтяжку к 3.3 В на своём RX. SIM900 модуль работает на 5.2 В... это конечно фигово, но коммуникация должна все равно идти, правильно ? Кстати, сеть модуль тоже не находит, но мне сейчас коммуникацию наладить.

Помогите пожалуйста...
Прикрепленное изображение

Go to the top of the page
 
+Quote Post
vassabi
сообщение Mar 23 2013, 16:13
Сообщение #2


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

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Попрбуйте поментать местами RxD и TxD выводы.
Go to the top of the page
 
+Quote Post
Aner
сообщение Mar 23 2013, 16:28
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Да вот проверьте, иногда встречается... Вот как вы сделали соединение Rx->Tx; Tx->Rx, так как в даташите SIMCOMa?
Или Rx->Rx; Tx->Tx?
SIM900 модуль НЕ работает на 5.2 В! Это входное, на SIM900 модуле должно быть 4.0...4.2 Вольта на Vbat.
Те пинычто на плате - (RS вход/выход) RxD/TxD подтянуты резисторами к входному ( у вас это 5.2Вольта ).
От ваших CP2102 входных уровней 3.3 Вольта должен работать.
Внутренний RS ( на выводах SIM900) привязан к Vext ~2.85 Вольта, там больше чем 3.0 Вольта не должно быть.
Go to the top of the page
 
+Quote Post
vassabi
сообщение Mar 23 2013, 16:52
Сообщение #4


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

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата(Aner @ Mar 23 2013, 18:28) *
...Его RS вход/выход подтянут резисторами к входному ( у вас это 5.2Вольта ) От входных уровней 3.3 Вольта должен работать...
Тут смотря как CP2102 подключена, она и 5В может в ТХ отдать!
Go to the top of the page
 
+Quote Post
Aner
сообщение Mar 23 2013, 16:59
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Так нестрашно, к 5,2 Вольтам резисторами Rx; Tx притянуты на плате уже.
Go to the top of the page
 
+Quote Post
Aner
сообщение Mar 23 2013, 16:59
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



.
Go to the top of the page
 
+Quote Post
Олежик
сообщение Mar 23 2013, 18:44
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 3-04-10
Из: Прибалтика
Пользователь №: 56 395



Vassabi, Aner,

Спасибо, попробую поменять завтра RX с TX. Я соединял TX -> RX ; RX -> TX. Подозреваю, что соединил правильно.

По поводу питания там вообще странно - стоит линейный регулятор вроде. Я подаю питане на модуль от адаптера 5В (5.5 без нагрузки). Почему они настроили выход регулятора (MIC29302WU) на 5.2 вольта - неясно. По даташиту 4.8 макс.

Надо бы мне как-то понизить напряжение адаптера... Единственное, что мне доступно - это впаять диодов последовательно sm.gif
Вот, что они сами пишут про модуль:
Ну что за фигня, 5 вольт или 3,1-4,8 .....
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
Aner
сообщение Mar 23 2013, 22:01
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Если соединили так => TX -> RX ; RX -> TX. Тогда правильно, менять не стоит. Если ничего не получите, тогда у вас путаница где RX а где TX. Проверьте, на самом SIM900 модуле должно быть 4.0...4.2 Вольта на Vbat. Если там 5 Вольт и более, тогда проблема пробоя выходного каскада и как следствие проблемы в работе. Без сим картры, антенны, и при правильном подключении у SIM900 сначала идёт тест режимов, периферии и тп, по завершении ~1...1.5сек должен постоянно светить светодиод status, моргать netlight. Тогда можно двигаться дальше. Это есть?
Go to the top of the page
 
+Quote Post
alexdos
сообщение Mar 23 2013, 22:25
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 339
Регистрация: 10-07-08
Из: Херсон
Пользователь №: 38 856



С терминалом "Terminal v1.9b" не работал, но судя по картинке (по эху), смею предположить что Вы забыли про 0x0D (\r) в конце каждой комманды.

Сообщение отредактировал alexdos - Mar 23 2013, 22:28
Go to the top of the page
 
+Quote Post
Олежик
сообщение Mar 24 2013, 09:43
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 3-04-10
Из: Прибалтика
Пользователь №: 56 395



Aner, alexados,

Спасибо ! Заработало наконец-то. Я выставил отображение символов в терминале (Terminal v1.9b) на HEX и сам замкнул TX и RX, без мудуля. Оказалось, что, несмотря на настройки, не посылается /r. Поставил Realterm, который не видел виртуальный КОМ-порт. Обновил китайские драйвера на драйвера от производителя (SiLabs) и, о чудо, заработало. Я прям рад, спасибо еще раз sm.gif

Цитата
по завершении ~1...1.5сек должен постоянно светить светодиод status, моргать netlight. Тогда можно двигаться дальше. Это есть?

да.
Наверняка у меня будут еще вопросы... пока что, я подам нормальную напругу на модуль, чтобы не запороть.
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
David_Ali
сообщение Apr 9 2013, 07:31
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 28-02-13
Пользователь №: 75 833



Здравствуйте, возможно я немного не по теме, прошу не банить сразу, просто у меня тоже такой модуль , я себе дома на нем сделал сигнализацию, ну на ардуино и сим900 , у меня проблема такая, как только я отключаю его от питания он теряет все настройки, приходится заново заливать на МК прошивку и на сим900 тоже, но если не отключать его все нормально. Батарейку в него я вставил, про AT&W и другие команды тоже знаю.. если кто то разбирается я скину вам код.
Заранее спасибо.


--------------------
Viva la resistance!
Go to the top of the page
 
+Quote Post
Aner
сообщение Apr 9 2013, 07:52
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



А что в сим900 заливаете? Да и по подробнее как на ардуино реализовали. Может ваша программа в озу крутиться?
Go to the top of the page
 
+Quote Post
David_Ali
сообщение Apr 9 2013, 07:57
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 28-02-13
Пользователь №: 75 833



Цитата(Aner @ Apr 9 2013, 12:52) *
А что в сим900 заливаете? Да и поподробнее как на ардуино ревлизовали. Может ваша программа в озу крутиться?

#include <SoftwareSerial.h>
SoftwareSerial gprsSerial(7, 8);
void setup()
{
gprsSerial.begin(19200);
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);

// Настраиваем приём сообщений с других устройств
// Между командами даём время на их обработку
gprsSerial.write("AT+CMGF=1\r");
delay(300);

gprsSerial.write("AT+IFC=1, 1\r");
delay(300);
gprsSerial.write("AT+CPBS=\"SM\"\r");
delay(300);
gprsSerial.write("AT+CNMI=1,2,2,1,0\r");
delay(500);
}

String currStr = "";
// Переменная принимает значение True, если текущая строка является сообщением
boolean isStringMessage = false;

void loop()
{

if (!gprsSerial.available())
return;

char currSymb = gprsSerial.read();
if ('\r' == currSymb) {
if (isStringMessage) {
//если текущая строка - SMS-сообщение,
//отреагируем на него соответствующим образом
if (!currStr.compareTo("On")) {
digitalWrite(13, HIGH);
digitalWrite(11, 1);
delay(400);
digitalWrite(11, 0);
delay(400);
digitalWrite(11, 1);
delay(400);
digitalWrite(11, 0);
delay(400);
digitalWrite(11, 1);
delay(400);
digitalWrite(11, 0);
} else if (!currStr.compareTo("Off")) {
digitalWrite(13, LOW);
} else if (!currStr.compareTo("On1")) {
digitalWrite(12, HIGH);
} else if (!currStr.compareTo("Off1")) {
digitalWrite(12, LOW);
}
isStringMessage = false;
} else {
if (currStr.startsWith("+CMT")) {
//если текущая строка начинается с "+CMT",
//то следующая строка является сообщением
isStringMessage = true;
}
}
currStr = "";
} else if ('\n' != currSymb) {
currStr += String(currSymb);
}
}

вот все с комментами как есть.

Заливаю "ат" команды через сериал ардуиновский. ответы тоже приходят, все работает, но стоит отключить модуль.. именно модуль! все перестает работать ((
забыл добавить ) я использую gprs шидд. там джамперы для sSerial.

Сообщение отредактировал David_Ali - Apr 9 2013, 08:28


--------------------
Viva la resistance!
Go to the top of the page
 
+Quote Post
David_Ali
сообщение Apr 9 2013, 11:33
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 28-02-13
Пользователь №: 75 833



О ну все, написал по другому все заработало ) если кому будет интересно скину свой проект )


--------------------
Viva la resistance!
Go to the top of the page
 
+Quote Post
Aner
сообщение Apr 9 2013, 11:50
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Скиньте по другому написаное, посмотрим.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 17th June 2025 - 19:03
Рейтинг@Mail.ru


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