MicroCHIP.RU
Главная Документация Отладочные средства Справочник Поиск Ссылки
 Новости   Конференция   Контакты 
 

RS-232 vs Delphi

 Нoвaя темa  |  Наверх  |  Перейти к теме  |  Поиск  |  Правила  |  Вход 

ВНИМАНИЕ!
Вы просматриваете архив форума.

Этот форум работает только в режиме просмотра и поиска.

Действующий форум переведен на новый движок и
находится по адресу www.microchip.su

 RS-232 vs Delphi
Автор: JungleNinja ()
Дата:   22/04/2004 12:33

Приветствую Уважаемые!
Тема доволе наболевшая, к ней наверно после меня вернуться еще не раз но хочу поведать о своей
проблеме.
Реализация работы с RS-232 понятна. На практике были написаны программы для работы с портами на
ASM 8086, 8051 на PASCAL. Читал примеры на c++ под дос, но паскаль мне ближе. Под досом проблем
нет, хочеш работаешь напрямую с портами, хочешь с прерываниями. Тут мы останавливаться не будем.
Далее появляеться проблема переноса программного обеспечения под WINDOWS XP. Именно XP по
причине своей "NT совместимости". Под 98 все просто, можно продолжать работать с портами а вот
XP заставляет перейти на API. Не спорю это самый простой вариант (в отличии от написания ГУРУ
собственного драйвера или латки под XP на открытие дыры для работы напрямую с портами).
Просмотрел исходники найденные в интернете на сайте http://www.kobira.co.jp/sakura/d_net_com.htm
Перечень их приводить не буду.
Основной вопрос вот в чем.
Пользовался собственными разработками, чужими библиотеками проблемы таковы :
1. Почему в WINDOWS не работает нормально флушбуфф. Конкретно после посылки байта индикатор
устройства подключенного напрямую к RS-232 засвечиваеться через пару секунд.
2. Почему при изменении скорости работы порта, очищаеться буфер передачи.
3. Каким образом правильно организовать прием данных. Понимаю что лучший способ поток. но
необходима постоянная реакция программы на БАЙТ информации.

Лирика. Программа для диагностики авто. Необходимо постоянный, четкий обмен, без задержек и
пауз. Программа меняет скорость на лету (запрос на соединение на одной скорости, прием
информации на другой). Всех кому интересна данная тема, буду рад пообщаться почтой.
Цель написание библиотеки, заточеную под 10 функций (в отличии от всех тех библиотек, которые
после посылки передают #13#10 и т.д.)
С Уважением, Виталий.


 
 См. ссылку (+)
Автор: Ecole ()
Дата:   22/04/2004 14:09

http://www.rs232.ru/doc002.html

Это лучшая статья по программированию RS232 под Windows из тех, которые я встречал.

Пункт 3: ИМХО нормально реализовать без написания драйвера невозможно.


 
 На том же www.rs232.ru есть
Автор: Troll ()
Дата:   22/04/2004 14:54

несколько VCL под Дельфи. Особенно рекомендую TComm. И по сайту поброди там
интересные вещи встречаются...


 
 мнения разработчиков
Автор: JungleNinja ()
Дата:   22/04/2004 17:01

Спасибо ребята, накачал инфы с rs232 буду изучать.
Интересно услышать мнения тех ребят которые сами писали библиотеки.


 
 Re: мнения разработчиков
Автор: Ecole ()
Дата:   22/04/2004 17:59

>...мнения тех ребят которые сами писали библиотеки

В смысле тебе нужно на Дельфи? Или на Пике?

ИМХО вообще никаких библиотек (ни своих ни тем более чужих и уж тем более
компонентов) для работы с портами использовать не нужно.
Чужое (если оно не имеет исходников) всегда будет работать не так, как хочется. Да
и работа с СОМ-портом довольно простая, т.е. оформлять это в библиотеку как-то не
вижу смысла.


 
 Re:Пользуюсь библиотекой Ридико Леонида Ивановича(+)
Автор: oll ()
Дата:   22/04/2004 20:20

на конференции Телесистем http://www.telesys.ru/wwwboards/mcontrol/index.shtml
бывает такой Человек Ридико Леонид Иванович. Пользуюсь его библиотекой comapi32.dll - пользова
ться довольно просто - проблем пока не возникало.
Его почта wubblick@yahoo.com. Библиотеку взял из его проекта - там же на Телесистемах (не пом
ню какой).


 
 разъяснения
Автор: JungleNinja ()
Дата:   23/04/2004 10:36

2 Ecole : Да необходима библиотека для DELPHI. Есть с 10-к различных библиотек, но они все
заточены под "мопед" как следстчие реальна работа с буффером. А вот чтоб был быстрый доступ к
портам не видел пока таких реализаций. По поводу библиотеки, если ты пишешь 10 разных проектов
(мелких) в которых используеться работа с портами, то надо все сырцы за собой тягать. Вернее
будет использовать библиотеку.
2 oll : Спасибо будем искать, пробывать общаться.


 
 Re: разъяснения
Автор: Ecole ()
Дата:   23/04/2004 12:45

>Да необходима библиотека для DELPHI. Есть с 10-к различных библиотек, но они все
>заточены под "мопед" как следстчие реальна работа с буффером.

Что такое "мопед" не понял.

>А вот чтоб был быстрый доступ к портам не видел пока таких реализаций.

Читай статью Титова. Быстрее доступ ИМХО не получится.
Если тебе нужно реагировать реакцию еще быстрее на единственный байт, без написания
драйвера вряд ли получится.
Для написания драйверов рекомендую DDK (хотя есть и другие варианты). В примерах
там есть драйвер COM-порта. Но драйвера сейчас пишутся как правило на С.
Теоретически можно конечно и на Delphi написать, но это будет через ж..у

>По поводу библиотеки, если ты пишешь 10 разных проектов
>(мелких) в которых используеться работа с портами, то надо все сырцы за собой
>тягать. Вернее будет использовать библиотеку.

Можно и не тягать. Оформить это в виде класса или нескольких функций, положить в
отдельный каталог и потом в каждом проекте этот класс или функции использовать.
В принципе можно и в библиотеку скомпилировать, но я лично смысла не вижу.