Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449

Передача и прием данных по виртуальному COM порту

22.06.2012, 00:35. Показов 10426. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время ))) вот собрал девайс на основе FT232BL

Вот отсылаю данные:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
        private SerialPort port;
 
         // Открытие порта 
        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            port = new SerialPort("COM16");
            port.Open();
        }
        
        // Отсылаю...
        private void toolStripButton5_Click(object sender, EventArgs e)
        {
            const int dan = 23;          // Записываю...
            port.Write(dan.ToString()); // Отсылаю...
        }
Как получить ответ ?

Как улучшить передачу данных ?

Заранее спасибо !

Добавлено через 8 часов 47 минут
Что не кто не знает?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.06.2012, 00:35
Ответы с готовыми решениями:

Прием и передача данных на одном порту
Всем Доброго времени суток. Где то слышал что возможно так что бы данные отправлялись и принимались на одном и том же порту. Что то...

Передача данных по виртуальному ком порту Simulink
Добрый вечер. Сориентируйте пожалуйста по передаче данных через виртуальный компорт. Возможность есть на примете что-то почитать,...

Прием данных по com порту
Подключил прибор по rs232. Провода 2, 4, и 5. Нужно принять данные с него. Вот код который я раздобыл: using System; using...

15
215 / 215 / 20
Регистрация: 18.05.2010
Сообщений: 865
22.06.2012, 00:59
получить ответ можно так.

C#
1
2
3
4
5
6
7
8
9
        ////
                port.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);
        ////
 
        private void port_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            byte[] b = new byte[port.BytesToRead];
            port.Read(b, 0, b.Length);
        }
а вот что значит улучшить передачу не совсем понятно !!!
1
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449
22.06.2012, 07:54  [ТС]
Микроконтроллеру посылать данные в виде целого числа или массивом? Чтобы лучше он смок прочитать все полученные данные.
0
 Аватар для mikhail_g
192 / 147 / 27
Регистрация: 02.05.2011
Сообщений: 467
22.06.2012, 17:06
Микроконтроллер получает массив байт независимо от типа значения которое вы записали в СОМ порт. А вообще, лучше всего передавать массив байт, по крайней мере так обычно делают в микропроцессорной технике.
0
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449
22.06.2012, 17:50  [ТС]
Можно пример на Ассемблере для AVR ?

Прием де кодировки данных...
0
 Аватар для mikhail_g
192 / 147 / 27
Регистрация: 02.05.2011
Сообщений: 467
22.06.2012, 17:57
Кодировку вы сами выбираете. Я на программировал avr только на С. Опишите задачу более конкретно, декодировки разные бывают. Бывает, например, что контроллер и ПК имеют разный порядок байтов в целочисленных типах (старший и младший байты поменяны местами), бывает, что обмен идёт по протоколу, создаются коды CRC и прочее. Опишите пожалуйста вашу конкретную задачу обмена
1
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449
22.06.2012, 19:19  [ТС]
Задачи у меня пока что простые так ка только начинаю осваивать.


С приложения посылаю данные, микроконтроллер декодирует и включает светодиод.


Обратная связь.

Нажимаю на кнопку подключенную к микроконтроллеру, посылаю данные ПК приложение считывает и выводит сообщение что данные приняты)


Буду очень благодарен за помощь !!!
0
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449
22.06.2012, 19:24  [ТС]
Фото устройства:
Миниатюры
Передача и прием данных по виртуальному COM порту   Передача и прием данных по виртуальному COM порту  
0
 Аватар для mikhail_g
192 / 147 / 27
Регистрация: 02.05.2011
Сообщений: 467
25.06.2012, 11:04
Это простая программа - если вы используете микроконтроллеры AVR, вам просто надо сконфигурировать регистр входов/выходов правильным образом, а затем в нужный бит, соответсвующий выходу выставить 1 - можете передавать по СОМ порту один байт - соответсвующий требуемому состоянию регистра. Не надо даже декодировать ничего. Принимаете ваш байт и записываете в регистр выходов. Вот нашёл примерчик в сети:
http://easyelectronics.ru/avr-... ast-1.html
0
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449
26.06.2012, 20:02  [ТС]
Вот все вроде получается но вопросы есть)

С МК посылаю данные точнее быть кодировку 8 битную, это символ "A" выглядит так 0b10000000

Вот как мне получить эти данные ? чтобы можно было прочитать символ !
0
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 64
13.01.2015, 09:52
А реальную скорость передачи не подскажите? я просто сделал связь ПК с МК по USB (HID устройство), но почему- то получилась маленькая скорость(около 6 килоБайт/сек), а надо не меньше 10 килоБайт/сек. Вот решил попробовать на виртуальный COM порт перейти и не знаю получится или нет
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
13.01.2015, 17:03
Цитата Сообщение от sasha0192 Посмотреть сообщение
Вот как мне получить эти данные ?
Рассказываю по шагам.
1. Конфигурируете порт.
2.Открываете порт.
3. Ждете к-либо время, периодически проверяя, пришли ли данные.
3.1 Если данные пришли - читаете их и пишете в к-либо переменную.
3.2 Если данные не пришли - выбрасываете исключение по таймауту.
4. Закрываете порт.
PROFIT!
0
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 64
13.01.2015, 20:10
а возможно передать массив байт или нужно в цикле передавать по одному байту?
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
13.01.2015, 20:18
Цитата Сообщение от Alex201 Посмотреть сообщение
возможно передать массив байт или нужно в цикле передавать по одному байту?
Как вам угодно. Все зависит от ситуации. Вообще в плане байт у порта всего одна перегрузка метода Write(), но ей можно и массив передать, и по кускам.
http://msdn.microsoft.com/ru-r... .110).aspx
0
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 64
13.01.2015, 20:29
Цитата Сообщение от insite2012 Посмотреть сообщение
Как вам угодно. Все зависит от ситуации. Вообще в плане байт у порта всего одна перегрузка метода Write(), но ей можно и массив передать, и по кускам.
http://msdn.microsoft.com/ru-r... .110).aspx
Спасибо! А вы не подскажите какую реальную скорость приема/передачи можно достичь? а я AT90USB162 собрал HID устройство, а там скорость маловата, мне нужно не меньше 10 килоБайт/сек
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
13.01.2015, 20:32
Цитата Сообщение от Alex201 Посмотреть сообщение
вы не подскажите какую реальную скорость приема/передачи можно достичь?
Это вряд ли. Тем более в таких системах мер. К примеру, у меня устройства на МК (как приемо-передающее) и ответное к нему (тоже на МК) общались через порт на скорости 38400 Baud. Это много или мало?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.01.2015, 20:32
Помогаю со студенческими работами здесь

Arduino. Прием данных по последовательному порту
Здравствуйте, подскажите пожалуйста, нашел в инете код приема 2-ух символов, но теперь по одному символу коряво принимает. Почему? Заранее...

Прием данных по СОМ-порту. Проблемы с массивом принятых байтов
Микроконтроллерное устройство каждую секунду на скорости 38400 шлет пакет, состоящий из признака начала пакета(*),Х,Х....Х,(#)-конец...

Передача данных по com порту
Добрый день! Написал программу открытия и передачи данных по com порту. Проблема в следующем. Если я пишу передачу в теле открытия ком...

Передача данных по LPT порту
Всем привет! Передо мной стоит задача: Необходимо передать файл по средствам парралельного порта с одного компьютера, на другой. (2...

Передача данных по ком-порту
Добрый вечер. Мне необходимо разобраться с работой блоков передачи данных по ком порту в симулинк. Что можете посоветовать, возможно книги,...


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

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

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru