[ DBELJIC @ 13.10.2003. 00:58 ] @
Problem je ovakav:
Program napisan u Delfiju treba da komunicira preko rs232 protokola sa drugom aplikacijom. Da li mi neko zna kako?

Unapred Hvala.
[ silverglider @ 13.10.2003. 11:20 ] @
Cek, cek - to su dva racunara koji su povezani RS232 serijskim kablom, pa to hoces da koristis? Ili su u pitanju dve aplikacije na istoj masini, gde onda mozes da koristis uobicajene IPC metode za komunikaciju izmedju dve aplikacije - shared memory, OS signals/messages, socket TCP ili UDP komunikacija, itd?

Ili se ne razumemo ovde dobro, posto je RS232 samo vrsta serijskog porta, a ne i protokola -> protokoli koji se preko njega uglavnom koriste za komunikaciju su Xmodem, Zmodem, kermit, itd.
Ako gresim, neka me neko ispravi.
[ morlic @ 13.10.2003. 13:20 ] @
Citat:
silverglider:
Cek, cek - to su dva racunara koji su povezani RS232 serijskim kablom, pa to hoces da koristis? Ili su u pitanju dve aplikacije na istoj masini, gde onda mozes da koristis uobicajene IPC metode za komunikaciju izmedju dve aplikacije - shared memory, OS signals/messages, socket TCP ili UDP komunikacija, itd?

Ili se ne razumemo ovde dobro, posto je RS232 samo vrsta serijskog porta, a ne i protokola -> protokoli koji se preko njega uglavnom koriste za komunikaciju su Xmodem, Zmodem, kermit, itd.
Ako gresim, neka me neko ispravi.



Potpuno si u pravu. RS232 je samo standard za komunikaciju na hardverskom nivou. Da bi se i koristio potrebno je jos utvrditi neke stvari, a to su kontrola toka (hw, soft) i jos par parametara. Ima AsyncPro paket komponenti koji sluze bas za rad sa serijskim portom. Tu je i cPortLib od Dejana Crnile sa kojim se takodje moze raditi.
[ DBELJIC @ 13.10.2003. 14:01 ] @
Evo malo opsirnije...
Delphi program(SCADA) treba da komunicira sa PLC-om. Komunikacija se sastoji od medjusobnog slanja poruka izmedju njih. Ali to je vec drugi problem.... Prvi problem je povezivanje programa koji pisem u Delphi-ju i programa koji simulira rad PLC-a. Oba se nalaze na istoj masini. Znam da treba da iskoristim serijski kabal(i da ukrstim send/receive). U Delfiju imam komponentu RS232 ali ne znam kako da je iskoristim.
[ silverglider @ 14.10.2003. 12:15 ] @
Ja sam radio nesto slicno, samo pod Kylixom; maticni racunar komunicira sa malim embedded racunarom preko serijskog porta. Jednostavno - otvoris "fajl" na portu. Ukoliko imas samo jednu vrstu telegrama koje saljes onda moze da bude i tipska datoteka (file of myrecord), a ukoliko nije, definises samo kao genericki fajl. Definises u tom drugom slucaju telegrame da imaju isti header i da se prema njemu moze zakljuciti o kojem se tipu strukture radi (da znas nakon koliko bajtova mu je kraj, itd), eventualno byte (char) kao delimiter da znas gde pocinje jedan, a zavrsava drugi, itd -> standardne dalje tehnike iz komunikacija. I jednostavno pises i citas u fajl. Ista prica kao kada bi hteo da stampas iz DOS-a gde nema nikakvih drajver ni printer managera -> otvoris fajl sa imenom "PRN:" ili "LPT1:" i sve sta upises u njega ide na papir. Uz kylix i linux je malcice drugacije, jer treba da se tretira kao terminal, ali dodje mu na isto.

[ DBELJIC @ 16.10.2003. 23:40 ] @
A da li je moguce povezati dva programa na istoj masini pomocu serijskog kabla(RS232)? Cuo sam negde da se to radi tako sto se koristi serijski kabal sa ukrstenim transmit/receive i nesto sa Hyper terminalom... Ali ne znam kako se to radi....
[ silverglider @ 17.10.2003. 11:24 ] @
Ne znam zasto ne bi radio obican serijski, tzv. "laplink" kabl? Jedan kraj u com1, drugi u com2, startujes dve instance aplikacije, jedna koja radi sa jednim portom, a druga sa drugim. Ili to ne radi? Mislim, uz takav gotov kabl tvojoj aplikaciji je sasvim svejedno da li je taj com2 lokalnog ili udaljenog karaktera - raspored pinova i zica je isti u svakom slucaju.

[ morlic @ 17.10.2003. 21:54 ] @
To sto ti treba se zove loopback konektor. Proslo je dosta vremena od kada sam ga zadnji put koristio (>=9 god.), tako da se sada mogu setiti samo naziva :)
[ DBELJIC @ 18.10.2003. 01:51 ] @
A znas li gde ja to mogu videti kako izgleda? Trebalo bi jedan prijatelj da mi napravi takav kabal pa cisto da vidim...
[ Mihail Miklaševskij @ 20.10.2003. 14:45 ] @
Ja sam to resavao tako sto sam pozivao asembler

asm{
...
}

nevolja je sto sam to zaboravio tacno pa cu morati ponovo da postujem kada dodjem kuci sa posla (moram source da procitam)



[ silverglider @ 21.10.2003. 12:07 ] @
Pitanje je koliko win2k ili xp dozvoljavaju komande niskog nivoa koje su prolazile od dosa do win9x; ako si koristio in i out u tom asm bloku, onda to ne prolazi kod ovih novijih OS-ova.
[ morlic @ 22.10.2003. 20:57 ] @
Nemam kod sebe informaciju koju trazis, ali probacu da je iskopam. pod w2k i XP-om nema nista od in i out osim ako se ne odlucis da pises drajver (a ni to neces moci u Delphi-u).