Название: Qt 5.6 Отправлено: __Heaven__ от Март 16, 2016, 17:32 Привет, друзья! Спешу сообщить о выходе новой версии.
Для нового Qt 5.6 разработчики обещают долговременную поддержку (LTS). Предыдущим LTS релизом был Qt 4.8. Список изменений:
Название: Re: Qt 5.6 Отправлено: Bepec от Март 16, 2016, 17:44 Ураа, погздравляем.
PS особый привет Igors - оптимизация QString ^.^ Название: Re: Qt 5.6 Отправлено: __Heaven__ от Март 16, 2016, 17:45 ;D ;D
Название: Re: Qt 5.6 Отправлено: DroidMan от Март 17, 2016, 14:11 Вот не могли раньше поддержку hi-dpi сделать, придется теперь все свои костыли выпиливать.
Название: Re: Qt 5.6 Отправлено: sergek от Март 18, 2016, 21:27 Попробовал Qt SerialBus, понравилось, все просто и понятно.
Но вот что удивляет. Для работы с устройствами есть 2 класса - QModbusRtuSerialMaster и QModbusTcpClient. Т.е., если к контроллеру подключаешься через последовательный порт, то используется протокол Modbus RTU, через Ethernet (TCP/IP) - то Modbus TCP. А как быть, если мне нужен Modbus RTU по TCP/IP? К примеру, Moxa Nport в режиме TCP Server Mode - подключаемся к нему по Ethernet, а работаем по RTU, т.е. преобразования протокола в этом устройстве не предусмотрен - что подаешь на внешний порт, то и транслируется в сеть RS-485. Нужен еще один класс - "QModbusRtuTcpMaster". Заглянул в исходники SerialBus, понял, что времени потребуется прилично :(( Коллеги, может, я чего не догоняю и хочу странного? Название: Re: Qt 5.6 Отправлено: Old от Март 18, 2016, 21:33 Коллеги, может, я чего не догоняю и хочу странного? Сейчас kuzulis придет и расскажет, что он там думал. :)По мне, так в таких случаях, нужно протоколы и транспорты разделять. Название: Re: Qt 5.6 Отправлено: kuzulis от Март 21, 2016, 11:54 Цитировать А как быть, если мне нужен Modbus RTU по TCP/IP? Я им то-же самое талдычил, что проще передавать мастеру/слейву на вход любое QIODevice как транспорт, а у самого мастера/слейва создать некие проперти, типа типа протокола: Ascii, Rtu, Tcp. И тогда в зависимости от этих пропертей мастер будет в транспорт генерить соответствующие пакеты... как-то так.. примерно.. Но у них был ответ Они еще сначала ходели libmodbus прикрутить, уже начали реализацию... а я им грю - хренью вы занимаетесь - хотите скрестить ежа и ужа... проще сделать самим с нуля (благо, модбас спека простая) и достаточно быстро... но они потом все-таки выкинули libmodbus.. Цитировать Сейчас kuzulis придет и расскажет, что он там думал. Улыбающийся Эммм, а это не ко мне... я только в этом модуле помог добавить (добавил) реализации PeakCAN, TinyCAN.. А все претензии к Алексу Блашу и Ко (theqtcompany) - это их детище... :). Так шо, многоуважаемый Old, - мимо! ;) Название: Re: Qt 5.6 Отправлено: sergek от Март 21, 2016, 17:43 Я им то-же самое талдычил, что проще передавать мастеру/слейву на вход любое QIODevice как транспорт, а у самого мастера/слейва создать некие проперти, типа типа протокола: Ascii, Rtu, Tcp. И тогда в зависимости от этих пропертей мастер будет в транспорт генерить соответствующие пакеты... как-то так.. примерно.. Именно так и нужно было. Они еще сначала ходели libmodbus прикрутить, уже начали реализацию... а я им грю - хренью вы занимаетесь - хотите скрестить ежа и ужа... проще сделать самим с нуля (благо, модбас спека простая) и достаточно быстро... но они потом все-таки выкинули libmodbus.. Вы и так сделали большое дело! :) Я ознакомился с исходниками, можно сделать еще один класс, QModbusRtuTcpMaster или, скорее, QModbusRtuClient. Но опыта нет - как его добавить в библиотеку? Пробовал добавить в проект еще 3 модуля QModbusRtuClient.cpp, QModbusRtuClient.h и QModbusRtuClient_p.h. Все хорошо собирается, но при линковке со своей программой получаю неразрешенные ссылки. Ткните носом, пожалуйста, коллеги, как это делается? UPD. И законно ли это? |