Skip to content

Терминальная программа (IP и SerialPort клиент), работающая в различных режимах (Без протокола, Modbus TCP / RTU / ASCII).

License

Notifications You must be signed in to change notification settings

VAG-w/TerminalProgram

 
 

Repository files navigation

Статьи на Хабр

Кроссплатформенный терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 3

Кроссплатформенный терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 2

Терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 1

Терминальная программа

Начиная с версии 3.0.0 в проекте используется Avalonia UI, в более ранних версиях WPF.

Платформа:

  • .NET Framework до версии 1.9.1 включительно.
  • .NET 7 начиная с версии 1.10.0.
  • .NET 8 начиная с версии 2.3.0.
  • .NET 9 начиная с версии 3.0.0.

Приложение может выступать в роли IP и SerialPort клиента. Выбор типа клиента происходит в меню настроек.

Поддерживается два типовых режима работы:

  1. Обмен данными по стандартным протоколам, которые поддерживает .NET.
  2. Обмен данными по специальным протоколам.

Приложение поддерживает Темную и Светлую тему оформления.

Режимы работы

Подробнее о приложении можно узнать из статей на Хабр или из встроенного руководства пользователя (кнопка с вопросом в верхнем левом углу).

"Без протокола"

В поле передачи пользователь пишет данные, которые нужно отправить. В поле приема находятся данные, которые прислал сервер или внешнее устройство.

Поддерживаются протоколы: 
- UART
- TCP

"Modbus"

Пользователь может взаимодействовать с выбранными регистрами Modbus, используя соответствующие элементы интерфейса. Для дополнительной расшифровки транзакции существует раздел с представлениями.

Поддерживаются протоколы: 
- Modbus TCP
- Modbus RTU
- Modbus ASCII
- Modbus RTU over TCP
- Modbus ASCII over TCP

"Макросы"

Этот режим позволяет работать с макросами для режимов "Без протокола" и "Modbus". При наведении курсора на макрос появляются кнопки редактирования и удаления.

Вспомогательный софт

GUI Framework - Avalonia UI

Для упрощения работы с паттерном MVVM использован ReactiveUI

Для тестирования используется xUnit

Скрипт установщика написан с помощью Inno Setup Compiler

Иконки приложения Material.Icons.Avalonia

Система версирования Global.Major.Minor

Global - глобальная версия репозитория. До релиза это 0. Цифра меняется во время релиза и при именениях, затрагивающих значительную часть UI или внутренней логики.

Major - добавление нового функционала, крупные изменения.

Minor - исправление багов, мелкие добавления.

About

Терминальная программа (IP и SerialPort клиент), работающая в различных режимах (Без протокола, Modbus TCP / RTU / ASCII).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 98.6%
  • Inno Setup 1.4%