[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [rtl] rt_com



Evgeni,

> i am writing a device driver for an eib (European Instalation 
> Bus) device. 
> It communicates with a serial port.  I wrote my own module 
> which I load with
> rt_com and communicate with the device (19200 8n1)- it sends 
> the computer a
> byte and the computer sends it back.  The problem is that I 
> want to make the
> response time of the serial device smaller.
> 
> see i connected an osciloscope to the serial port and 
> measured delay of 2.2
> miliSecs between the time the driver gets the byte and send 
> the answer.  I
> need to bring the time down to a bit less than 150 microSecs.

	I will not profess to fully understanding your complaint, but it
sounds like you are saying that you are receiving a single byte and that it
appears to take an inordinately long time.  If that is the case, you have
probably hit a fairly common problem with rt_com.

	The problem is that there are FIFOs on most modern UARTS.  rt_com,
by default, enables these FIFOs.  If the FIFOs are enabled, a receive
interrupt is not generated until either the FIFO fills, or a time-out has
occurred.  You probably want to disable the FIFO for your application, or
else reduce the time-out.  A quick browse of the rt_com code will show how
this is done (I do not remember off the top of my head).

Regards,

Steve