Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

СОМ порт   Найти похожие ветки 

 
Bulanov ©   (2004-03-26 00:46) [0]

Мужики подскажите кто знает.
Некая программа отправляет некие данные в COM-порт.
В свою очеред я пытаюсь написать такую же программку.
Отсканив как эта программа программирует COM-порт, я увидел следующую строку:

IOCTL_SERIAL_SET_QUEUE_SIZE: InSize: 8192, OutSize: 8192

Все остальное для работы с COM-портом я сделал также как в той программе используя Async32, но блин как мне задать вот эти два параметра (InSize и OutSize) ума не приложу.


 
Defunct ©   (2004-03-26 00:56) [1]

А зачем вам эти параметры? Это же тривиальный объем буфера приема/передачи, который на COM порт никак не влияет. Следитете чтобы другие параметры были выставлены точно, а имеено:
- скорость обмена
- число стопов
- число бит в байте

и т.п.


 
GanibalLector ©   (2004-03-26 02:02) [2]

Ответ на твой вопрос:
BOOL SetupComm(

   HANDLE hFile, // handle of communications device  
   DWORD dwInQueue, // size of input buffer
   DWORD dwOutQueue // size of output buffer
  );


 
GanibalLector ©   (2004-03-26 02:11) [3]

Async32-параша!!! WinApi - рулит!!!


 
Bulanov ©   (2004-03-26 02:18) [4]

Вот как хорошо-то спасибо большое всем!
Можно еще вопросик?
Ниже приведены два скана порта:

1. Не моей программы:

IRP_MJ_CREATE   Serial0 SUCCESS Options: Open  
IOCTL_SERIAL_SET_TIMEOUTS Serial0 SUCCESS RI:-1 RM:0 RC:0 WM:0 WC:5000
IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS  
IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS  
IOCTL_SERIAL_GET_CHARS  Serial0 SUCCESS  
IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS  
IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS  
IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS  
IOCTL_SERIAL_GET_CHARS  Serial0 SUCCESS  
IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS  
IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
IOCTL_SERIAL_CLR_RTS  Serial0 SUCCESS  
IOCTL_SERIAL_CLR_DTR  Serial0 SUCCESS  
IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
IOCTL_SERIAL_SET_CHAR  Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:41 XON:0 XOFF:0
IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:0 XonLimit:2048 XoffLimit:512
IOCTL_SERIAL_SET_QUEUE_SIZE Serial0 SUCCESS InSize: 8192 OutSize: 8192
IRP_MJ_WRITE   Serial0 SUCCESS Length 1: 41  
IRP_MJ_CLEANUP   Serial0 SUCCESS  
IRP_MJ_CLOSE   Serial0 SUCCESS

2. Моей программы:

IRP_MJ_CREATE   Serial0 SUCCESS Options: Open  
IOCTL_SERIAL_SET_TIMEOUTS Serial0 SUCCESS RI:-1 RM:0 RC:0 WM:0 WC:5000
IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS  
IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS  
IOCTL_SERIAL_GET_CHARS  Serial0 SUCCESS  
IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS  
IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS  
IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS  
IOCTL_SERIAL_GET_CHARS  Serial0 SUCCESS  
IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS  
IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
IOCTL_SERIAL_CLR_RTS  Serial0 SUCCESS  
IOCTL_SERIAL_CLR_DTR  Serial0 SUCCESS  
IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
IOCTL_SERIAL_SET_CHAR  Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:41 XON:0 XOFF:0
IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:0 XonLimit:2048 XoffLimit:512
IOCTL_SERIAL_SET_QUEUE_SIZE Serial0 SUCCESS InSize: 8192 OutSize: 8192
IRP_MJ_WRITE   Serial0 SUCCESS Length 1: 41
IOCTL_SERIAL_WAIT_ON_MASK Serial0 INVALID PARAMETER  
IRP_MJ_CLEANUP   Serial0 SUCCESS  
IRP_MJ_CLOSE   Serial0 SUCCESS

Вот 3 строчка снизу (INVALID PARAMETER) какая-то фигня, я вроде никаких масок не задаю, иногда таких строче бывает две или три друг за другом.

Что сделать.
Заранее благодарен.


 
Bulanov ©   (2004-03-26 02:20) [5]


> GanibalLector

Я это понял, может из-за моего незнания правда, перешел на API, так хоть как0то с Вашей помощью, но я хоть понимаю что делаю =-)))))


 
Bulanov ©   (2004-03-26 10:19) [6]

Тема закрыта. Всем спасибо, разобрался.



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.031 c
14-1082003944
WondeRu
2004-04-15 08:39
2004.04.11
Кредит на образование!Что? Где? Почем?


3-1081584601
Алексей (Гость)
2004-04-10 12:10
2004.04.11
Как обратиться из запроса к значению MaskEdit?


4-1075411194
pirat
2004-01-30 00:19
2004.04.11
как поставить TrackMouseEvent ?


3-1079461757
ginger
2004-03-16 21:29
2004.04.11
Quick Report для базы Unicode


14-1082051532
pepers
2004-04-15 21:52
2004.04.11
Разработка приложения