[Mono-list] Mono, Foxboard G20, /dev/ttys2 no receive ?
Robert Jordan
robertj at gmx.net
Wed Feb 22 14:43:14 UTC 2012
On 22.02.2012 14:59, salorob wrote:
> Hi Robert,
>
> Thankyou for your reply.
>
> The code that i simulate in Mono is this one. Simple Send And Receive:
>
This?
#define TIOCSRS485 0x542F
...
// Set RS485 mode:
rs485conf.flags |= SER_RS485_ENABLED;
if (ioctl (fd, TIOCSRS485, &rs485conf) < 0) {
printf("ioctl error\n");
}
You need to p/invoke ioctl from libc[1] and create a p/invoke
declaration for "struct serial_rs485"[1].
To be able to use ioctl, you must get the file handle of the
serial port. Unfortunately, the SerialPort[3] class does not
expose it, so you'd have to do it via reflection[2].
You must get the value of the field "fd"[4] from the
field "stream"[3] of the class SerialPort[3].
Robert
[1] http://www.mono-project.com/Interop_with_Native_Libraries
[2] http://msdn.microsoft.com/en-us/library/f7ykdhsy%28v=vs.71%29.aspx
[3]
https://github.com/mono/mono/blob/master/mcs/class/System/System.IO.Ports/SerialPort.cs
[4]
https://github.com/mono/mono/blob/master/mcs/class/System/System.IO.Ports/SerialPortStream.cs
More information about the Mono-list
mailing list