From few years I used FW 2.3 version of FW. I've used RS232 to print barcodes on serial printers.
Now when I change my environment to xHarbour and install FWH 7.12 I found that my code doesn't work correctly.
I've started do debug my program and I've found that SetCommState(cDcb)
hangs up my program. Has somebody an idea how to use serial ports with xHarbour?
Function COM_OPEN(xPORT)
Local pNAME:=IIF(xPORT=1,"COM1","COM2")
Local nError,cDCB
Local xRESZTA:=.T.
hPORT:= OpenComm( pNAME, 2048, 2048 )
If ! BuildCommDcb( pNAME+cSPEED, @cDcb )
nError = GetCommError( hPORT )
MsgInfo( "BuildCommDcb Error: " + Str( nError ) )
xRESZTA:=.F.
EndIf
If ! SetCommState( cDcb )
// there programs brakes //
nError = GetCommError( hPORT )
MsgInfo( "SetCommState Error: " + Str( nError ) )
xRESZTA:=.F.
EndIf
....
Return
Regards
Robert
RS232
- Robert Frank
- Posts: 95
- Joined: Fri Nov 23, 2007 4:43 am
- Location: Gdynia-Poland
- Contact:
RS232
You might want to post that on one of the xHarbour newsgroups.
Tim Stone
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
http://www.MasterLinkSoftware.com
timstone@masterlinksoftware.com
Using: FWH 19.06 with Harbour 3.2.0 / Microsoft Visual Studio Community 2019
- Robert Frank
- Posts: 95
- Joined: Fri Nov 23, 2007 4:43 am
- Location: Gdynia-Poland
- Contact:
Re: RS232
It works againTimStone wrote:You might want to post that on one of the xHarbour newsgroups.
I've found my mistake, there are small differences between clipper and harbour in using SetCommState()
correct line is:
If ! SetCommState( hPORT, cDcb )
I'm going to test RS communication with laboratory analysers now.
Robert
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Robert Frank
- Posts: 95
- Joined: Fri Nov 23, 2007 4:43 am
- Location: Gdynia-Poland
- Contact: