реклама на сайте
подробности

 
 
> Связь с компом через UART
TarasG
сообщение May 6 2008, 14:36
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 72
Регистрация: 25-02-08
Пользователь №: 35 378



Этот вопрос меня интересует с двух сторон. Во-первых, как работать с UART? И второе: как работать с COM-портом из программы в Windows? По первому у меня вобщем-то есть определённая литература и даже примеры. Но вот второе вызывает затруднение. Точнее, даже не сама работа с портом, а мне не ясно, что будет происходить на выводах порта при записи в него байта. Скажем, я открыл порт через CreateFile и записываю в него последовательность, скажем из 32 байт, через WriteFile. Что при этом будет происходить на выводе TxD? Или мне можно этим не заморачиваться, т.к. об этом позаботится UART? И ещё одно: как считывать данные из МК? Ясно, что функцией ReadFile, но как определить момент, в который начнётся передача?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vetal
сообщение May 7 2008, 19:31
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



Цитата
А если из программы, то подскажите как

Оно выключено.
mDCB.fDtrControl = DTR_CONTROL_DISABLE;
mDCB.fRtsControl = RTS_CONTROL_DISABLE;

Правильно сказали - для начала надо на гипертерминале отладиться.
Go to the top of the page
 
+Quote Post
vvs157
сообщение May 7 2008, 20:24
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 526
Регистрация: 8-04-05
Пользователь №: 3 960



Цитата(vetal @ May 7 2008, 23:31) *
Правильно сказали - для начала надо на гипертерминале отладиться.
Для отладки гипертермил - это худшее, что есть. Возимите лучше терминальную программу от Moxa
http://www.moxa.com/drivers/pcommlite/win2k/PComm2K_V1.3.zip
(программа PComm Terminal Emulator)
С ней по крайне мере ясно, что происходит с CTS и DSR


Цитата(TarasG @ May 7 2008, 23:34) *
Гипертерминал тоже ничего не видит sad.gif Настройки выставляю как в МК (см. код выше), нажимаю на устройстве кнопку, после чего должна быть отправка данных в ПК. Но на терминале пусто sad.gif Аналогично МК не реагирует на комп...
Возмите осциллограф и посмотрите, что приходит на ногу RxD меги при прередачи с РС последовательности 5-рок. Аналогично посмотрите, что на ноге TxD меги при непрерывной передачи пятерок. По длительности импульсов можно определить без проблем скорость, и понять все ли в порядке.
Go to the top of the page
 
+Quote Post
TarasG
сообщение May 7 2008, 21:33
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 72
Регистрация: 25-02-08
Пользователь №: 35 378



Цитата(vvs157 @ May 7 2008, 23:24) *
Для отладки гипертермил - это худшее, что есть. Возимите лучше терминальную программу от Moxa
http://www.moxa.com/drivers/pcommlite/win2k/PComm2K_V1.3.zip
(программа PComm Terminal Emulator)
С ней по крайне мере ясно, что происходит с CTS и DSR

Аналогично sad.gif Передачи нет ни в одном направлении sad.gif
Цитата(vvs157 @ May 7 2008, 23:24) *
Возмите осциллограф и посмотрите, что приходит на ногу RxD меги при прередачи с РС последовательности 5-рок. Аналогично посмотрите, что на ноге TxD меги при непрерывной передачи пятерок. По длительности импульсов можно определить без проблем скорость, и понять все ли в порядке.

Завтра попробую. А 5-ки вы имеете ввиду 0х55?

Прошу прощения, проблема решилась. Глупая была ошибка, хоть и не совсем по мое вине. Распайку микросхемы ST232 я взял из журнала, а там оказались перепутаны TxD и RxD smile.gif Вобщем, в меня приёмник соединялись с приёмником, а передатчик с передатчиком. А при соединении самого с собой всё работало. Я это 2 раза проверил (распайку), но опять же с журналом.
А когда стал осцилографом, то заметил, что при подаче сигналов сразу в двух направлениях, на одной ноге ничего непроисходит, а на другой появляются бессмысленные импульсы, похожие на смесь двух сигналов.
Сейчас всё нормально работает на скоростях до 57600, чего более чем достаточно. Всем спасибо за помощь, ещё раз извините smile.gif

Сообщение отредактировал TarasG - May 7 2008, 20:39
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- TarasG   Связь с компом через UART   May 6 2008, 14:36
- - Kuzmi4   Цитата(TarasG @ May 6 2008, 17:36) Этот в...   May 6 2008, 14:57
- - kolobok0   Цитата(TarasG @ May 6 2008, 18:36) ... Чт...   May 6 2008, 15:42
- - TarasG   Попробовал что-то сделать. При соединениее "в...   May 7 2008, 17:57
- - vetal   Отключите на ПК управление потоком.   May 7 2008, 18:04
|- - TarasG   Цитата(vetal @ May 7 2008, 21:04) Отключи...   May 7 2008, 18:17
|- - AHTOXA   Свяжитесь для начала не со своей программой, а с г...   May 7 2008, 18:57
|- - Злодей   Вот с картинками http://www.pcports.ru/   May 8 2008, 09:51
- - TarasG   Гипертерминал тоже ничего не видит Настройки выст...   May 7 2008, 19:34
- - 777777   Цитата(TarasG @ May 6 2008, 18:36) И втор...   May 8 2008, 09:56
|- - TarasG   Цитата(777777 @ May 8 2008, 12:56) Работа...   May 8 2008, 10:49
|- - 777777   Цитата(TarasG @ May 8 2008, 14:49) <.....   May 8 2008, 16:29
|- - TarasG   Цитата(777777 @ May 8 2008, 19:29) А вот ...   May 8 2008, 18:12
- - Kuzmi4   2 TarasG - раскопал дома богодельню. В приложеном...   May 8 2008, 10:30


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 07:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01373 секунд с 7
ELECTRONIX ©2004-2016