4 / 4 / 1
Регистрация: 24.10.2012
Сообщений: 57
1

Работа с COM портом

24.10.2012, 13:37. Показов 7633. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем доброго времени суток!
Требуется небольшая подсказка.
Пишу программу, которая отправляет\принимает данные с\на COM порт.
Суть. Как это сделать в Windows и Linux, по отдельности, я знаю, но я хочу написать кроссплатформенную программу.
Кто может подсказать в какую сторону смотреть?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2012, 13:37
Ответы с готовыми решениями:

Работа с COM портом
Подскажите хорошую книгу или статью а еще бы исходник:) реализации работы с COM портом на C на...

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

Работа с COM-портом в C++ (соединение с Arduino)
Доброго времени суток, уважаемые коллеги! Мне для проекта требуется соединить Arduino и компьютер...

Работа с COM портом
Кто-нибудь делал это? В скором времени понадобится реализовать проект, в котором будет требоваться...

16
637 / 415 / 27
Регистрация: 03.11.2009
Сообщений: 1,855
24.10.2012, 13:49 2
C++ Qt
0
4 / 4 / 1
Регистрация: 24.10.2012
Сообщений: 57
24.10.2012, 14:16  [ТС] 3
Что посоветуете почитать для начала?
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
24.10.2012, 17:02 4
boost::asio

Цитата Сообщение от AlexSMGr54 Посмотреть сообщение
Суть. Как это сделать в Windows и Linux, по отдельности, я знаю, но я хочу написать кроссплатформенную программу.
В чем проблема написать две реализации, для Windows и для Linux?
0
4 / 4 / 1
Регистрация: 24.10.2012
Сообщений: 57
24.10.2012, 21:31  [ТС] 5
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
В чем проблема написать две реализации, для Windows и для Linux?
Странный вопрос конечно, ну да ладно.
Проблема в том что программа будет дорабатываться, к ней, со временем, будут прикручены новые винтики, но это в будущем, поэтому лучше начать один проект и допилить его до ума, чем вести два проекта и искать причины возникновения ошибок в одном и отсутствие оных в другом.

Добавлено через 3 часа 54 минуты
Возник ещё вопрос.
Если кто-то пользовался, то посоветуйте, что лучше использовать: QSerialPort, QSerialDevice или QExtSerialPort?
Просто информация в сети достаточно противоречивая.
0
10231 / 6609 / 498
Регистрация: 28.12.2010
Сообщений: 21,156
Записей в блоге: 1
24.10.2012, 23:01 6
...давеча на программерсе один писал на С++ QT кроссплатформенную работу с COM-портом. И столкнулся с кривой реализацией управления RTS и DTR в QExtSerialPort под Win. Пришлось ему костыль на WinAPI приторачивать из EscapeCommFunction()
0
4 / 4 / 1
Регистрация: 24.10.2012
Сообщений: 57
24.10.2012, 23:53  [ТС] 7
Понял. Спасибо!
0
10231 / 6609 / 498
Регистрация: 28.12.2010
Сообщений: 21,156
Записей в блоге: 1
24.10.2012, 23:57 8
QSerialPort, QSerialDevice или QExtSerialPort - это все обертки, и нет гарантии, что в QSerialPort, QSerialDevice реализовано иначе (что интересно под Линуксом в QExtSerialPort все оки). Кишочки надо сравнивать, а лучше сразу на реальном устройстве проверять, скажем USB/RS-232 адаптере.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
25.10.2012, 10:53 9
Цитата Сообщение от AlexSMGr54 Посмотреть сообщение
Странный вопрос конечно, ну да ладно.
Проблема в том что программа будет дорабатываться, к ней, со временем, будут прикручены новые винтики, но это в будущем, поэтому лучше начать один проект и допилить его до ума, чем вести два проекта и искать причины возникновения ошибок в одном и отсутствие оных в другом.
Не подписывайтесь в незнание С/C++. Как по вашему пишутся кроссплатферменные приложения/библиотеки?
0
4 / 4 / 1
Регистрация: 24.10.2012
Сообщений: 57
25.10.2012, 18:40  [ТС] 10
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Не подписывайтесь в незнание С/C++. Как по вашему пишутся кроссплатферменные приложения/библиотеки?
Молча, ручками, на тех языках, которые реализованы более чем на одной платформе или ОСи.
Это уже ни как не относится к теме. Если я не прав пишите, пожалуйста, в ЛС.

