Терминал — GSM DIALOG

В предыдущей статье был представлен терминал для работы с модулем SIM900 – SIM900_DIALOG, главная идея программы – избавить пользователя от необходимости ввода вручную команд в терминале и от необходимости заглядывать в руководство по AT-командам за пояснениями, которые в кратком виде отображаются в окне слева при наведении указателя мыши на соответствующую кнопку с командой. Так было задумано, но я осилил написать пояснения только для основных команд, после чего появилась идея предоставить пользователю возможность самому выполнять редактирование заготовок команд и пояснений к ним. В итоге получилась программа-терминал, которую можно применять для работы с любым GSM-модулем через последовательный порт, также добавил пару полезных кнопок для навигации по окну диалога, затем напряг фантазию и назвал её GSM_DIALOG.

Программу писал на основе исходников SIM900_DIALOG, поэтому часть функций и назначение кнопок совпадают, в данной статье расскажу о новых возможностях терминала и продемонстрирую его универсальность.

После запуска скачанного с данного сайта программы появится сообщение, что не найден файл конфигурации. Файл будет создан программой и при последующих запусках это окно с сообщением появляться не будет. В данном файле хранятся все AT-команды и описания к ним.

Опишем более подробно специализированные функции терминала. На рисунке ниже представлен один из скриншотов программы.

Окно - файл конфигурации не найден

Нажимаем кнопку OK и видим программу с кнопками без надписей.

Окно - файл конфигурации не найден

Команды-надписи следует создать вручную, для этого заходим в меню Настройки и выбираем пункт Редактирование команд. Программа примет следующий вид:

Окно - файл конфигурации не найден

Создадим заготовку команды проверки состояния модуля AT+CPAS

Запишем её в верхнее левое окно

Окно - файл конфигурации не найден

При получении фокуса любой строкой ввода справа в окне подсказок появляются символы звёздочек в начале каждой строки. Это сделано для удобства редактирования и их следует вручную убрать перед сохранением описания. После создания заготовки команды следует щёлкнуть по окну подсказки, не заходя в другие окна редактирования команд. Иными словами, после введения заготовки команды следует передать фокус ввода окну подсказок, если требуется выполнить в этом окне какое-либо редактирование.

Заполним окно справки для введённой команды и нажмём кнопку «Сохранить описание команды»

Окно - файл конфигурации не найден

Во время редактирования текста в окне справки жёлтым цветом подсвечивается команда, к которой относится редактируемый в правом окне текст. Это сделано для минимизации недоразумения, когда в процессе перемещения указателя мыши к окну справки случайно нажимается кнопка мыши и фокус ввода кратковременно передаётся совсем не той строке с заготовкой команды.

После нажатия кнопки сохранения подсветка команды меняется на зелёную. Сохраняется описание пока не в файл, а в оперативную память. Сохраниение в файл выполняется после выбора команды Настройки — > Сохранить и вернуться в рабочий режим.
В итоге имеем такую картину:

Окно - файл конфигурации не найден

В программе на кнопке появилась введённая в соответствующей строке ввода надпись и при наведении на неё указателя мыши в окне справа появляется введённый при редактировании текст. После перезапуска программы всё остаётся на своих местах, если не изменять вручную и не удалять созданный программой файл ComandConfig.

При редактировании команд есть возможность вводить названия вкладок:

Окно - файл конфигурации не найден

Данные названия тоже сохраняются в файле конфигурации.

Всего в программе 11 разделов команд (Общие, Настройки, …. Разное2), в каждом разделе по 3 вкладки, в каждой вкладке можно разместить по 45 команд, т.е. всего можно сохранить заготовки для 1485 команд, что более чем достаточно для любого GSM-модуля.

 

Теперь о новых полезных кнопках. Одним из способов ввода команды является выделение соответствующей строки с командой в окне диалога:

Окно - файл конфигурации не найден

