На чем писать конфигуратор для железяки под RS232 порт?

На чем лучше всего написать конфигуратор для железяки под RS232 порт под имеющийся протокол?

Требования:

— Windows (но не исключена кроссплатформенность)

— GUI

— сохранение и загрузка конфигураций

— Относительно небольшой размер (порядка нескольких мегабайт)


Знаю, лучше писать на том языке, который лучше всего знаешь. Но школьный Pascal, один университетский курс C и желание научиться писать нормальный софт заставляют задать этот вопрос. Из рассмотренных вариантов QT (пугает размер на выходе и работа с RS232), Visual C++ (кроссплатформенность?), Delphi.


Буду раз советам и подсказкам :)
  • Вопрос задан
  • 4920 просмотров
Пригласить эксперта
Ответы на вопрос 6
@xdenser
Вы будете смеяться… Но NodeJS. У меня несколько проектов, где идет работа с serial портами(в основном RS485). NodeJS замечательно прижился. Оно предназначено для IO. Если правильно писать, легко тянет управление несколькими устройствами одновременно. А GUI делается через браузер, + бесплатно получаем возможность удаленной настройки. JavaScript очень простой язык. А писать под него асинхронно — неплохая гимнастика для мозгов. Ну и скрипты всегда походу можно подправить. Для работы с COM портом нужен дополнительный модуль, например такой github.com/joeferner/node-serialport2.
Ответ написан
Позавчера как раз допиливали на работе библиотеку на С под вещание с Moxa по rs232.
Думаю, что если поискать, то можно найти еще не одну такую или аналогичную основу на С или С++ и для Ваших нужд.
А дальше уже сделать для нее GUI, работу с конфигами и т.п. По-моему, это лучше делать под конкретную платформу, если действительно есть ограничение по размеру. Если такого нет, то пишите на Qt (с С/С++ он дружит прекрасно). А для уменьшения размера исполняемого файла программы на их форумах уже давно обсуждаются такие темы.
Ответ написан
bagyr
@bagyr
C#. Проще плюсов и есть поддерживаемый в Mono System.IO.Ports. Несложный гуй на WinForms на другие оси даже пересобирать не придется.
Ответ написан
Комментировать
@Neir0
C# — размер минимальный(кстати откуда взялось это требование?), под виндоус\макос\линукс, работа с портами элементарна все уже встроено в фреймворк, куча примеров, сохранение и загрузка конфигураций посредством сериализации — две строчки.
Delphi — есть готовые компоненты, размер экзешника приличный, размер коммьюнити небольшой, платформа в полумертвом состояние.
Ответ написан
Quasar_ru
@Quasar_ru
Java. Кроссплатформенность. RS232 поддерживается посредством библиотеки RxTx. Такое приложение может работать на Win, Linux, OS X.
Ответ написан
Комментировать
@anitspam
Немного не по сути вопроса, но вдруг ваша программа уйдёт в массы, поэтому
1. Сделайте ещё сразу в ваш конфигуратор монитор портов, чтобы любой пользователь мог вам лог общения программы-железки отправить.
2. Проверьте работу вашей программы на нетбуке с маленьким экраном.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы