FLProg
Вход на сайт
Логин:
Пароль:
Мы в VK
Поиск
Статистика


Яндекс.Метрика
Суббота, 03.12.2016, 05:24
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 12 из 36«1210111213143536»
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » Блок пользователя для работы с GSM (SIM 900 и М590)
Блок пользователя для работы с GSM
Слимпер Дата: Пятница, 12.08.2016, 18:48 | Сообщение # 166
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
stapmoff, сделал для вас специальную тестовую версию
В ней есть доп вход Na_start, он запускает инициализацию принудительно.
А так же в терминал должно сыпаться много дополнительной информации (все что МК отправляет модулю будет с префиксом Sapros_, а что получает OTVET_).
Было бы не плохо выложит суда результаты.

Добавлено (12.08.2016, 18:48)
---------------------------------------------

Цитата НовыйUser ()
SIM800L не завелся.как вариант
Не так меня понял, через терминал напрямую у него все нормально,  а вот с моим блоком не хочет.
Прикрепления: test_14.flp(868Kb)
 
Слимпер Дата: Пятница, 12.08.2016, 19:25 | Сообщение # 167
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
Цитата НовыйUser
Цитата
И все же Дим, иметь возможность нужную после прочтения пдфки дать команду блока на вход и получить ответ на выход это имеет смысл... чтобы не делать кучу входов которые могут быть невостребованны, а дать возможность самостоятельно подать команду и обработать..или какой запрос...
Подумаю, но в той реализации, что сейчас есть, возникнут проблемы. Не вижу я пока как это можно сделать чтобы было понятно и удобно.
Да и вообще думаю скоро, (заставлю текущею реализацию работать) перерыв сделаю, а то другие дела зависли.
 
Слимпер Дата: Пятница, 12.08.2016, 19:42 | Сообщение # 168
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
Я понял почему ни чего не выдает блок, хотя ответ приходит, помог AL Terminal

У меня код ответы разбивает на строки по силовому \n ($0A)
Затем при получении ответа анализируется строка на наличие открывающих и закрывающих кавычек.
А от Мегафона приходит:

+CUSD: 0,"20.02?$0A
$0A
????? *210#- ??????? ???? ???????! ???????????? (3 ?/?)$0A
$0A
",72$0D$0A
$0D$0A
OK$0D$0A

То есть программа в первой строке не находит закрывающие кавычки и по этому не выдает строку на выход. Что с этим делать даже не знаю


Сообщение отредактировал Слимпер - Пятница, 12.08.2016, 19:44
 
НовыйUser Дата: Пятница, 12.08.2016, 20:20 | Сообщение # 169
Подполковник
Группа: Проверенные
Сообщений: 270
Награды: 1
Репутация: 2
Статус: Offline
Цитата Слимпер ()
То есть программа в первой строке не находит закрывающие кавычки и по этому не выдает строку на выход. Что с этим делать даже не знаю


наверно, выдавать строку как есть...

Добавлено (12.08.2016, 20:20)
---------------------------------------------
а время ожидания модуля 20000мс по прежнему нужно ?


Сообщение отредактировал НовыйUser - Пятница, 12.08.2016, 20:41
 
Max Дата: Пятница, 12.08.2016, 20:39 | Сообщение # 170
Гуру
Группа: Проверенные
Сообщений: 482
Награды: 14
Репутация: 4
Статус: Offline
Значки вопросов в ответе Мегафона, возможно, символы на кириллице... А у нас модули кириллицу не понимают.

Максим (VK - Максим Дунаевский)
 
НовыйUser Дата: Пятница, 12.08.2016, 23:58 | Сообщение # 171
Подполковник
Группа: Проверенные
Сообщений: 270
Награды: 1
Репутация: 2
Статус: Offline
Цитата Слимпер ()
Подумаю, но в той реализации, что сейчас есть, возникнут проблемы. Не вижу я пока как это можно сделать чтобы было понятно и удобно.


ок
тогда в сторону этот вариант...

вот еще видео
https://www.youtube.com/watch?v=cusyY7s-hR0

и все же конвертер уровней нужен...