В данной момент кнопка «К исходной позиции ([номер строки])» неактивна, т.к. окно диалога не прокручивали после выделения строки. После отправки команды данное окно автоматически прокрутится к последней позиции и активируется кнопка перехода на исходную для возможности выбрать следующую команду. Это удобно для воспроизведения считанных в режиме сниффера команд – не нужно каждый раз запоминать номер строки с последней командой, введённой способом выделения строки диалога и соответственно, не нужно вручную прокручивать сотни-тысячи строк диалога.

Кнопка «Перейти к строке» в связке с окном ввода говорят сами за себя – при нажатии кнопки выполняется переход на строку диалога, номер которой задан в окне ввода:

Окно - файл конфигурации не найден

Следует иметь ввиду, что номер строки окна и номер строки в тексте диалога могут не совпадать, если диалог начался после открытия ранее записанного лог-файла. В обработчиках кнопок навигации задействованы номера строк окна диалога.

Если дойдут руки до следующей версии терминала, то постараюсь продумать этот момент и учесть возможные замечания.

Скачать программу GSM DIALOG v2

Программа обновлена 31 марта 2016.

Скачать устаревшую версию программы GSM DIALOG

13 комментариев »

Иван Абдулхаев | 09.06.2015 | Программы | 2 797 просмотров

13 комментариев на « Терминал — GSM DIALOG»

  1. adrin02 пишет 19.11.2015 в 02:33 #

    Может кто поделиться заполненным конфигом?

  2. adrin02 пишет 19.11.2015 в 02:47 #

    А в свободном доступе исходников этих программ нету?

  3. adrin02 пишет 19.11.2015 в 02:51 #

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

  4. Иван Абдулхаев пишет 22.11.2015 в 23:08 #

    Могу прислать исходники, но не для всеобщего обозрения 🙂 Написаны без расчёта, что кто-то в них будет разбираться, никаких комментариев в них нет. Пишите на адрес указанный в программе.

  5. Иван Абдулхаев пишет 22.11.2015 в 23:14 #

    Человеческие команды могут быть разного уровня абстракции. Можно сделать одной командой создание коннекта, а можно одной командой сделать скачивание файла с сервера, тут фантазия безгранична и это будут уже другие программы, заточенные под конкретные задачи. Я ограничился только отправкой AT-команд. Для удобства справа добавил описание конкретной команды при наведении курсора мышки, сгруппировал команды по вкладкам и этим ограничился.

  6. Иван Абдулхаев пишет 04.03.2016 в 13:33 #

    Подправил замеченные опечатки, отправил директору сайта программу, чтобы перезалил.
    Изменения:
    уменьшил количество COM-портов
    исправил опечатки, которые привели к неправильной работе 4 кнопок с командами — в консоль отправлялись не те команды, которые написаны на кнопках.

  7. Иван пишет 07.01.2017 в 21:25 #

    Не получается скачать файл по ссылке gsm-dialog-v2.rar

  8. Alex_EXE пишет 07.01.2017 в 22:26 #

    Исправил

  9. Иван Абдулхаев пишет 13.03.2017 в 21:27 #

    Встретил девайс, у которого ответы заканчиваются не на \r\n, а на \r, т.е. данная программа не будет отображать ответы. В исходнике для себя подправил, но если кому нужно, то поделюсь.

  10. Alex_EXE пишет 20.03.2017 в 18:25 #

    Работая с разными версиями esp8266 встречал подобное. В своём терминале дал возможность пользователю выбирать окончание строки, причём реализовал все комбинации, ну а вдруг: \r\n, \n\r, \r, \n и произвольный вариант, т.е. пускай сам вводит то, что хочет.

  11. Иван Абдулхаев пишет 20.03.2017 в 20:46 #

    Можно посмотреть терминал? Ссылка есть?

  12. Alex_EXE пишет 22.03.2017 в 09:17 #

  13. Иван Абдулхаев пишет 24.03.2017 в 00:29 #

    «Al Terminal»

    Интересная программа. Пожалуй сворую оттуда некоторые идеи и в свою добавлю 🙂

Комментарии RSS

Оставьте отзыв