We are updating us system from digi Acceleport Xe to Acceleport Xp. we are using SCO Open Server.
i need information for remake our codes with this new card.
how to compile?
how to use handshaking?
me code need change?
what include need the new card?
i need some file .so?
do you can send me a code example and for compile?
i can compile a program with out install drivers using only some file like digi.h?
exist information in CD instalation?
exist informacion in files from instalation?
some examples: #include
int AbrirPuerto()
{
int id = open(“/dev/ttyh1a”, O_WRONLY|O_NOCTTY );
if (id <= 0)
perror(“open”);
return id;
}
we are controling the handshaking, like that:
int Modem;
cout <<"+RTS ";
ioctl(id,TIOCMGET,&Modem);
Modem |= TIOCM_RTS;
ioctl(id,TIOCMSET,&Modem);
I’m not sure whether your environment is SCO OS 5.x or 6.x, but for either OS the driver is available from our Support site. Handshaking aka flow control is needed if the hardware you’re plugging into the Digi serial port uses it, and the port settings will have to match how the serial device is setup. Otherwise things should work the same.
I suspect you probably have bought the wrong product for your application.
If you need to toggle RTS on/off in a short time period, like 1-10ms, you probably do NOT want the Accelport Xp.
You should probably get a non-intelligent product, like the Digi Neo product which basically gives you direct access to the UARTS, without having to go thru a firmware layer first.
BTW,
Our products do not support half-duplex mode, which is what it appears you are trying to “emulate” here.
Finally, the code to raise/lower RTS is pretty trivial,
but make SURE you do not have hardware flow control enabled. If you do, you CANNOT control the RTS pin.
We are using SCO OS 5.0.7
All day we are making tests. our problem is the next:
we have one program, open port only write and transmit, this is ok.
Another program open port only read, when begin your read thread, the one program be “freeze”.
We are using the pth library from gnu for threads for make the reads from ports.
We have two cars digi, We test all ports /dev/ttyhxx, with any port exist the problem.
We have a big question: we are using the file digi.h “v1.1.1.1 2003/06/09 16:01:50” from Acceleport Xe drivers, i guest we need the new file .h or library for new card Acceleport Xp, right?
if yes, do you can send us information for new .h file or new library for developments?
i used the Digi-specific stuff because digi.h have defines for handshaking and work correctly, we need to control pre & post transmisions times, and check state of DCD & CTS lines. With Port /dev/tty1a or any from mother board, we never can to control this lines like ports digi.
do you know how to do this with standard defines from system SCO? and work with port from mother card and digi ports correctly using the same defines?
do you can send some example code?
the file digi.h explain the next:
/************************************************************************
This module provides application access to special Digi
serial line enhancements which are not standard UNIX™ features.
************************************************************************/
and define the nexts lines: #if !defined(TIOCMODG)
#define TIOCMODG (‘d’<<8) | 250 /* get modem ctrl state / #define TIOCMODS (‘d’<<8) | 251 / set modem ctrl state */
rts line _| pre time Post time |
_____________
tx line _| tx data |
With port of motherboard and using the termio.h not worked.
With port of digi card and using the termio.h not worked
only work with digi port and digi.h.
but if you tell me that must work, maybe i have a error, i try again and will make more tests, but, if you can tell me or send me a example to control the line RTS, i will apreciate munch.
For example:
open port read & write, no modem ctrl, like terminal
down rts
sleep 5 seg.
up rts
sleep 2 seg.
write data
sleep 1 seg
sleep 5 seg
close port
I check this with rsr232 check tester with leds, conected over serial port.
in the example i use seconds for see the movement from lines, but in the practice is more fast, like 50 mseg of pre and 10 mseg of post for radios/9600 bauds.
I need the port open and rts line down for can recive data from another devices.