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

 
 
 
Reply to this topicStart new topic
> АТ+CPBW и кавычки, для SIM800
ave!
сообщение Jul 10 2015, 03:09
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 20-05-11
Пользователь №: 65 166



Пытаюсь разными способами через модуль SIM800 командой АТ+CPBW записать номер в 1 ячейку на SIM-карту и, переставив симку в телефон, увидеть этот номер в телефонной книге. Не получается. Другие команды работают, дозвон по номеру происходит. Что я делаю не так? Может, кто подскажет.

Думаю, проблема в передаче кавычек. Среда CooCox под STM32.

Код
//    send_str("АТ+CPBW=1,«+380971112222»,129,«SOS»");
//    send_str("АТ+CPBW=1,\"+380971112222\",145,\"SOS\"");
    send_str2("АТ+CPBW=1,");
    send_to_uart(34);                // " - 34 (0x22)
    send_str2("+380971112222");
    send_to_uart(34);
    send_str2(",145,");
    send_to_uart(34);
    send_str2("SOS");
    send_to_uart(34);
    send_to_uart('\r');
    send_to_uart('\n');

Код
// Функция отправляет строку в USART
void send_str(char * string) {
    u8 i=0;
    while (string[i]) {
        send_to_uart(string[i]);
        i++;
    }
    send_to_uart('\r');
    send_to_uart('\n');
}

// Функция отправляет строку в USART без '\r\n' (незаконченная строка)
void send_str2(char * string) {
    u8 i=0;
    while (string[i]) {
        send_to_uart(string[i]);
        i++;
    }
}
Go to the top of the page
 
+Quote Post
aleksandr-zh
сообщение Jul 10 2015, 03:29
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 359
Регистрация: 28-05-05
Из: Брянщина
Пользователь №: 5 494



вначале выбрали SIM как основной носитель?
точно всё согластно даташиту на данную версию ПО модуля?
имел гемор, когда написал софт - всё работает. Обновил прошивку GSM-модема - половина команд оказалась изменена и пришлось снова переписывать свой пользовательский софт
Со скобочками всегда задсада sad.gif
Go to the top of the page
 
+Quote Post
ave!
сообщение Jul 10 2015, 09:26
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 20-05-11
Пользователь №: 65 166



Цитата(aleksandr-zh @ Jul 10 2015, 06:29) *
вначале выбрали SIM как основной носитель?

Кажется я понял... я читал ваши посты, вы об этом уже писали. Сейчас буду допиливать в этом направлении. Спасибо вам за ответ.

Цитата(aleksandr-zh @ Mar 23 2015, 16:34) *
работаю с sim900d

AT+COPS? ' выдаст имя оператора связи
AT+CMGF=1 ' включить текстовый режим SMS
AT+CSCS= "GSM" ' Кодировка текста GSM (только латинские)
AT+GSMBUSY=0 ' 0 = разрешить входящие
AT+CLIP=1 ' включить АОН
AT+CPBS="SM" ' Выбрать Как Основную Память Сим-карту
AT+DDET=1 ' Включить детектор DTMF

AT+CPBS?" ' чтобы убедиться в правильности выбора: Sim - как основное хранилище
ответ +CPBS: "SM",X,110

AT+CPBR=1 ' Чтение данных. Считывает запись SIM1
ответ +CPBR: 1,"+7...",145,"..."

AT+CPBW=4,"+71234567890",145,«Test» ' записать контакт на сим-карту.

AT+CPMS? ' определим количество SMS на SIM
ответ +CPMS: "SM",7,10,"SM",7,10,"SM",7,10


Сообщение отредактировал ave! - Jul 10 2015, 09:31
Go to the top of the page
 
+Quote Post
ave!
сообщение Jul 10 2015, 15:16
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 23
Регистрация: 20-05-11
Пользователь №: 65 166



Заработало. Еще одну ошибку заметил - в одной из команд "АТ" было набрано русскими буквами.
На счет двойных кавычек, рабочий пример: send_str("AT+CPBW=2,\"+380970000000\",145,\"SOS\"");

Сообщение отредактировал ave! - Jul 10 2015, 15:34
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 27th July 2025 - 14:43
Рейтинг@Mail.ru


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