Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Терминал COM-порт для передачи HEX
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Интерфейсы
Alt.F4
Добрый день.
Скачал добрый десяток программ для работы с ком-портом, но ни одна не отправляет в шестнадцатиричном виде, все кидают в кодировке ACSII.
Несколько программ правда имели функцию передачи в HEX, но текст вставлять нельзя, только набирать ручками (мне необходимо передать 80кбайт).
Может кто-нибудь встречал подобные программы?
Спасибо.
=AK=
Она называется DOS smile.gif
Используйте FAR, или в командной строке Винды (Start/Run...) наберите:

copy <имя_вашего_hex_файла> COM1
Savrik
Советую Advanced Serial Port Terminal - можно как угодно отправлять, очень удобно
rx3apf
Цитата(Alt.F4 @ Oct 20 2010, 02:34) *
Несколько программ правда имели функцию передачи в HEX, но текст вставлять нельзя, только набирать ручками (мне необходимо передать 80кбайт).
Может кто-нибудь встречал подобные программы?

Что-то я не понял - что, 80 кило HEX передавать ? Что есть HEX ? ASCII-представление двоичных данных ? Intel-HEX ? Так это все ASCII натуральные. Или речь все же о двоичных данных ? Teraterm, например, умеет передавать бинарные файлы "как есть". И можно, например, передачу файла навесить на функциональную клавишу, чтобы отправлять файл по одному нажатию.
VladimirYU
Цитата(Alt.F4 @ Oct 20 2010, 02:34) *
Добрый день.
Скачал добрый десяток программ для работы с ком-портом, но ни одна не отправляет в шестнадцатиричном виде, все кидают в кодировке ACSII.
Несколько программ правда имели функцию передачи в HEX, но текст вставлять нельзя, только набирать ручками (мне необходимо передать 80кбайт).
Может кто-нибудь встречал подобные программы?
Спасибо.

Realterm + драйвер для доступа к портам DLPortIO, если под WINDOWS.
Alt.F4
Надо передать массив шестнадцатиричных чисел (0x01, 0x02,...,0xFF)
Скачал Advanced Serial Port Terminal по совету Savrik, пока передавать не пробовал, но визуально подходит.
Спасибо. beer.gif
Alt.F4
Не долго я радовался, Advanced Serial Port Terminal ограничивает вставленное количество символов в строку. В итоге мне надо 80 раз сделать Ctrl+C, Сtrl+V sad.gif
Realterm может отправлять txt файл, но отправляет почему-то очень медленно, на скорости 57600бит/с должно выходить не более 12сек, а он отправляет около минуты, в итоге байты занесены во флэш не верно...
Это я Data Flash записать хочу через USART. Имеется список 80.000 шестнадцатиричных цифр, (можно в десятичные перегнать в виде 001,002,...,256 или в бинарные) которые надо как-то загнать в USART....
Maverick
Цитата(Alt.F4 @ Oct 20 2010, 20:11) *
Не долго я радовался, Advanced Serial Port Terminal ограничивает вставленное количество символов в строку. В итоге мне надо 80 раз сделать Ctrl+C, Сtrl+V sad.gif
Realterm может отправлять txt файл, но отправляет почему-то очень медленно, на скорости 57600бит/с должно выходить не более 12сек, а он отправляет около минуты, в итоге байты занесены во флэш не верно...
Это я Data Flash записать хочу через USART. Имеется список 80.000 шестнадцатиричных цифр, (можно в десятичные перегнать в виде 001,002,...,256 или в бинарные) которые надо как-то загнать в USART....

Попробуйте этой программой или вот этой
Может какая-то подойдет...
rezident
Br@y's terminal попробуйте.
Alt.F4
Maverick, какой программой?
rezident, тоже стоит ограничение...
Herz
Цитата(Alt.F4 @ Oct 20 2010, 19:11) *
Realterm может отправлять txt файл, но отправляет почему-то очень медленно, на скорости 57600бит/с должно выходить не более 12сек, а он отправляет около минуты, в итоге байты занесены во флэш не верно...
Это я Data Flash записать хочу через USART.

Это странно. Может, флешь просто записываться не успевает? Буфер есть?
Maverick
Цитата(Alt.F4 @ Oct 20 2010, 20:24) *
Maverick, какой программой?

забыл вставить ссылку на программу... blush.gif

