baud rate설정이 올바른지..
글쓴이: leolo / 작성시간: 수, 2003/07/23 - 9:57오전
지금 baud rate설정이 올바른지 테스트하고 있습니다.
이렇게 하면 결과가 13으로 나오던데요..
올바르게 된건지 모르겠습니다.
제가 보기에는 올바른거 같은데요.. 왜 이렇게 나오죠..
#include <stdio.h> #include <unistd.h> #include <termios.h> #include <fcntl.h> #include <errno.h> int main() { int fd; static long baudrate; struct termios tio; fd = open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NONBLOCK , 0644); if(fd < 0) { printf("Can't open device %s\n", "/dev/ttyS0"); return -1; } else { printf("Open %s Device, fd %d : \n", "/dev/ttyS0", fd); bzero(&tio, sizeof(tio)); baudrate = B9600; if((cfsetispeed(&tio, baudrate) < 0 || cfsetospeed(&tio, baudrate) < 0)){ /* baudrate set */ printf("Can't set baudrate\n"); close(fd); return -1; } else { if(tcsetattr(fd, TCSANOW, &tio) < 0){ /* termios set */ printf("Can't set Termios struct\n"); close(fd); return -1; } else { if(tcflush(fd, TCIOFLUSH) < 0){ close(fd); return -1; } } } } printf("%d\n", tio.c_cflag & B9600); return fd; }
Forums:
댓글 달기