Добавлено (12.08.2016, 23:16)
---------------------------------------------
пока пил кофе... мысль пришла..согласен с stapmoff не плохо бы иметь выход с временем по сети... не знаю правда лучше бы к этой фичи иметь вход или так же как вы придумали только выходы и время опроса... таким образом можно все эти переходы на зимнее/летнее время корректировать без ручного обновления прошивки....да и вцелом в каких-то вариантах отвязаться от часов на таблетке... у меня одна такая протекла...хорошо не на матплату....

Добавлено (12.08.2016, 23:29)
---------------------------------------------
http://electronics.stackexchange.com/questio....et-time

прокатит ли но человек пишет делал так

GSM_Send_Modem_Command("AT+COPS=2\r\n");//de register
GSM_Send_Modem_Command("AT+CTZU=1\r\n");//automatic time zone update is enabled
GSM_Send_Modem_Command("AT+COPS=0\r\n");// register to network
GSM_Send_Modem_Command("AT+CCLK?\r\n");// gets the clock of the MT

Добавлено (12.08.2016, 23:43)
---------------------------------------------
попробую на днях 800 запустить....

Добавлено (12.08.2016, 23:47)
---------------------------------------------
о как. AT+CTZU=1 съел.. хотя нигде не написано о поддержке ..

Добавлено (12.08.2016, 23:52)

но 4 команды последовательно не сменили время..
590 может и не умеет время брать...


Сообщение отредактировал НовыйUser - Суббота, 13.08.2016, 02:55
 
Слимпер Дата: Суббота, 13.08.2016, 05:33 | Сообщение # 172
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
Цитата Max ()
Значки вопросов в ответе Мегафона, возможно, символы на кириллице... А у нас модули кириллицу не понимают.
Это понятно, главная закавыка, не в вопросиках,  а в нарезки строки на части, ну можно разве выводить только первую часть строки, где число есть.
Да и кириллицу может и можно принять, в формате Юнкикоды, но что с ней дальше делать, я вот как то не разу не работал в ардуинуо с кириллицей, кроме как выводил хексами на экран.

Цитата НовыйUser ()
а время ожидания модуля 20000мс по прежнему нужно ?
Так это не время ожидания, а время максимального ожидания, т.е реально блок ждет привольного ответа от модуля, если пришло через 10 мс, идем дальше, если нет ждем до 20сек, если так и не пришло, выдаем ошибку с кодом 2. Можно и убавить, я его большим сделал только для того когда вручную симулирую ответы модуля для теста программы.

Добавлено (13.08.2016, 05:33)
---------------------------------------------
Цитата НовыйUser ()
прокатит ли но человек пишет делал такGSM_Send_Modem_Command("AT+COPS=2\r\n");//de register
GSM_Send_Modem_Command("AT+CTZU=1\r\n");//automatic time zone update is enabled
GSM_Send_Modem_Command("AT+COPS=0\r\n");// register to network
GSM_Send_Modem_Command("AT+CCLK?\r\n");// gets the clock of the MT

У меня так получилось



Так что работает


Сообщение отредактировал Слимпер - Суббота, 13.08.2016, 05:34
 
stapmoff Дата: Суббота, 13.08.2016, 06:35 | Сообщение # 173
Майор
Группа: Проверенные
Сообщений: 154
Награды: 0
Репутация: 0
Статус: Offline
Попробовал я тестовую прошивку 14. Странно но завелось все с первого раза и кнопка не понадобилась

Добавлено (13.08.2016, 06:35)
---------------------------------------------
А по поводу времени я давно думал, пробовал это реализовать, но время не обновлялась. Если добавите это в блок будет супер)

 
Слимпер Дата: Суббота, 13.08.2016, 09:01 | Сообщение # 174
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
Цитата stapmoff ()
А по поводу времени я давно думал, пробовал это реализовать, но время не обновлялась. Если добавите это в блок будет супер)
Попробовать то можно, но как это все должно быть надо думать.
1. Выдавать дату время в виде строки?
2. Синхронизация при запуске модуля, это вроде ясно, а вот потом когда или как?
3. Да и вывод текущего времени только по запросу или вообще постоянно, скажем раз в час (минуту).
Да и не плохо бы проверить, работает ли о кого кроме меня. (я специально написал полную последовательность команд которые сработали).

