2010-06-21 7 views
0

프로그래밍 플랫폼으로 C 언어와 Linux를 사용하고 있습니다. 직렬 포트 (/ dev/ttyS0) 설정에 문제가 있습니다. 내 작은 프로그램으로, 내 시리얼 포트를 사용 tcgetattr과를 설정하고 내 문제가 tcsetattr이직렬 포트에서 보낸 첫 번째 데이터를 검색 할 수 없습니다.

options.c_cflag |= B115200; 
options.c_cflag &= ~PARENB; 
options.c_cflag &= ~CSTOPB; 
options.c_cflag &= ~CSIZE; 
options.c_cflag &= ~CRTSCTS; 
options.c_cflag |= CS8; 
options.c_cflag |= (CLOCAL | CREAD); 
options.c_iflag &= ~(IXON | IXOFF | IXANY); 

, 내 응용 프로그램은 내가 보낸 첫 번째 데이터를하지 않습니다. 나는 어떤 가치를 놓쳤는가?

감사합니다.

+0

이 동작을 재현하는 최소한의 샘플을 제공 할 수 있습니까? 나는 이것이 다른 방법으로 해결 될 수 있는지 개인적으로 알지 못합니다. – INS

답변

0

앱이 가장 먼저 보내고있는 것이 가능합니까? 연결/설정에서 처음에는 쓰레기가 있고 올바르게 파싱되지 않았습니까?

초기화 직후에 시리얼을 없애거나 init 바로 다음에 CR/LF를 보내어 앱에 보내기 전에 문제가 해결되었는지 확인할 수 있습니다.

관련 문제