Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
15 years ago

Altera UART Flow Control

Hi all,

Ive a question on uart hw flow control.

When set on sopc builder RTS/CTS are added to pins, but I don't understand if RTS is driven automatically by HW or must be driven by SW....

Looking at the altera_uart driver under nios2linux distro RTS can be moved by ioctl tiocmset but what I don't understand is why this pin goes low when i put the uart descriptor (/dev/ttyS3 for example) in read...

In linux console I do:

more /dev/ttyS3

and I see RTS pin going down and stay low till I read on the descriptor...

Someone can help me to understand how things work??

I need to control a modem with flow control enabled but, at the moment, I don't see any change on RTS/CTS pins and I don't understand why...

Thanks

Carlo

2 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Probably it is not when I read...but as soon as I open the descriptor (/dev/ttyS3) in RW mode...

    Any info about RTS/CTS management is welcome...
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    flow control is software based...rts has to be moved by ioctls and cts change hat to be managed in the driver....altera_uart doesn't do the last...you have to enable interrupt on cts change and manage it and you must inhibit tx when cts is not set too...

    RTS is set at the open (low in this case) and it is done by serial core by default for all uarts..

    Carlo