본문으로 바로가기
homeimage
  1. Home
  2. 컴퓨터/프로그래밍
  3. C언어 시리얼 통신 브레이크(break) 신호 전송 방법

C언어 시리얼 통신 브레이크(break) 신호 전송 방법

· 댓글 2 · 바다야크

C tcsendbreak() 시리얼 통신 break 신호 전송 함수

시리얼 통신에서 브레이크(break) 신호를 보내려면 tcsendbreak() 함수를 사용하면 됩니다. 상대 쪽에서 break 신호를 주었을 때 수신 버퍼에 0x00이 있어서 0x00을 보내면 break 신호가 전송되는 줄 아는 분이 계시더군요. 이미지나 동영상처럼 바이너리 파일을 전송할 경우 0x00이 있을 수 있는데, 그때마다 break 신호가 발생해서는 안 되겠지요.

  • 헤더 : termios.h
  • 형태:  int tcsendbreak(int fd, int duration)
  • 인수: int fd 시리얼 포트와 연결된 파일 디스크립트
    int duration 전송 시간
  • 반환: 0 == 성공, -1 == 실패 및 errno에 에러코드 대입

int duration  전송 시간은 0일 경우 0.25초에서 0.5초 이내로 0 값의 비트를 전송합니다. 0이 아닌 경우는 정의된 시간만큼 전송한다고 하는데, 자세한 내용은 찾지 못했습니다.

C tcsendbreak() 예제

#include <termios.h>

fd = open( dev_name, O_RDWR | O_NOCTTY );
       
       :
             
tcsendbreak( fd, 0);
SNS 공유하기
💬 댓글 2

이름을 저장합니다.

최근글
thumbnail 오늘 달 모양 관찰 웹사이트와 안드로이드 앱 thumbnail LG그램 숫자키패드 키 변경(키보드 리맵핑) thumbnail 11번가 아마존 해외직구 4TB 웨스턴디지털 외장 하드 디스크 thumbnail 모락 프로토 8포트 Type-C Dex USB 3.0 멀티 허브 장단점 thumbnail 유튜브 동영상 재생 위치 이동 꿀팁 thumbnail 구글 문서 쉽고 빠르게 작성 방법 서식복사 thumbnail LG 27인치 모니터 27UP850N vs. 27UP650 스펙 차이점 1 thumbnail 윈도우11 버추얼박스 USB 부팅 가상 디스크 만들기
이모티콘창 닫기
울음
안녕
감사해요
당황
피폐

이모티콘을 클릭하면 댓글창에 입력됩니다.