[Lazarus] Using Lazarus on Embedded Linux?
Bo Berglund
bo.berglund at gmail.com
Tue Sep 28 07:31:40 CEST 2010
>From: Paul Breneman [mailto:list2010 at BrenemanLabs.com]
>Sent: Tuesday, September 28, 2010 1:24 AM
>Hi Michael,
>
>> ... I intend to port Async Pro to Lazarus/Linux/ARM, once we
>> start working on the project (which we are raving about since years, so
>> don't hold your breath ;) )
>
>I've spent many years with AsyncPro (even 5 years as an APro TPX person)
>and I would not recommend porting APro. It has too much legacy code in
>too many layers and is full of Win32 oddities. But maybe you've dug
>into this a bit and see a way to port just the higher layers?
>
>I do have threaded code using SynaSer on Linux that is almost identical
>to threaded code on Win32 that is compatible with APro and SynaSer so I
>can switch between the two libraries on Windows. Of course that is just
>for basic serial port stuff. If you need protocols or other APro
>features that makes things more difficult.
>
Well, I am not really fond of AsyncPro because of the heaviness of the
code but I have not found a good Delphi package alternative, which is
either stable or maintained so we are using it still with D7.
We only use the minimum functionality of AP though:
- The TApdComPort object
- Properties for setting port, baud, bits, parity, handshake etc
- Properties for handling the buffer size
- Methods/Events for sending and receiving byte data
- We also use the possibility to switch from serial to TCP/IP
But that is about it. We never ever used any of the other functionality
of AP like the different protocols and stuff. Just the simple port.
And that is what I would like to have also with FPC/Lazarus. I could even
live without the TCP/IP mode.
So if you have code to implement the simple serial comm system outlined
above I'd be very interested to try that out.
My immediate application calls for communicating with a data acquisition
device with a binary data transfer protocol, so I need all 256 byte codes
to pass transparently through to my application. There must be no
interception
based on data values. Example of packet structure:
<type><blocklength><data><crc>
All binary of course.
What do you think?
More information about the Lazarus
mailing list