Форум: "WinAPI";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];
ВнизКак работать с com портом??? Найти похожие ветки
← →
nick4u (2006-02-02 20:40) [0]Люди, HELP!
Мне надо автоматизировать внешний прибор через com порт. Есть демо-версия проги на Delphi, но она и есть демо.
Задача: на проиборе есть кнопки, управлять которыми можно через com порт, вопрос как? И как считывать полученную информацию?
Вот текст из приложения к прибору:
Протокол обмена прибора с компьютером
Прибор непрерывно находится в режиме передачи. Формат передаваемого кадра: 0xAA, Offset, Level, Frequency, Flags, Mode, Limit, ImParam, SecParam, SecParam_Value, ImParam_Value, onChange, CS, где;
0xAA – байт синхронизации;
Offset – младший и старший байт значения смещения;
Level – байт значения уровня измерительного сигнала;
Frequency – младший, старший байт значения частоты и байт множителя 10 частоты;
Flags – байт флагов:
4-й бит – автовыбор схемы замещения;
3-й бит – допуск;
2-й бит – параллельная/последовательная схема замещения;
1-й бит – автоматический режим переключения поддиапазонов;
Mode – режим работы прибора: 0х1 – режим измерения;
Limit – предел измерения;
ImParam – измеряемый параметр:
0х0 – Ср;
0х1 – Lp;
0x2 – Rp;
0x3 – Gp;
0x4 – Bp;
0x5 – |Y|;
0x6 – Q;
0x7 – Cs;
0x8 – Ls;
0x9 – Rs;
0xA – q;
0xB – Xs;
0xC – |Z|;
0xD – D;
0xE – I;
SecParam – дополнительный измеряемый параметр;
SecParam_Value – старший, средний, младший байты и байт множителя 10 дополнительного измеряемого параметра в дополнительном коде;
ImParam_Value – старший, средний, младший байты и байт множителя 10 измеряемого параметра в дополнительном коде;
OnChange – байт флагов редактирования:
3-й бит – изменение поддиапазона;
2-й бит – изменение частоты;
1-й бит – изменение смещения;
0-й бит – изменение уровня;
CS – контрольная сумма.
Прибор принимает однобайтные команды соответствующие нажатию клавиш управления:
0х0 – Меню;
0х1 – Вправо;
0х2 – Z/q;
0х3 – режим R;
0х4 – Вниз;
0х5 – Ввод;
0х6 – Вверх;
0х7 – режим L;
0х8 – калибровка;
0х9 – Влево;
0хА – режим I;
0хВ – режим С;
0хС – изменение смещения;
0хD – изменение частоты;
0xE – изменение уровня сигнала;
0xF – изменение поддиапазона.
← →
YurikGL © (2006-02-02 22:17) [1]Я бы посоветовал глянуть в сторону comm32...
← →
Desdechado © (2006-02-02 22:23) [2]Видел как-то модулек
DirectPort для Delphi 5 v2.1 29/01/2001. Сергей Агеев - SFlash.
sflash@flashmail.com
работоспособность не проверял
← →
Германн © (2006-02-03 01:54) [3]2 Desdechado © (02.02.06 22:23) [2]
Я тоже его не проверял. Но зачем тут DirectPort? Если я правильно понял его название. :(
Имхо по сабжу, автору надо читать ComPort. Я лично рекомендую использовать одну из компонент взятых с Torry. Если автор "хоть как-то подкован", то можно взять компонету из AsyncPro. Там правда есть ограничения на коммерческое использование, но исходники доступны всем!
← →
tesseract © (2006-02-04 11:59) [4]Мой совет - пиши через WinAPI или WinIo - тебе охота чужие баги разгребать?
ЗЫ: от всяких таких поделок отказался очень давно.
← →
Chaser © (2006-03-06 12:50) [5]http://www.delphisources.ru/pages/sources/system/2005_year/bcom_port.html
← →
yaral © (2006-03-07 08:19) [6]TurboPower Async Professional
Кладешь на форму 2 компонента, ApdComPord + ApdDataPacket, настраиваешь, и в событии OnPacket или OnStringPacket, твои данные, и никакого кода!
← →
yaral © (2006-03-07 08:22) [7]yaral © (07.03.06 08:19) [6]
Отправлять данные в порт PutBlock или PutChar или PutString, как больше нравиться
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c