Вообще вот какие есть нюансы Снова про время, как узнать локальный часовой пояс

Цитата
Оператор Билайн. Выдал точное местное время. А вот пояс почему-то +08 (?). Вместо +02.

+08 потому, что значение в четвертях часа. На этот счет смотрите описание команды AT+CCLK.


Цитата НовыйUser ()
таким образом можно все эти переходы на зимнее/летнее время корректировать без ручного обновления прошивки
А вы Алексей из какой страны? А то у нас в России перевод отменил.

Добавлено (13.08.2016, 08:44)
---------------------------------------------
Сейчас пробовал через терминал работать с Телефонной книгой. Ну вроде нормально получается, можно попробовать интегрировать, но только это точно увеличит размер блока.
Он так скоро половину памяти в 328 займет. Надо будет потом лайт версию делать.

Но для начала проверти у себя нормально ли работают команда
AT+CPBF=«что ищем» Икать можно, как я понял, только имя контакта, на латинице 
AT+CPBS?

Добавлено (13.08.2016, 09:01)
---------------------------------------------
Я сейчас вижу, что можно сделать настраиваемый префикс имени контакта и также настраиваемое число номеров (Чем больше поставишь число тем больше будет занято оперативки)
Пример:



Сообщение отредактировал Слимпер - Суббота, 13.08.2016, 07:40
 
НовыйUser Дата: Суббота, 13.08.2016, 13:50 | Сообщение # 175
Подполковник
Группа: Проверенные
Сообщений: 270
Награды: 1
Репутация: 2
Статус: Offline
Цитата Слимпер ()
AT+CCLK?


NEOWAY
M590
REVISION 01.30c

-не работает...даже по списку команд...

надо будет проверить на 1.20 версии... но эт лучше в составе блока готового...но даже там версия ниже прошивки... :confused:

по АТI какая версия что время работает ?

Цитата Слимпер ()
2. Синхронизация при запуске модуля, это вроде ясно, а вот потом когда или как?
3. Да и вывод текущего времени только по запросу или вообще постоянно, скажем раз в час (минуту).


тут надо спросить у stapmoff как реализовано в промышленных стандартах...где есть..
и твое мнение что менее ресурсоемкое....
мой взгляд на компоновку навески не сильно профессиональный..я много лишнего привык добавлять в схемы...потом чистить...

думаю, можно в настройки блока поместить временной интервал для выхода времени и ноль для отмены...
а вот синхронизация...я вначале думал командой подстройка.. но с обязательным выходом из регистрации наверно лучше просто иметь вход блока "restart"............ и вести синхронизацию в обязательную загрузку при старте блока ....

Цитата Слимпер ()
1. Выдавать дату время в виде строки?


вот тут точно лучше поделить выходы на часы,минуты, секунды, дни, месяца и годы..

Цитата Слимпер ()
вот какие есть нюансы

почитаю...
Цитата Слимпер ()
А то у нас в России перевод отменил.

я к этому не привык видимо...может опять введут когда-нибудь....
 
Слимпер Дата: Суббота, 13.08.2016, 14:44 | Сообщение # 176
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
Цитата НовыйUser ()
по АТI какая версия что время работает ?
ati
NEOWAY
M590
REVISION 01.30d
OK
at+getvers
1103_C6C30000_V0130d
OK

в документе Neoway M590 AT Command Sets_V3.0 на 13 странице
 
Слимпер Дата: Воскресенье, 14.08.2016, 12:00 | Сообщение # 177
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
Очередная тестовая версия.

Из того что удалось:
1. Частично победил баланс по команде *100#
Т.е. теперь на выходе  USSD_return, выдается вся строка с вопросиками.
Есть только ограничение, если строка окажется длиннее 160 символов, то она не будет выведена.
Дольше всего с этим бился, пришлось опять часть кода приема данные переписывать.

