Odd problem with /tyCo/2 and /tyCo/3 transmit buffer - vxWorks 5.5 - VxWorks

This is a discussion on Odd problem with /tyCo/2 and /tyCo/3 transmit buffer - vxWorks 5.5 - VxWorks ; I have run into an issue with serial ports (COM3 and COM4) on an Ampro ReadyBoard 620. Our application uses non-standard IRQs for the serial ports and I believe that I have those issues sorted out as well as increasing ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: Odd problem with /tyCo/2 and /tyCo/3 transmit buffer - vxWorks 5.5

  1. Odd problem with /tyCo/2 and /tyCo/3 transmit buffer - vxWorks 5.5

    I have run into an issue with serial ports (COM3 and COM4) on an Ampro
    ReadyBoard 620. Our application uses non-standard IRQs for the serial
    ports and I believe that I have those issues sorted out as well as
    increasing the number of serial port devices from 2 to 4.

    The problem is that I can only do one successful write operation to
    COM3 (or COM4). Subsequent writes to those ports return a success
    status until the transmit buffer fills up. If I issue a sysOutByte()
    call to COM3, the transmit buffer empties but then goes back into a
    state where it simply buffers the data written to it. No combination
    of ioctl() calls seem to make any difference. It looks like once an
    initial write is done to COM3 (or COM4), the serial port driver in
    vxWorks 5.5 does not properly detect that the UART transmit buffer is
    empty and it just keeps queuing up data to be sent.

    This is only an issue with /tyCo/2 and /tyCo/3. The first two serial
    ports seem to behave correctly.

    Is anyone aware of issues with vxWorks 5.5 and handling more than two
    serial ports?

  2. Re: Odd problem with /tyCo/2 and /tyCo/3 transmit buffer - vxWorks5.5

    If you are using sysoutbyte() API, It doesn't call any driver function
    provided by vxWorks.
    In this way, you should check the linear register or some others to
    detect whethter the transmit buffer is empty.

    If you want to use driver function provided by vxWorks, you should use
    write API function.
    However, it is interrupt driven which is not fitable to your
    applicaion.

    On Jul 9, 3:12*am, johnha...@go.com wrote:
    > I have run into an issue with serial ports (COM3 and COM4) on an Ampro
    > ReadyBoard 620. Our application uses non-standard IRQs for the serial
    > ports and I believe that I have those issues sorted out as well as
    > increasing the number of serial port devices from 2 to 4.
    >
    > The problem is that I can only do one successful write operation to
    > COM3 (or COM4). Subsequent writes to those ports return a success
    > status until the transmit buffer fills up. If I issue a sysOutByte()
    > call to COM3, the transmit buffer empties but then goes back into a
    > state where it simply buffers the data written to it. No combination
    > of ioctl() calls seem to make any difference. It looks like once an
    > initial write is done to COM3 (or COM4), the serial port driver in
    > vxWorks 5.5 does not properly detect that the UART transmit buffer is
    > empty and it just keeps queuing up data to be sent.
    >
    > This is only an issue with /tyCo/2 and /tyCo/3. The first two serial
    > ports seem to behave correctly.
    >
    > Is anyone aware of issues with vxWorks 5.5 and handling more than two
    > serial ports?



+ Reply to Thread