уже исправил сообщение
rezident
Цитата(Alt.F4 @ Oct 20 2010, 23:24) *
rezident, тоже стоит ограничение...
Какое ограничение? cranky.gif Там ничего копи-пастить не требуется, кнопка Send File имеется, с помощью которой выбираете файл и он отправляется на COM-порт.
Alt.F4
Цитата
то странно. Может, флешь просто записываться не успевает? Буфер есть?
флэш записывается со скоростью 2304кбит/с
пишу сначала в один буфер, и пока он переноситься в страницы памяти, заполняю другой буфер.
на самом деле, мне можно отправлять по USART на любой скорости.
Maverick, эти программы тоже не подходят =(
rezident, выбираю txt файл -> ничего не происходит и на Send не реагирует -> жму опять на send file и программа закрывается wacko.gif
rezident
Цитата(Alt.F4 @ Oct 20 2010, 23:53) *
rezident, выбираю txt файл -> ничего не происходит и на Send не реагирует -> жму опять на send file и программа закрывается wacko.gif
А порт-то предварительно открыт?
Alt.F4
Цитата
А порт-то предварительно открыт?
да, если порт закрыт, то программа не закрывается... Я там посмотрел, она по ходу txt только ACSII символы понимает
rezident
Цитата(Alt.F4 @ Oct 21 2010, 00:01) *
да, если порт закрыт, то программа не закрывается... Я там посмотрел, она по ходу txt только ACSII символы понимает
"Ох, уж эти сказки, ох уж эти сказочники!" biggrin.gif
Bra@y's terminal все передает в том виде, в котором ему предлагают. Вот сейчас специально для проверки взял файл (картинку) из своей аватары (AV-3882.JPG - 1412 байт). Замкнул RXD и TXD на разъеме COM-порта. Открыл порт в терминале. Включил логгирование приема (StartLog). C помощью функции Send File передал AV-3882.JPG. Выключил логгирование приема (StopLog). Редактором FAR открыл созданный терминалом файл 20101021001659.log. Вырезал из него заголовок и окончание лога, не относящиеся собственно к переданным данным. Сохранил файл (размер 1412 байт). Сравнил два файла. Результат
Цитата
Сравнение файлов 20101021001659.log и AV-3882.JPG
FC: различия не найдены

Еще вопросы имеются? wink.gif
Alt.F4
txt файлы он декодирует в ACSII, а вот бинарный действительно, передает как есть. Только скорость передачи почему-то мала. 5 мин ждал, а он до конца еще 80кбайт не передал, хотя по идее со скоростью 57600бит/с=7200б/с должен за 12сек управиться...
Спасибо
з.ы. странно, почему снизу за надписью TX: постоянно ноль. Как отслеживать на каком этапе передача...
RX: же отображается нормально...


В общем ждал ждал пока передастся, но так и не дождался. Его по ходу с такими большими файлами переклинивает... =(
А может программатор посоветуете? Спасибо.
rezident
Цитата(Alt.F4 @ Oct 21 2010, 00:48) *
txt файлы он декодирует в ACSII, а вот бинарный действительно, передает как есть.
Декодировать на приеме для отображения он может и в ASCII и в HEX, там разные опции можно использовать. А вот на передаче он ничего не декодирует.
Цитата(Alt.F4 @ Oct 21 2010, 00:48) *
Только скорость передачи почему-то мала. 5 мин ждал, а он до конца еще 80кбайт не передал, хотя по идее со скоростью 57600бит/с=7200б/с должен за 12сек управиться...
Неправильно считаете. 80*1024*10бит/57600бит/с=14,2с. 10 бит это для одного символа, если режим 8,n,1. Если четность включена, то 11 бит/символ. Тормозить этот терминал может, если у него одновременно прием идет. У вас "эхо" случайно не идет на вход COM-порта?
Цитата(Alt.F4 @ Oct 21 2010, 00:48) *
з.ы. странно, почему снизу за надписью TX: постоянно ноль. Как отслеживать на каком этапе передача...
RX: же отображается нормально...
Это статистика самого терминала. Учет переданных байт из файла там не ведется. Только сообщение в статусе - столько-то байт передано.
Цитата(Alt.F4 @ Oct 21 2010, 00:48) *
В общем ждал ждал пока передастся, но так и не дождался. Его по ходу с такими большими файлами переклинивает... =(
Попробовал отправить файл 250кБ (258 690 байт) на скорости 115200 - порядка 30 сек получается. Расчетное время 258690*10/115200=22,46с. Следует учитывать, что поток в COM-порт не совсем непрерывный. ОС может его прерывать, если другие задачи имеются/выполняются. Ограничение на размер принимаемого/передаваемого файла у Br@y's Terminal имеется, но до 0,5МБайт он передает без особых проблем по-моему.
Alt.F4
Попробовал еще через RS232pro (в поиске нашел), но она отправила только 10-ую часть файла!!! (замыкал TXD и RXD)
Цитата
У вас "эхо" случайно не идет на вход COM-порта?
в настройках программы не нашел такой галки...
Цитата
Попробовал отправить файл 250кБ (258 690 байт) на скорости 115200 - порядка 30 сек получается.
А как у Вас определяется, что файл передан?
Мои действия: запускаю терминал, если нога RXD висит в воздухе, то начинается бесконечный приме помех, сажу на МК, выбираю файл для отправки, жму открыть и... все, ничего не происходит не через 30сек, не через 5мин...
rezident
Цитата(Alt.F4 @ Oct 21 2010, 02:38) *
в настройках программы не нашел такой галки...
Ее там и нет. Я просто предположил, что у вас эхо принимается.
Цитата(Alt.F4 @ Oct 21 2010, 02:38) *
А как у Вас определяется, что файл передан?
Сообщение в статусной строке. Send file: 1412 byte send.
Цитата(Alt.F4 @ Oct 21 2010, 02:38) *
Мои действия: запускаю терминал, если нога RXD висит в воздухе, то начинается бесконечный приме помех,
Вот из-за этого и тормозит терминал.
Цитата(Alt.F4 @ Oct 21 2010, 02:38) *
сажу на МК, выбираю файл для отправки, жму открыть и... все, ничего не происходит не через 30сек, не через 5мин...
Запустите какой-нибудь сниффер или осциллографом гляньте сигнал на TXD COM-порта. Я бы конечно мог два порта друг на друга посадить или на второй комп принимать, но мне на сегодня уже лень другие эксперименты ставить smile.gif
Alt.F4
Цитата
Сообщение в статусной строке. Send file: 1412 byte send.
Опа, у меня такого не появляется.
Осцилографа нету =(. Сниффер - это типа монитора следящего за состоянием порта?
з.ы. у меня вообще странно себя ведет программа после выбора файла, закрываться не хочет, приходиться через диспетчер задач.
Делаю так: выбираю, жму открыть, и снизу ничего не появляется!
Нажмите для просмотра прикрепленного файла
Нажмите для просмотра прикрепленного файла
rezident
Гм. Это вы по моей ссылке скачали? cranky.gif Какая-то больно древняя версия. Попробуйте эту или погуглите более свежую. На номер версии 1.9b можно не смотреть. Смотрите на дату обновления.

Вот тут версия этого года имеется. 2010-06-30.
P.S. попробовал новую версию. Отличий не обнаружилось. Тот же самый файл 250кБ передает за те же самые 29 секунд.
Alt.F4
Тот, который Вы прикрепили, надпись Send*** писал сразу после выбора файла, тот который по ссылке (этого года) - написал через некоторое время.
Спасибо большое! Завтра буду пытаться записать в Data Flash.
rezident
Цитата(Alt.F4 @ Oct 21 2010, 03:58) *
Тот, который Вы прикрепили, надпись Send*** писал сразу после выбора файла,
А какая у вас операционка? Похоже, что она как-то слишком уж буферизирует потоки COM-порта.
Цитата(Alt.F4 @ Oct 21 2010, 03:58) *
Спасибо большое! Завтра буду пытаться записать в Data Flash.
Да не за что вроде. Программа-то терминал не моя ведь smile.gif Успехов!
Alt.F4
Цитата
А какая у вас операционка?
Win XP sp2
Цитата
Да не за что вроде. Программа-то терминал не моя ведь smile.gif Успехов!
Кроме программы, Вы очень многое делаете чтобы помочь людям, это заслуживает огромного уважения!
rezident
Судя по новой теме, терминал вам пока не сильно помог, так?
Alt.F4
Я, можно сказать, гонюсь за двумя зайцами, одновременно решаю вопрос передачи больших фалов и изучаю работу с DataFlash.
Ваш ответ в той теме отбросил все вопросы! Спасибо!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.