Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с COM портом [D7, 95/98, NT4, 2000, XP, 2003]


Andrnow ©   (2008-08-19 16:01:00) 

Привет J
Пытаюсь освоить программирование COM порта на Дельфи.
Уже освоил открытие/закрытие порта, изменение параметров в структуре DCB, а так же управление сигналами DTR и RTS через функцию «EscapeCommFunction».

Теперь возникла проблема передачи данных через приемопередатчик. Delphi ругается на функцию WriteFile(hPort,Buffer,b,b1,nil) – “Types of actual and formal var parameters must be identical”, несмотря на все мои усилия.

В общем задача сейчас самая простая – передать 1 байт информации по последовательному каналу. Объясните мою ошибку.

Исходники моей программы можно взять здесь (7Кб): http://andrnow.narod.ru/RS-232.rar

Только большая просьба ко всем отвечающим – не нужно приводить примеры из интернета объемом на 3 экрана с кучей проверок, переменных, и прочим ненужным. Я это все уже видел и ничего там не понял.


brother   (2008-08-20 04:42:00) [1]

имхо используй готовое, избавишься от многих граблей...
зы на примерах научишься и поймешь быстрее...


Германн   (2008-08-20 00:55:00) [2]


> Loginov Dmitry ©   (20.08.08 00:30) [4]


> Полезность такого разбирательства на столь низком уровне
> (имеется ввиду WriteFile и т.п.)

Хм. Я бы назвал сей уровень высоким, но я не телепат. :)
Но помню книгу Л.Дао. :)

А к полезным ссылкам я готов добавить книгу П.Агурова. Но только на мыло автора или тому, кто пожелает её прочитать.


Loginov Dmitry   (2008-08-20 00:30:00) [3]

> Пытаюсь освоить программирование COM порта на Дельфи.



> Delphi ругается на функцию WriteFile(hPort,Buffer,b,b1,nil)


Люди стараются, разрабатывают целые библиотеки для работы с СОМ-портами, упрощают все на нет. Может проще взять готовые наработки, а не парить себе мозги. Полезность такого разбирательства на столь низком уровне (имеется ввиду WriteFile и т.п.) вызывает сомнение (имхо конечно).

Полезные ссылки:
- http://sourceforge.net/projects/tpapro
- http://sourceforge.net/projects/comport/
- http://www.delphikingdom.com/asp/itemq.asp?mode=1&itemid=151


Сергей М.   (2008-08-19 16:35:00) [4]


> Объясните мою ошибку


> с кучей проверок


Кучу, может, и не надо, но одна уж точно нужна, хотя ты и ее не удосужился сделать - анализ результата, возвращаемого функциейWriteFile


Сергей М.   (2008-08-19 16:27:00) [5]


> несмотря на все мои усилия


Интересно, какие такие "усилия" ты прилагал, если ты джаже не удосужился взглянуть на прототип ф-ции WriteFile() ?

Там ведь черным по белому написано, что параметры b и b1 должны иметь тип DWORD , а ты вместо DWORD упорно тычешь Integer)


> видел и ничего там не понял


Смотрим в книгу - видим фигу ?)


oldman   (2008-08-19 16:03:00) [6]


> Объясните мою ошибку.
>
> Только большая просьба ко всем отвечающим – не нужно приводить
> примеры из интернета объемом на 3 экрана с кучей проверок,
>  переменных, и прочим ненужным. Я это все уже видел и ничего
> там не понял.


ищи в 17-й строке


Наверх

Титульная страница Поиск, карта сайта Написать письмо