Page 1 of 1

com2 ,problems with bit stop

Posted: 22 June 2009, 9:54 AM
by marcelo_bahia
I use the following configuration in Z24-P to transmit,com2 only tx pin11 8-p-2
(8 data bits, even parity, 2 stop bits at 115000.)
my problem is that no appear 2 stop bits y and alters the output bit
will have some problem with the progracion, which may be the error?
the z24 has a max232 connected, the images are a departure max232,view photo 8-p-1 (1 bit stop) and 8-p-2 (2 bit stop).

Code: Select all

Const txPin as Byte = 11
Const channel as Byte = 2 

Dim oq(1 to 40) as Byte

Dim b as Byte
Dim i as Byte
Dim Bstop as Byte

Sub Main() 
 Bstop=2
 b=75  'letter K in ascii 
   
  ' initialize the queues 
  Call OpenQueue(oq) 

  ' define the characteristics of the serial channel ,( channel 2,no Rx,only tx,8bitdata and 2bit parity even,bit stop) 
  Call DefineCom(2, 0,txPin, &H38,Bstop)
  
  ' open the serial channel 
  Call OpenCom(2, 115600, 0, oq) 
  
 do 
  'output port serie com2 micro  
  Call PutQueue(oq,b,1)
  Call PutQueue(oq,b,1)
 loop
[admin edit: added code tags]

Re: com2 ,problems with bit stop

Posted: 22 June 2009, 10:54 AM
by dkinzer
marcelo_bahia wrote:my problem is that no appear 2 stop bits
You have discovered a previously undetected problem that seems to have been introduced around v2.5.0 of the VM. You can work around the issue by specifying a larger value for the stopBits parameter to DefineCom(), for example:

Code: Select all

Call DefineCom(2, 0, 0, &H38, 3)
This works because the maximum number of stop bits on a hardware UART channel is two and, as the documentation states, any value above 1 will select two stop bits.

Posted: 23 June 2009, 4:58 AM
by marcelo_bahia
results

1)changing Call DefineCom(2, 0,0, &H38,3) ,for 2 stop bits as shown in photo 3 bit.jpg

2)changing Call DefineCom(2, 0,0, &H38,2) ,for 1 stop bits as shown in photo 2 bit.jpg

thank you Don