SIM 900, запись номера в память сим карты.

ingener.solovyev
Offline
Зарегистрирован: 12.02.2013

Добрый вечер. отправляю строку 

String x = "AT+CPBW" + i + String (",""\"") + Number [i] + String ("""\",129,""\"") + Name + String ("""\"");

где, i - номер ячейки для записи, Number [i] - номер телефона, Name - имя контакта.

Просматриваю что отправляется и увидел следующее

ÿÿÿÿÿÿÿÿÿÿ+7965ххххх77",129,"S.V.S."

там где ххх - это я заретушировал.

Соответственно номера в память не пишутся. 

Что за ерунда происходит? Нехватает памяти оперативной?

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Строка на русском?

ingener.solovyev
Offline
Зарегистрирован: 12.02.2013

Это отправляемая AT команда, она не может быть на русском.

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

ПАоэтому и спросил, учитывая символы (ÿÿÿ), которые он выводит.

Может быть эта ячейка занята, а модуль не умеет переписывать ячейки (по умолчанию)?

ingener.solovyev
Offline
Зарегистрирован: 12.02.2013

Gippopotam пишет:

ПАоэтому и спросил, учитывая символы (ÿÿÿ), которые он выводит.

Может быть эта ячейка занята, а модуль не умеет переписывать ячейки (по умолчанию)?

Думаю вы меня не правильно поняли.

String x = ÿÿÿÿÿÿÿÿÿÿ+7965ххххх77",129,"S.V.S."

Это не ответ от модуля, эти каракульки итог обработки данных вот в этой строке:

String x = "AT+CPBW" + i + String (",""\"") + Number [i] + String ("""\",129,""\"") + Name + String ("""\"");

Причем сами каракули это 

AT+CPBW =1,"

Почему String формирует эту ошибку.

varb
Offline
Зарегистрирован: 19.01.2015

После at+cpbw не должно быть "=" ?

Datak
Offline
Зарегистрирован: 09.10.2014

Не уверен, но попробуйте заменить











String x = "AT+CPBW" + i + .....

на











String x = String( "AT+CPBW" ) + i + .....

или











String x = "AT+CPBW" + String( i ) + .....

 

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

-------

И ещё, по-моему вот тут кавычек слишком много: String ("""\"");

Не мешают, конечно, но по-моему хватило бы и так: String ("\"");

И ещё чуть раньше - то же самое. 

ingener.solovyev
Offline
Зарегистрирован: 12.02.2013

Datak пишет:

Не уверен, но попробуйте заменить











String x = "AT+CPBW" + i + .....

на











String x = String( "AT+CPBW" ) + i + .....

или











String x = "AT+CPBW" + String( i ) + .....

 

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

-------

И ещё, по-моему вот тут кавычек слишком много: String ("""\"");

Не мешают, конечно, но по-моему хватило бы и так: String ("\"");

И ещё чуть раньше - то же самое. 

Спасибо, попробую отпишусь.
Ну и код надо оптимизировать, была подобная проблема когда хватало оперативной памяти.

cilentlekx
Offline
Зарегистрирован: 14.12.2014

Здравствуйте! Подскажите пожалуйста как в скетче программы сделать так ,чтобы номер отправившего СМС на GSM модуль сохранился в модуле и потом отправлял на этот номер сообщения,неделю пытаюсь что то найти пока без успеха! За ранее всем спасибо! кто откликнется!

Short Circuit
Short Circuit аватар
Offline
Зарегистрирован: 17.05.2015

 интересно - за год свое написали?