문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 CAN(통신) (문단 편집) === 에러 제어 === Bus 토폴로지에서는 2개 이상의 노드가 동시에 프레임을 전송할 수 있다. 이런 경우, 어떠한 프레임도 제대로 전송되지 않으므로 CAN 표준은 에러카운터 개념을 도입하여 프레임 충돌(= 에러)을 제어하는 방법을 명시하였다. 또한, 에러가 단기간 내에 많이 발생하는 경우, CAN bus의 정상적인 운용이 어려워지므로, 에러카운터가 특정 임계를 넘어설 때마다 노드는 스스로를 네트워크로부터 3개의 state를 거쳐 점진적으로 분리시켜나간다. '''(1) Error Active State:''' 노드가 프레임[* 유의: 에러 프레임을 포함한 등 모든 프레임이 해당] 송신 시 타 프레임과 충돌이 발생한 경우 Transmit Error Counter (TEC)가 8 상승하고, Active Error Frame(i.e., 6개의 Dominant bits와 8개의 Recessive bits) 을 전송한다. 마찬가지로, 수신과정에서 충돌이 발생하는 경우 Receive Error Counter (REC)가 1 상승한다. TEC는 송신 성공 시, REC는 수신 성공 시 값이 1 감소한다. '''(2) Error Passive State:''' 만약 TEC ''또는'' REC가 128 이상인 경우, 노드는 송신 시 충돌이 발생하여도 더 이상 Active Error Frame을 보내지 않는다. 대신, 14 개의 Recessive bits로 구성된 Passive Error Frame을 보낸다. '''(3) Bus-off State:''' TEC ''또는'' REC가 255를 초과하는 경우, 노드는 CAN bus로부터 스스로를 분리하고 더 이상 bus에 아무런 메시지를 보내지 않는다. 예외적으로, CAN ID 전송과정 중 일어난 충돌은 에러카운터를 증가시키지 않는다. 해당 충돌은 에러가 아닌 기능이기 때문이다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기