[fpc-pascal] Question on programming serial communication.

Rainer Hantsch office at hantsch.co.at
Mon Feb 25 17:27:27 CET 2008


On Mon, 25 Feb 2008, Gene Buckle wrote:

| > Actually, this X00 driver was written for BBS systems with analog modems
| > around 1970-1980, namely for MAXIMUS and OPUS. This BBS programs were the
| > best
| > ones at their time as far as I can remember, of course, at that time there
| > was
| > no real Internet available to the public. ;-)
| >
| FOSSIL didn't appear on the scene until 1986-87. :)

Oh! I thought this was longer ago ... Though, it is still long ago. :-D


| I'm not sure how you'd go about performing interrupt driven serial I/O under
| Linux, but I can't imagine it's that difficult.
| 
| There is a BBS program called EleBBS that is written with FPC and works under
| Linux.  You might want to dig up a copy and see how he did the serial I/O
| routines for the BBS.

I guess you totally mis-understood my question, or I explained wrongly what I 
want.

1. I do NOT want to run a BBS. I want to port the control software of my 
   central heating (I developed, programmed and built the whole control-
   and regulation system (hardware and software) by myself in 1998. I use
   microcontrollers in my house (in room sensors, at the heater, ...) and 
   they get their commands from a central software, currently running on
   DOS and using the FOSSIL-driver for serial I/O.
   That is, what I wanted to explain to show a little bit of the back-
   ground.

2. I want to port the central software to Linux because this allows me to 
   easily control it from my office then, while this is problematic with 
   DOS, because it does not really talk TCP/IP, is not multitasking, and
   also doesn't support telnet, so I would have much more work when I 
   want to proceed with DOS. No, such things should be done by the opera-
   ting system, and here is Linux really perfect. 


3. I will prefer to simply open a /dev/ttyXX from my central software and
   talk to my controllers then. If this is interrupt driven or not, I do
   not really (want to) care about.
   I expect that an Operating System like Linux will be able to give me
   that functionality and does all this low level stuff by itself?

   I only want to use sme kind of API, Class, Object or set of procedures
   which allows me similar things as were possible with the FOSSIL 
   driver:
   - Buffered I/O
   - Flow Control as I need (RTS/CTS, XON/XOFF, Both, None)
   - Direct Control of control lines like DTR, ...
   - Possibilities for monitoring fill level of buffers, to force
     them to be erased (made empty), ...


     
Actually, I only asked for point 3, nothing else, and if tSerial of FreePascal 
is able to give me that on LINUX. I never will touch Windows (because I want 
to make my life easier, not harder), nor do I want to continue with DOS (see 
points 1+2 of above). ;-)


Hope this clears a bit what I actually want.

mfg

  Ing. Rainer Hantsch



More information about the fpc-pascal mailing list