0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 9
|
|
1 | |
Обмен данными через СОМ-порт02.12.2012, 18:13. Показов 61202. Ответов 36
Метки нет (Все метки)
Помогите новичку, пожалуйста)
Нужно написать программу, которая ловит нажатия клавиш(стрелок) и соответственно отправляет это все через СОМ-порт на микроконтроллер. Но если с МК я более-менее разобрался, то вот с ПК-частью все очень-очень печально Я тут на форуме покопался, но ничего не понимаю Как вообще использовать этот СОМ в программе?
0
|
02.12.2012, 18:13 | |
Ответы с готовыми решениями:
36
Обмен данными по СОМ-порту Обмен данными между процессами через файлы, что отображаются в памяти Обмен данными через COM порт Обмен данными через ком порт в потоке |
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||
14.03.2016, 05:47 | 21 | |||||
примерно вот так:
0
|
0 / 0 / 0
Регистрация: 22.03.2016
Сообщений: 9
|
|||||||||||
23.03.2016, 09:40 | 22 | ||||||||||
Помогите "чайнику"! Есть задача принимать команды из COM4 вида 11,12,13 и т.д. и в соответствии с полученной командой отправлять в COM5 строковые команды. Вроде бы всё получилось, но в результате работы программы исполняется только первая принятая команда, вторая уже не исполняется и такое впечатление, что COM5 чем-то занят и не принимает следующую команду...
Вообщем заработал такой вариант:
0
|
Заблокирован
|
|
27.04.2016, 16:44 | 23 |
Kuzia domovenok как я понял из поста #4 Вы используете замкнутый поток ThreadProc
этот же поток формирует событие SetEvent(hEvent); а функция WaitForSingleObject(hEvent, INFINITE); ждет это событие . ___________________________ собственно вопрос ! строки идущие за WaitForSingleObject(hEvent, INFINITE); будут выполняться только после получения события от потока функцией SetEvent(hEvent); ?
0
|
0 / 0 / 0
Регистрация: 30.09.2015
Сообщений: 18
|
|
02.05.2016, 03:07 | 24 |
Подскажите, пожалуйста, как перерисовывать окно, в соответствии с принимаемыми значениями с COM-порта? Я шлю с Ардуино на COM-порт 0 или 1, на экране должен выводиться текст - Closed или Open.
0
|
Заблокирован
|
|
02.05.2016, 11:51 | 25 |
0
|
0 / 0 / 0
Регистрация: 30.09.2015
Сообщений: 18
|
||||||
02.05.2016, 15:03 | 26 | |||||
проблема не с перерисовкой окна, проблема с работой COM-порта. если я создаю кнопку и перерисовываю своим способом, то все перерисовывается, если из массива записываю в переменную "а", то ничего не происходит.
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
21.10.2016, 23:58 | 29 |
Только есть одна байда - работа с COM-портом аки с файлом тормозная неуправляемая и для дел управления чем либо абсолютно непригодна.
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
22.10.2016, 00:49 | 31 |
Вот именно этот момент который еще с 95-ой тянется многократно проверен практикой. А весь остальной асинхронный ввод-вывод остальной действительно через Overlapped нужно делать.
0
|
22.10.2016, 13:40 | 32 |
... ты о чем?
Почти все делается в духе "работа как с файлом" что пайпы,что сокеты, что сериал, а Overlapped лишь разновидность это I/O. Или ты под моментом имеешь виду свой позорный быдлокод?
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
22.10.2016, 19:36 | 33 |
Смотря где. Там где можно работать как с файлом все ок и с overlapped. а там где пакетный обмен через COM с оверлаппед обычно начинаются абсолютно ненужные протормозки и т.п.
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
22.10.2016, 19:46 | 35 |
Быдлокод - это к примеру работа с сокетами через оверлаппед. Там для асинхронки другие гораздо более продвинутые средства имеются. А насчет комов- то оверлапед это причина тормозов в пакетном режиме. Видил как то хохму правда еще под хрюшкой. сидят вумники контроллер опрашивают по модбасу, комы через оверлаппед. 2-5 FPS чего явно недостаточно. Два месяца промучались с ускорением - без результата. Выбросилил оверлаппед поставили эту байду. Время отклика контроллера менее 1 мс (т.е более 1000 FPS опрос )
Добавлено через 55 секунд Команда тудыть ответ оттудыть. Ты че в древней греции ликбез заканчивал?
0
|
22.10.2016, 20:06 | 36 |
Быдлокодство это использовать топор вместо скальпеля и жаловаться чего кишки навыворот торчат и пациент мертв )))
Разные средства используются для разных случаев, не более... Т.е "байда" это ты про твой быдлокод? Грузящий проц? (Даже если опроса нет, да же данных нет, даже если устройства нет) Не удевлюсь что с "оверлаппед" вы накатали просто еще более ужасный быдлокод от того ... Недостаточно для чего? Для полета на Марс? Или Сникерс ?
0
|
27.02.2020, 21:51 | 37 |
Kuzia domovenok, в приведённом вами примере не используются тайм-ауты порта.
Они в данном случае не нужны? Видел не очень внятные примеры настроек тайм-аутов. Как их правильно настроить в зависимости от скорости?
0
|
27.02.2020, 21:51 | |
27.02.2020, 21:51 | |
Помогаю со студенческими работами здесь
37
управление через СОМ порт Передача пакета по протоколу ОВЕН через СОМ порт Обмен через порт Взаимодействие процессов, обмен сообщениями через порт Обмен данными через интернет Обмен данными через интернет Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |