Com Write ---> 55h

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Гость

Сообщение Гость »

Добрый день!!!

Следующая ситуация
Нужно писать в последовательный порт (04h, 66h, 6ah)
Все вроде сделано
APICreateFile ( NameCstring, 0C0000000h, 0, 0, 3, 0, 0 )!........ok
GetCommState ( Handle, DCB) !.........ok

CB.BaudRate = 4800
DCB.Parity = 0
DCB.ByteSize = 8
DCB.StopBits = 1

SetCommState ( Handle, DCB)!.....ok
PurgeComm( Handle, 8 )!...ok
PurgeComm( Handle, 4 )!...ok

SetCommTimeouts( Handle, St )!.....ok

Начинаю делать WriteFile( Handle, buffer, bytes, Written, 0 )
!--------------------------------------------------------------
Описана выше так -> WriteFile( ulong hFile, *cstring buffer, ulong
nNumberOfButesToWrite, *ulong lpNumberOfBytesWritten, ulong lpOverlapped),
short, raw, pascal
!--------------------------------------------------------------

Пишет, но не то, что надо.
Пробовал делать на модеме в hex: 41h 54h 41h 0Dh (ATA) !(Modem 100% work)
то дает Error либо ничего
Думаю что дело в (*cstring buffer )
Пробовал (*Group buffer)
По тексту
Main procedure
Wr group
b byte
.
Тоже ерунда получается

Может, кто что знает please help!!!

Leonov S.V. lion@bryansk.menatepspb.com

(Добавление)

1. почему вы уверены, что пишет не то, что надо? устройство на порту умеет делать эхо принимаемым данным?
2. можно взглянуть на код от инициализации до вывода в порт?
3. а заодно и на прототипы функций.

на кларионовских сайтах есть [ссылки на] статьи по програнированию COM портов и куски программ.

--
Best regards,
Maxim Yemelyanov,
Enigma Soft Company
phone: +380 572 177977
WEB: http://enigmasoft.com.ua
e-mail: clalist@enigmasoft.com.ua
ICQ: 12253836

(Добавление)

Единственный неочевидный ньюанс у меня был, что _перед_ присваиванием значения переменной buffer ее на всю длину нужно было забить нулями.
Ну и с таймаутами поиграться.
см. пример программы на ClarionLife

С уважением, Андрей Истомин

Написал: ClaList(2)
Ответить