[Форум] [Помощь] [Поиск] [Выйти] |
Добро пожаловать, ![]() |
|
|
| ||
Нужно написать прогу, которая будет обмениватся данными с COM портом (байт читаем, байт пишем). Интересует, как организовать такой обмен на Delphi. Всем заранее спасибо ;) |
| ||
RTFM... И что за ос? А так могу мыльнуть сурсов по ним много. По молодости телу одному прогу писал(график выводила); Пример вот: source file name : ComPortUnit.rar original size : 2094 (3 kb) created on : 08 декабpя 01 09:26 encoded on : 08 декабpя 01 09:26 approximate encoded size : 4 kb number of sections : 1 lines per section : 340 section 1 of 1 of file COMPOR~1.RAR -=< uuencoder >=- begin 644 COMPOR~1.RAR M4F%R(1H'`,^0<P``#0````````#?5'0@@`Y`<``*4=```;EVXXT&EB2T= M-0`(````$-O;5!O<G15;FET+G!A<Z<8=/=0_3<B^W*/!).`MH`A@-XA'>? M[)/#P<Y)6L2B6N;S6)0E<WM^$9I2I;341$E9MMIH6-U/HZ>&INU,;HK2$ MT'&Y-^EE@>.7L]FES8O2_^+THL,E*20.[;-DV:Z4-$#/I*;@@Q`)M^. M=NQ<[+EF4:YN&SE`CR5-QWV7B3;-]:E)AR8KIOTOR:0<C3DZ)OQ[/'&; MCSCC?RF2N0>?!D5^SC$&<`L*)$^5C)U:^@5P_F'<L+Y,<Q5,^0W6Y&RN'= M-9YHB$`.7#2V(3-3'4DR=GE<WF`*DM7FD-G=)'K;7<PNR3B#GJ!,UMKXZW#G MY:#UI.DI/9A<<L/&-]`J(#V(@9#5(3O1HG&6]#<./%V3!#0M80^#]3YF*[^ MXLR6Q#4VE2SH_(9GB(QU1&&W81``(;*CG`=)@MCJ;X%Q-AS;WS8=-Z>5)2 M(%DR]A0*AJ04U9_B1]^K#XV*NZ_3G-:%R=B/E<]>=!T?8N(OHE.Y_N]QAQ MC.(%HB$V-D#EH<1@3INJI`L)NRE9`I(XNRCW=@O1Y<3B.==^II3'7B:5U M1G1B)F<I[_L;:D?9M#-#E):[(T!>U6FY>C=0LY+LOE5GC<M@W3Y%@KF]* MK?X&>WSD>W[0ER!AX*5T]6`ZB'47^'.(,XE<5(`)5WT8,;*L=3H?1GCL`*V MQ@&3*@TC]'8C246@6[6_FGH5K2?-%:?--$(6W<0(U2%]=26G&O.5G2!+6E8 M&7:K%M3J,<NAE3JP`BC;XIB1/+D(F_.5G7@0;I=-3LPAIZ8F4PX$ZUI%; M>Q=LE-3]&P0B['M`KC>Y%_O2).5Y3/KG3J)ASU4TN+%,.<%YVD4O?T5UAU% MO49WOE5I=4'IA1YW_&Y)L'EDL.E[Z_<T`-8?'`9^Q`E1BGPD#$6P)A8 MPZQL6:H<[^_TMKW6VAE/FC,E[1O@55GZ#.Z0'@7TY)C1J'W/C>)$1<[K>_ MLSKX+;CY-&FU_,0N8I]94,-C'0E0DE36PL:R>SPHG>23J5E6.G^$FH#B MF^&Q12LRP@(,A16=URVH'/(Q6>.BY&]I/<]1&F)<C3P*V6)ITXJP]H298S') M+MG_KV)#.#[^N:XVSD4S@25V_L]9C##`&S0@#U.),GMW11<^YC-N_#X+ M+/AK^1@>0$`?UQ9K7NUW#@1&]E.UH-R!)=,:.]`-/PJ^;G5H<T;(L+ZW3 M2M%G`D38B;?=ULRG[G'E`DH7-G[5F#W^Q-2=)R6/V<L&&SJYXOQ;#6S.<M. M:BC;LABG#42B3T7S:(03;:6P&@//(9K:)ZKI9P>&_4#'P18&Z62-R_0%SFK MB$?P]N/N'$3WGU:_RPH5@&[R5@Y>/6Q@H3&<?W'GO%E0V@^6VRLQD^N!F8K= MZ/?W:)&>KB4QY7,X5T##?'<77*KK,X&TA#TW&HZT)G0,1)66+SZQ$DI_JJ, MSC+@7#99-M5_740$N<)P@D@OXWL!9D/1/D4'Z;5<*@>`_X'[IO/1,? M[1IW;,@18`GAUK1>##4]C<K[R-ZM7N-AF;QOV]O)PU:7`:L24-QKYCLI`=2= M4R-6^QSS_&,L@$G,PRJRR]Y7)<;TL_1+K]==/'W*,PQQH94+KJJA&]YGI? M,44^ZA*M;,^A2Y:+5-=(J;J4XBP[3_*K#J]V?3<=Y<04)Y,%5/T^'J(^_L MC-BBHX^+<C<5W9BG`SJ/]RYU8OQE^]?9S5!6_M@-C=1`.Z1CM6CPI:<Z*`& M/E!3@=`-,`;7@D[LI0__V+MO61-U3W?T8U/+:GVU2#(9*#=!*FZ%%&ASNQ6, MBU]V41N.,JO`SG4E-,/E.>*HZPO[(NA[M;RO^GPCN0RH3*->['81WNG_ M_5*3^P0*(5RQ45Q8*.MV%=:^FW:<XHBXS[G;A[<*='*5.$JF7?#MDI+`7L M%GP?KKVE'PIM`D'0ZI7K5F`J_H%_MVZ;CSOT?37HH-`47E(TM_&>7$%1&AY M(H.+$9*[?S=`MTA'HIY1G?IIBQQV*/_OE#9DF$V4Y<-C.*8[P-YQ/]B,9 MJ7L$P?3+3ULYHR%74ETRH%&FX^3T7DF?9>C_F0[PAI>_YPH'#%4-?-=3*$ M!H(VR6%?O7_0&<7B$NA$VH96;Z77@'.L>J:MQ*A*TY9B;Q_D:!O35R(\8 M'!@QUV$S5LD@^J)&S1:P56N1Y_TX%P%P=R**ILG&17K?ED1V3AML50EK(/ ML%UL^Q?4('&HH*=TV$OJ(/GD1/X4U3H&[>YFL+PQTB]1E]P/W$&=E% M4M;3(1&8>EYL32MQM:7:4RRT;3$^4LI7@7[XB8EXX+TRAIJ-&+SX#RV3# M:-?KQ+R'^PX;I/]Y_ZB/B-2'O+/CA+$,>]1S%*#WRNDLVIR0$2PV/;)6#<R ME@CJ<%!!X$H\_M$7]:'3[3FW7D,+/DPR5][;%1LBR21S0/F8#<=:;X0S* M4DA[*3,QY2[^FMAQ3?=$DB5PHF46B(;(BP+)4-T.E_0+UXT]ZME^?.T[I:. M9P28!<:_S`'>/^42VYXBUTV,H56+X.U+I(A]?M>6SPU-^V<V/4!7J'':*SU ML<Y7Q6.%=-1`RC411[R,VAI%^:*?6CP2^AY?Z9U#RAYGN!_)?K7YXN682<$ 8PMZB,8639G,``+^(9_:I_]3$/7L`0`<` ` end |
| ||
Оффтоп: Точно, давайте устроим файловый архив на форуме в uue :) |
| ||
Обезательно!!! Я своп виндовый кину, как время появится... ;) |
| ||
Люди могут подумать что это текст программы и что работать с портами очень сложно |
| ||
Один из способов работы с COM-портом (или с LPT или с любым другим устройством) HANDLE hComPort = CreateFile(COM1, GENERIC_READ ! GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (hComPort != INVALID_HANDLE_VALUE) { DWORD BytesWritten = 0, BytesRead = 0; BYTE MyData[256]; DWORD HowManyBytesToRead = sizeof(MyData); if ( WriteFile(hComPort, MyData, sizeof(MyData), &BytesWritten, NULL) ) { // в порт записано BytesWritten байт данных из массива MyData } if ( ReadFile(hComPort, MyData, HowManyBytesToRead, &BytesRead, NULL) ) { // из порта прочитано BytesRead байт данных в массив MyData } } Если нyжно читать из порта COM2 или LPT1 то соответственно это и пишешь в функции CreateFile. А так ваще вопрос из серии RTFM :). http://msdn.microsoft.com/library/default.asp?url=/library/en-us/devio/base/communications_reference.asp P.S. Вопрос конечно был по делфи, но ее у меня под рукой не оказалось... имена функций там те же самые. Кстати работает это под любой Windows. |