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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 34, средняя оценка - 4.91
denver
1610 / 279 / 3
Регистрация: 19.09.2009
Сообщений: 701
#1

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

23.05.2011, 02:17. Просмотров 4474. Ответов 4
Метки нет (Все метки)

Нужно написать программу, которая может работать с modbus протоколом т.е отправлять через ком порт запросы, на промышленные датчики и принимать от их регистров показание и расшифровывать их.
Так как в С++ слабоват, необходима литература с упором программирование com-порта. Своей литературы то полно, но в ней нету именно основы создания протоколов. Буду рад любой помощи, хоть ссылками на нужные статьи, хоть названием литературы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2011, 02:17     Программирование под Com-порт
Посмотрите здесь:

Программирование на c++ под android - C++
Подскажите пожалуйста материалы или еще какую-то информацию как начать создавать программы под андроид

программирование под Windows - C++
Постановка задачи: организовать связанный список из целочисленных элементов. Выполнить между элементами списка операции +, - и *....

Программирование под Unix - C++
Посоветйте литаратуру для программированию под Unix написанную на простом языке.

Программирование под USB порты - C++
что я сделал: Я написал на WF программу которая загружает картинки и при нажатии на кнопку(Toolbox) перемешивает их. В чем нужна...

Информация о программирование на С++ под ДОС - C++
люди! может быть кто-то когда-то писал программы под ДОС, использую элементы интерфейса, типа как в Волков Коммандере или ФАРе, т.е. окна...

Как переделать под динамическое программирование? - C++
Есть одномерный массив длиной N, заполненный числами от -10 до 10. Найти максимальную сумму, если можно брать следующий элемент, или через...

Программирование под GPU: Вычисление произведения матрицы на вектор - C++
Доброго времени суток!Ветку, связанную с программированием на ГПУ не нашел, пишу сюда. проблема следующая. Есть код на С++ под ЦПУ и код...

Корень под корнем, который под корнем, который в свою очередь под корнем., под корнем - C++
Правильно ли я составил код? #include <iostream> using namespace std; int main() { double e = 0; double n = 3; double...

com порт - C++
Здравствуйте. Стоит задача написать программу для связи компьютера и прибора через интерфейс RS232. Необходимо посылать данные на...

Com-порт в Turbo C++ 3.0 - C++
Отправляю один символ через Com1 (программка создается на VB6), нужно чтобы его приняла и вывела программка созданная на Turbo C++ 3.0 ...

USB порт - C++
Вопрос- есть устройство USB (сотовый телефон) которое при установке драйверов не создает виртуальный ком порт. Видно только как USB device....

Запись символов CR и LF в COM порт - C++
Ребят, как записать в COM порт символы возврата каретки и переноса сроки CR и LF? При попытке записи посредствам команды WriteFile,...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
solar_wind
756 / 747 / 42
Регистрация: 06.07.2009
Сообщений: 2,969
Завершенные тесты: 1
23.05.2011, 05:58     Программирование под Com-порт #2
1. Смысла покупать книги для изучения работы с COM портом особо нет, так как тема не настолько уж большая, и в сети электронных примеров и материалов вообщем то немало, нужно всего лишь поискать и поразбираться. Вобщем все сводится к получению списка портов (или тупому их перебору по именам), открытию порта (файла), назначения параметров работы порта (это наверное самое важное), а дальше идет запись, чтение байт.
2. Что такое "основы создания протоколов"? В общем случае это сводится к тому, что к данным добавляется заголовок с длинной данных и CRC для проверки достоверности данных. Каких то специализированных материалов по правилам написания протоколов я, по крайней мере, не встречал, мне кажется каждый производитель изощряется как может. А вот как работает modbus, это уже другой вопрос...тут либо документацию производителя нужно смотреть, либо в сети искать, протокол то популярный довольно.
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,363
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 Кб, 305 просмотров)
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-порт
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru