Форум программистов, компьютерный форум CyberForum.ru

Программирование под Com-порт - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 34, средняя оценка - 4.91
denver
 Аватар для denver
1608 / 277 / 3
Регистрация: 19.09.2009
Сообщений: 701
23.05.2011, 02:17     Программирование под Com-порт #1
Нужно написать программу, которая может работать с modbus протоколом т.е отправлять через ком порт запросы, на промышленные датчики и принимать от их регистров показание и расшифровывать их.
Так как в С++ слабоват, необходима литература с упором программирование com-порта. Своей литературы то полно, но в ней нету именно основы создания протоколов. Буду рад любой помощи, хоть ссылками на нужные статьи, хоть названием литературы.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
solar_wind
 Аватар для solar_wind
740 / 731 / 39
Регистрация: 06.07.2009
Сообщений: 2,937
Завершенные тесты: 1
23.05.2011, 05:58     Программирование под Com-порт #2
1. Смысла покупать книги для изучения работы с COM портом особо нет, так как тема не настолько уж большая, и в сети электронных примеров и материалов вообщем то немало, нужно всего лишь поискать и поразбираться. Вобщем все сводится к получению списка портов (или тупому их перебору по именам), открытию порта (файла), назначения параметров работы порта (это наверное самое важное), а дальше идет запись, чтение байт.
2. Что такое "основы создания протоколов"? В общем случае это сводится к тому, что к данным добавляется заголовок с длинной данных и CRC для проверки достоверности данных. Каких то специализированных материалов по правилам написания протоколов я, по крайней мере, не встречал, мне кажется каждый производитель изощряется как может. А вот как работает modbus, это уже другой вопрос...тут либо документацию производителя нужно смотреть, либо в сети искать, протокол то популярный довольно.
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,307
23.05.2011, 12:37     Программирование под Com-порт #3
Нет ровно ничего сложного.
Под Win "программирование" COM-порта сводится к следующей нехитрой последовательности действий:
1. Открываешь нужный порт функцией CreateFile,
2. Устанавливаешь нужное состояние порта и таймауты записи/чтения - SetCommState, SetCommTimeouts,
3. Читаешь данные функцией ReadFile и пишешь WriteFile,
4. Когда надоело - закрываешь порт CloseHandle.
Вуаля.
Поищи по форуму - я когда-то давным-давно выкладывал код......
Kentik
0 / 0 / 0
Регистрация: 30.05.2011
Сообщений: 15
02.06.2011, 14:19     Программирование под Com-порт #4
А можно уважаемый CheshireCat повторить данный код. Спасибо .

Добавлено через 1 минуту
denver, Вы решили данную проблему. Поделитесь результатом ОЧЕНЬ НУЖНО !!!!

Добавлено через 2 часа 47 минут
Файл описания протокола modbus. следующий шаг проситать из порта в соответствии с данным протоколом . Кто кинет исходник
Вложения
Тип файла: pdf PI_MBUS_300.pdf (172.3 Кб, 297 просмотров)
Kentik
0 / 0 / 0
Регистрация: 30.05.2011
Сообщений: 15
02.06.2011, 19:47     Программирование под Com-порт #5
Цитата Сообщение от Kentik Посмотреть сообщение
А можно уважаемый CheshireCat повторить данный код. Спасибо .

Добавлено через 1 минуту
denver, Вы решили данную проблему. Поделитесь результатом ОЧЕНЬ НУЖНО !!!!

Добавлено через 2 часа 47 минут
Файл описания протокола modbus. следующий шаг проситать из порта в соответствии с данным протоколом . Кто кинет исходник
В моём случае нужно подключится к контроллеру и с него прочитать значения которые приходят от датчиков, клапанов и тд ...
Yandex
Объявления
02.06.2011, 19:47     Программирование под Com-порт
Ответ Создать тему
Опции темы

Текущее время: 10:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru