cfsetispeed()
QNX SDP8.0C Library ReferenceAPIDeveloper
Set the input baud rate in a termios structure
Synopsis:
#include <termios.h>
int cfsetispeed( struct termios* termios_p,
speed_t speed );
Arguments:
- termios_p
- A pointer to a termios structure that describes the terminal's control attributes.
- speed
- The new speed. Valid values for speed are defined in <termios.h>.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The cfsetispeed() function sets the input baud rate within the termios structure pointed to by termios_p to be speed.
You can get a valid termios control structure for an opened device by calling tcgetattr().
Note:
- The new baud rate isn't effective until you call tcsetattr() with this modified termios structure.
- Attempts to set baud rates to values that aren't supported by the hardware are ignored, and cause tcsetattr() to return an error, but cfsetispeed() doesn't indicate an error.
- Attempts to set input baud rates to a value that's different from the output baud rate, when the hardware doesn't support split baud rates, cause the input baud rate to be ignored, but no error is generated.
Returns:
- 0
- Success.
- -1
- An error occurred (errno is set).
Errors:
- EINVAL
- One of the arguments is invalid.
- ENOTTY
- This function isn't supported by the system.
Examples:
#include <termios.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
int main( void )
{
int fd;
struct termios termios_p;
speed_t speed;
fd = open( "/dev/ser1", O_RDWR );
tcgetattr( fd, &termios_p);
/*
* Set input baud rate
*/
speed = 9600;
cfsetispeed( &termios_p, speed );
tcsetattr( fd, TCSADRAIN, &termios_p);
close( fd );
return EXIT_SUCCESS;
}
Classification:
Safety: | |
---|---|
Cancellation point | No |
Signal handler | Yes |
Thread | Yes |
Page updated: