Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 19.08.2009
Сообщений: 41
1

Лишние байты при передаче через COM-порт

12.01.2016, 20:30. Показов 1518. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Возник такой вопрос. Мне нужно от компьютера передавать команды устройству. Есть жесткий протокол, но я наткнулся на проблему. Есть такая функция SerialPort.Write(Char[], Int32, Int32) которая передает в порт массив символов. В принципе мне это и надо, но есть одно жирное но. С какого-то перепугу после передачи последнего символа вдогонку лезут 0x41 и 0x0A. И из-за этого весь протокол рушится. Как можно победить эту заразу. Программу в устройстве для отсекания этих символов поправить нельзя.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.01.2016, 20:30
Ответы с готовыми решениями:

Проблемы при передаче данных через COM порт
Здравствуйте!!! При передаче / приеме данных через COM порт, возникла такая проблема: передаю...

Теряются байты при передаче по RS485
В общем, в чем идея. Комп шлет контроллеру пакет из 5ти байт, контроллер отвечает компу пакетом...

Теряются байты при передаче массива структур клиенту
Здравствуйте. Сервер подаёт на клиент массив структур. размер структуры 148байт. т.е всего 4400байт...

Лишние байты при отправке файлов по FTP
доброго времени суток! помогите, пожалуйста, с одной проблемой. отправляю файлы серверу, всё...

4
Эксперт .NET
5534 / 4298 / 1217
Регистрация: 12.10.2013
Сообщений: 12,332
Записей в блоге: 2
12.01.2016, 21:52 2
Цитата Сообщение от gurvinok Посмотреть сообщение
Как можно победить эту заразу.
Порт на самом деле работает с байтами. Почему бы не передавать напрямую байты?
0
0 / 0 / 0
Регистрация: 19.08.2009
Сообщений: 41
12.01.2016, 21:59  [ТС] 3
Как?
0
Эксперт .NET
5534 / 4298 / 1217
Регистрация: 12.10.2013
Сообщений: 12,332
Записей в блоге: 2
12.01.2016, 22:15 4
Цитата Сообщение от gurvinok Посмотреть сообщение
Как?
Вы запросы в порт отправляете из своей программы? У порта есть перегрузка метода Write(), которая пишет байты.
https://msdn.microsoft.com/ru-... .110).aspx
0
0 / 0 / 0
Регистрация: 19.08.2009
Сообщений: 41
12.01.2016, 22:22  [ТС] 5
Вот кусок кода передачи.
C#
1
2
3
4
5
6
for (int i = 0; i < Comanda.Text.Length; i++) // Здесь я перекидываю из string[] в char[]
    {
        Byte_Out[i] = Convert.ToChar(Comanda.Text[i]);
    }
 
serialPort1.Write(Byte_Out, 0, Comanda.Text.Length); // А это отправка
0
12.01.2016, 22:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2016, 22:22
Помогаю со студенческими работами здесь

При скачивании файла добавляются лишние байты
Качаю файл по URL ссылке, пример нашел в интернет. Проблема вот в чем, размер файла составляет...

Как отправить байты, содержащиеся в некотором буфере через COM-порт?
Как отправить байты (их значения) содержащиеся в некотором буфере через COM-порт? С++ Visual Studio.

При передаче по UART не переключается порт.
Добрый день. Что имеем : ATMiko16a, тактирование -- внешний кварц на 16 МГц. Планируется работать...

Кодировка символов при передаче в COM-порт
Собственно проблема в том, что при попытке оправить строку в порт получаю точки между символами, а...

порт источника отваливается при передаче сетевого пакета
Здравствуйте, друзья! Подскажите, пожалуйста, при передаче пакета отваливается порт источника. ...

Лишние байты в BMP
Добрый день! Возможно, пишу не в тот раздел, но более подходящего не нашёл. Суть проблемы: имеем...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru