|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.11.2013, 19:36 | #1 |
Пользователь
Регистрация: 09.02.2011
Сообщений: 25
|
Терминал BComPort выдает иероглифы.
Здравствуйте. У меня с компьютером, с помощью виртуального Com-порта, связано устройство(контроллер Arduino). Так вот это устройство отправляет в порт данные.Когда отправляет по одному символу то все приходит нормально, но когда отправляет несколько символов за раз приходят китайские иероглифы.И из сотен иероглифов местами иногда могут проскакивать те символы что я отправлял. может кто подскажет в чем проблема? Сторонние терминалы(например com_terminal-1.9b) принимают все отлично. Принимаю в delphi терминалом который шел в примере с компонентом.
Заранее всем спасибо |
23.11.2013, 22:00 | #2 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
...дуина отправляет в аски. Показывайте код приема у вас и дамп, снятый сниффером при данном обмене.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
24.11.2013, 00:09 | #3 | |
Пользователь
Регистрация: 09.02.2011
Сообщений: 25
|
Цитата:
procedure TMainForm.BComPort1RxChar(Sender: TObject; Count: Integer); var S: String; begin BComPort1.ReadStr(S, Count); if cbCRLF.Checked and (S[Length(S)] = #13) then // Добавление перевода строки S := S + #10; Memo1.Text := Memo1.Text + S; end; фото того что приходит в терминалы. http://modernlife.ucoz.ru/photo/1-0-5-3 не совсем понял про дамп? как его снять? и какой сниффер пользовать? |
|
24.11.2013, 11:31 | #4 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Сниффер - Portmon.
Версия Delphi - юникодная? Попробуйте заменить во всех методах string на ansistring или: Код:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
24.11.2013, 22:24 | #5 | |
Пользователь
Регистрация: 09.02.2011
Сообщений: 25
|
Цитата:
а вообще делфи 2009 так что скорее всего юникодный Portmonom не понял как работать. Сделал другой утилитой (вот фотка: http://modernlife.ucoz.ru/photo/1-0-6-3 пример кода который вы привели вставил он не работает, пытался все стринг на ансистринг заменить, но тоже не работает - делфи ругается. Последний раз редактировалось azzzazzzelDEAN; 24.11.2013 в 22:40. |
|
25.11.2013, 04:54 | #6 |
Участник клуба
Регистрация: 07.12.2011
Сообщений: 1,025
|
Обычно в таких случаях скорость порта неправильно выставлена.
Пробуй разную скорость
Не стесняемся, плюсуем!
|
25.11.2013, 08:35 | #7 | ||
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Скорость порта в чужом терминале и у него = 9600.
Цитата:
Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
||
25.11.2013, 14:26 | #8 | |||
Пользователь
Регистрация: 09.02.2011
Сообщений: 25
|
Цитата:
Цитата:
минуты полторы две погонял вроде косяков нету. и сейчас слово arduino каждый раз приходит с переносом на новую строку а раньше все приходило в одну строку. в портмоне кнопка порт неактивна и не могу выбрать. А вот дамп с другой проги: Цитата:
И еще один вопрос. В чем косяк был почему не работало со стандартным примером а с этим заработало? Сейчас следующая задача у меня будет, отсылать координаты через мое устройство и рисовать на канве в соответствии с этими координатами. Если возникнут вопросы буду спрашивать А пока Спасибо за помощь Последний раз редактировалось azzzazzzelDEAN; 25.11.2013 в 14:37. |
|||
25.11.2013, 15:11 | #9 | ||||||
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 25.11.2013 в 15:13. |
||||||
25.11.2013, 15:30 | #10 | ||
Пользователь
Регистрация: 09.02.2011
Сообщений: 25
|
Цитата:
Цитата:
хорошо если что создам только по уму наверное потоки сделать для этих целей? а то я немного попробовал нифига не работает(одна строка приходит и одна линия рисуется) |
||
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
терминал Microlot | gugushka | Компьютерное железо | 0 | 19.10.2012 11:31 |
Терминал Линукс! | Necare | Помощь студентам | 3 | 20.04.2011 17:22 |
Операционная система - терминал | rushei | Операционные системы общие вопросы | 3 | 05.08.2009 04:34 |
пробема кодировки при копировании текса через буф.обмена выдает иероглифы! | Linx | Общие вопросы Delphi | 3 | 29.05.2007 23:12 |