시리얼 통신 패킷 예제

시리얼 통신 패킷 예제
1 Agosto, 2019 fabio

전송되는 데이터의 각 블록(일반적으로 바이트)은 실제로 패킷 또는 비트 프레임으로 전송됩니다. 프레임은 데이터에 동기화 및 패리티 비트를 더하여 생성됩니다. 올바르게 작동하는 통신 체계를 설계하는 것은 매우 어렵습니다. 헤더에는 모든 라우터에서 사용하는 대상 주소 정보가 들어 있으며, 종이 봉투에는 우편물을 운반하는 우편 작업자가 사용하는 대상 주소가 있는 것처럼 전체 패킷을 올바른 대상 주소로 보내는 스위치가 포함되어 있습니다. 올바른 목적지 주소를 지정합니다. 대부분의 프로토콜은 대부분의 종이 메일 봉투와 마찬가지로 소스 주소와 전송 관련 정보의 몇 가지 다른 비트를 포함하는 헤더를 사용합니다. 패킷 번호는 삶을 더 쉽게 만듭니다. 전송 된 패킷은 숫자를 전달, 응답은 “응답”이라는 플래그와 같은 번호를 수행한다. 즉, 도착하지 않은 패킷(동기화 손상된 말)은 보낸 사람이 쉽게 감지하고 느린 링크가 있는 전이중 모드에서 첫 번째 응답을 받기 전에 두 개의 명령을 보낼 수 있습니다. 또한 프로토콜 분석을 더 쉽게 만듭니다(제3자에서 기본 프로토콜에 대한 지식 없이 수신된 패킷을 이해할 수 있음) 많은 패킷을 받는 맥락에서 해당 바이너리 패킷을 다시 살펴보겠습니다.

우리의 프로토콜은 패킷이 00으로 끝나고 데이터 패킷이 01로 시작한다고 말합니다. 중지 비트는 통신 패킷의 끝을 알리는 데 사용됩니다. 또한 직렬 장치에서 다른 클럭을 동기화하는 데도 도움이 됩니다. 데이터 패킷은 프리앰블로 시작하여 헤더다음에 원시 데이터로 시작하여 전송 관련 오류 감지 정보(종종 Fletcher-32 checksum)로 몇 바이트 더 완료됩니다. 다음 장에서 이 오류 감지 정보로 수행하는 작업은 직렬 프로그래밍/오류 수정 방법에 대해 자세히 설명합니다. DTE / DCE 통신에서 RTS (보내기 요청)는 DTE의 출력과 DCE의 입력입니다. CTS(전송 지우기)는 DCE에서 오는 응답 신호입니다. 데이터를 보내기 전에 DTE는 RTS 출력을 높게 설정하여 권한을 요청합니다.

DCE가 CTS 회선을 사용하여 권한을 부여할 때까지 데이터가 전송되지 않습니다. DTE는 DTR(데이터 터미널 준비) 신호를 사용하여 정보를 받아들일 준비가 되었음을 나타내는 반면 DCE는 동일한 목적을 위해 DSR 신호를 사용합니다. DTR/DSR은 일반적으로 전체 연결 세션(예: 오프 후크)에 대해 켜지거나 꺼지며 RTS/CTS는 각 데이터 전송에 대해 켜지거나 꺼져 있습니다. DCD(데이터 캐리어 준비)는 원격 장비와 연결이 설정된 경우 모뎀에서 사용되며 RI(링 표시기)는 모뎀에서 전화선에서 링 신호를 나타내는 데 사용됩니다.