2. Получилось реализовать, по описанному выше прицепу, работу с телефонной книгой SIM карты.
Прикрепления: test_16.flp(939Kb)


Сообщение отредактировал Слимпер - Воскресенье, 14.08.2016, 12:06
 
НовыйUser Дата: Воскресенье, 14.08.2016, 12:56 | Сообщение # 178
Подполковник
Группа: Проверенные
Сообщений: 270
Награды: 1
Репутация: 2
Статус: Offline
есть баланс на мегаф!

*100# - ок

#100# - этот без баланса... но ответ есть..

*100*0# - лучший вариант на транслите чтобы не переводить у оператора ответ баланса на латиницу запросами 105 . Вот такой ответ : 7.80r.Skroyte svoy nomer pri zvon......итд..

ОТЛИЧНО!

Цитата Слимпер ()
Есть только ограничение, если строка окажется длиннее 160 символов, то она не будет выведена.


это надо будет обязательно не забыть в описании блока упомянуть...

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

продолжаем тесты...


Сообщение отредактировал НовыйUser - Воскресенье, 14.08.2016, 13:08
 
Слимпер Дата: Воскресенье, 14.08.2016, 13:18 | Сообщение # 179
Генерал-лейтенант
Группа: Проверенные
Сообщений: 659
Награды: 25
Репутация: 23
Статус: Offline
Цитата НовыйUser ()
все думаю с временем как быть....можно выдавать как есть...без перделки строки с часовым поясом...продолжаем тесты...
А у вас время то заработало ?

Еще про телефонную книгу, заработало?
Если будет работать и такой механизм устроит.  
Переделаю наверное так, чтобы убрать T_Name, и если есть в телефонной книге то выводить T_Nomer имя контакта, если нет то уже телефон
И сделаю чтобы можно было на вход Phone подавать и цифры и имя контакта.
 
НовыйUser Дата: Воскресенье, 14.08.2016, 13:55 | Сообщение # 180
Подполковник
Группа: Проверенные
Сообщений: 270
Награды: 1
Репутация: 2
Статус: Offline
Цитата Слимпер ()
А у вас время то заработало ?


только баланс протестить успел... книгу сейчас буду тестить смотреть...

на одном из двух модулей не работает точно почему-то время... но это не показатель...если твой работает, то значит имеет смыл сделать...а там как у кого повезет...видать в прошивке дело, но найти firmware update к 590 не нашел пока нигде...

Цитата Слимпер ()
Переделаю наверное так, чтобы убрать T_Name, и если есть в телефонной книге то выводить T_Nomer имя контакта, если нет то уже телефон


Добавлено (14.08.2016, 13:45)
---------------------------------------------
Цитата stapmoff ()
Возможность сравнивать номера с записной сим

Цитата stapmoff ()
Смысл какой! Я делал следующим образом, вы же вроде глядели мой проэкт?  Достаточно 4 (или более надо думать) номера например под именами "a" "b" "c" "d" записываются стандартно на сим, а там уже я их сравнивали ответы слал именно на тот с которого пришел запрос!


Добавлено (14.08.2016, 13:48)
---------------------------------------------
Цитата Слимпер ()
Переделаю наверное так, чтобы убрать T_Name, и если есть в телефонной книге то выводить T_Nomer имя контакта, если нет то уже телефон


Да. Думаю хорошее решение.

Добавлено (14.08.2016, 13:48)
---------------------------------------------
Цитата Слимпер ()
И сделаю чтобы можно было на вход Phone подавать и цифры и имя контакта.


Так же хороший вариант.

Добавлено (14.08.2016, 13:55)
---------------------------------------------
вопрос

на ussd ведь можно не только баланс подавать но и иные Usdd?
http://www.mts.ru/mob_connect/help/useful_data/useful_numbers/


Сообщение отредактировал НовыйUser - Воскресенье, 14.08.2016, 14:02
 
Форум » Основной » Спросить у знатоков » Блок пользователя для работы с GSM (SIM 900 и М590)
Страница 12 из 36«1210111213143536»
Поиск:

FLProg © 2016
Яндекс.Метрика