Добавлено через 3 минуты
Цитата Сообщение от raxp Посмотреть сообщение
QSerialPort, QSerialDevice или QExtSerialPort - это все обертки, и нет гарантии, что в QSerialPort, QSerialDevice реализовано иначе (что интересно под Линуксом в QExtSerialPort все оки). Кишочки надо сравнивать, а лучше сразу на реальном устройстве проверять, скажем USB/RS-232 адаптере.
Спасибо большое, буду иметь в виду.
Я,так и делаю, проверяю сразу на реальной железяке (Arduino).
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
25.10.2012, 20:28 11
Цитата Сообщение от AlexSMGr54 Посмотреть сообщение
Молча, ручками, на тех языках, которые реализованы более чем на одной платформе или ОСи.
Компилятор C++ есть в windows, linux сложно написать свою кроссплатформенную библиотеку, раз говоришь что умеешь делать?
Цитата Сообщение от AlexSMGr54 Посмотреть сообщение
Это уже ни как не относится к теме. Если я не прав пишите, пожалуйста, в ЛС.
Вполне относиться.
Цитата Сообщение от AlexSMGr54 Посмотреть сообщение
Как это сделать в Windows и Linux, по отдельности, я знаю, но я хочу написать кроссплатформенную программу.
Легко делается через тот же pimpl
0
4 / 4 / 1
Регистрация: 24.10.2012
Сообщений: 57
25.10.2012, 21:04  [ТС] 12
Буду иметь в виду. Спасибо.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
25.10.2012, 21:47 13
Цитата Сообщение от AlexSMGr54 Посмотреть сообщение
Буду иметь в виду. Спасибо.
Был как-то случай из практики, взяли стороннюю библиотеку, написали код.
А когда стали тестировать на целевой платформе, то наткнулись на баг, в той версии которая была на целевой платформе.
1
4 / 4 / 1
Регистрация: 24.10.2012
Сообщений: 57
26.10.2012, 09:17  [ТС] 14
Всем спасибо! Все ответы помогли.
Итог: Раздобыл книгу Макса Шлее "Qt. Профессиональное программирование на C++". Нашёл ответы на все интересующие вопросы касательно Qt и Qt+SerialPort.
Я думаю, что тему можно считать закрытой.
0
3 / 3 / 0
Регистрация: 06.08.2014
Сообщений: 45
14.12.2014, 05:46 15
хочешь кроссплатформенное приложени-возьми java и не парься...хотя не,париться придеться не мало
0
zzzZZZ...
527 / 358 / 94
Регистрация: 11.09.2013
Сообщений: 2,041
22.12.2014, 12:40 16
Цитата Сообщение от Maddoc Посмотреть сообщение
хочешь кроссплатформенное приложени-возьми java и не парься...хотя не,париться придеться не мало
зачем поднимать тему 2летней давности?) И на java готовый класс для работы с ком портом я где-то видел, ничего сложного не было)
0
Эксперт С++
8385 / 6147 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
13.07.2015, 23:25 17
Цитата Сообщение от raxp Посмотреть сообщение
И столкнулся с кривой реализацией управления RTS и DTR в QExtSerialPort под Win.
Цитата Сообщение от raxp Посмотреть сообщение
QSerialPort, QSerialDevice или QExtSerialPort - это все обертки, и нет гарантии, что в QSerialPort, QSerialDevice реализовано иначе (что интересно под Линуксом в QExtSerialPort все оки). Кишочки надо сравнивать, а лучше сразу на реальном устройстве проверять, скажем USB/RS-232 адаптере.
А можно ссылку в личку на более подробное описание проблемы, хотелось бы попробовать проверить на QSerialPort
0
13.07.2015, 23:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.07.2015, 23:25
Помогаю со студенческими работами здесь

Работа с COM-портом QT
Всем привет. Захотелось на днях написать GUI под windows для общения с STM32F100 по COM-порту....

Работа с COM портом, потоки
Есть 2 файла myclass.cpp и mainwindow.cpp В первом я создал поток чтения ком порта ...

Работа с ком портом
Всем привет. Подскажите пожалуйста, как лучше организовать такую систему: Приложение должно...

Работа с COM портом RTS/DTR
Делаю прием передачу по ком порту rs-232C подключение прием передачу я сделал но вот возникает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru