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

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.63
Lampard7
3 / 3 / 0
Регистрация: 13.05.2009
Сообщений: 106
#1

Получить сигнал с СОМ-порта - C++

19.10.2011, 19:45. Просмотров 1037. Ответов 6
Метки нет (Все метки)

Здравствуйте.Собсно поставлена такая задача - получить по COM-порту код,преобразовать в число и вывести на экран.Тоесть например идет набор единичек "1111" - получаем ,выводим "15".Препод усиленно молчит по поводу что это за зверь-устройство.Задача получить число и вывести.Может кто имеет источники где можна про это почитить или какие разработки уже имеет?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
20.10.2011, 02:09     Получить сигнал с СОМ-порта #2
куда получить то?
на какое устройство?
CheshireCat
Эксперт С++
2891 / 1240 / 78
Регистрация: 27.05.2008
Сообщений: 3,345
20.10.2011, 14:08     Получить сигнал с СОМ-порта #3
Из COM-порта нужно просто читать, как из файла. Тонкость только в том, что, если ничего не приходит в порт - то функция чтения либо будет тупо ждать, пока хоть что-нибудь придет, либо завершится неуспешно по таймауту - это надо проверять.

Под Win алгоритм действий прост:
1. функцией CreateFile открыть нужный порт на чтение,
2. с помощью SetCommState установить скорость, число бит и т.п.,
3. фукнцией SetCommTimeouts установить таймауты (см.выше),
4. читать и анализировать....
5. не забыть закрыть порт функцией CloseHandle.
Вроде бы, все...
Lampard7
3 / 3 / 0
Регистрация: 13.05.2009
Сообщений: 106
20.10.2011, 21:18  [ТС]     Получить сигнал с СОМ-порта #4
Тогда такой вопрос : откуда брать скорость,число бит и тп.?? И как "читать и анализировать"? Какой функцией читать то? И чтение как идет? Побитно,побайтно или еще как?
CheshireCat
Эксперт С++
2891 / 1240 / 78
Регистрация: 27.05.2008
Сообщений: 3,345
20.10.2011, 21:28     Получить сигнал с СОМ-порта #5
1. Откуда брать скорость, число бит, и т.п. - это хз.... Допрашивай препа. Больше некого.
2. Читать - ну, разумеется, функцией ReadFile, а как ты думал? Кстати, она возвращает значение типа BOOL - считано хоть что-нибудь или нет, а также число прочитанных байтов. Подробности можешь сам прочесть в MSDN, пересказывать его - дело неблагодарное.
3. Чтение идет байтами, разумеется. Поэтому "5 бит" ты не прочитаешь - только целый байт. Ну, а как анализировать принятые байты - это уже зависит от поставленной задачи.... То есть, в данном случае - выводишь принятый байт как число (от 0 до 255) на экран.
Lampard7
3 / 3 / 0
Регистрация: 13.05.2009
Сообщений: 106
20.10.2011, 21:30  [ТС]     Получить сигнал с СОМ-порта #6
Большое спасибо за ответы.А на чем все-таки удобнее будет это сделать все? Слышал можно в Visual C как приложение с MFC.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2011, 22:37     Получить сигнал с СОМ-порта
Еще ссылки по теме:

График данных СОМ-порта Visual C++
График реального времени для данных, поступающих из СОМ-порта (MFC) Visual C++
Как изменить номер СОМ порта C++ Builder
C++ Linux Настройка СОМ-порта
Как на с++ прочитать данные из СОМ порта? C++

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

Или воспользуйтесь поиском по форуму:
CheshireCat
Эксперт С++
2891 / 1240 / 78
Регистрация: 27.05.2008
Сообщений: 3,345
20.10.2011, 22:37     Получить сигнал с СОМ-порта #7
На чем делать - вопрос чисто техники. Все перечисленные функции - это исключительно функции Win32 API, т.е. встроены в ядро Windows и с конкретным языком никак не связаны. Можешь использовать любой язык и компилятор - хоть Visual C(++), хоть Delphi, хоть VB.....
Yandex
Объявления
20.10.2011, 22:37     Получить сигнал с СОМ-порта
Ответ Создать тему
Опции темы

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