시리얼 통신을 하다보면 오류가 나곤 하는데 어디서 오류가 나는지 확인하고 싶을 때가 있다. 그럴때 오실로스코프로 파형을 찍어서 1,0을 직접 확인할 필요가 있는데, 이때 주의해야 할 점이 있다. (참고로 나는 RS485 통신을 사용했다. ) putty나 teraterm 등으로 문자를 보낸 부분을 오실로스코프로 찍어보면 파형이 나온다. 처음에 나는 '1'을 보내서 Hex(16진수)로 확인하면 0000 0001 이렇게 파형이 찍힐 줄 알았다. 하지만 내가 보낸 건 숫자 '1'이 아닌 문자 '1'이었고, 이를 아스키코드표에서 찾아보면 16진수로 0x31, 2진수로 0011 0001이다. 그리고 또 주의해야 하는 게 파형이 0011 0001로 순서대로 나오는 게 아니라는 것이다. 통신 인터페이스에 따라 MSB(..
RS485
RS485 통신을 하다보면 노이즈를 만나게 됨. 그래서 노이즈의 종류들과 해결방법들을 정리해 봄. NOISE 1. 차동 노이즈 (Differential noise) 전기 노이즈가 와이어 중 하나를 통해 결합될 때 차동 노이즈가 발생함. => 하지만 RS485의 경우 전선 간의 차동 전압을 비교하여 신호를 디코딩하므로 차동 노이즈는 전송에 거의 영향을 미치진 않음. 2. 모드 노이즈 (Mode noise) 동일한 진폭의 간섭이 두 와이어에 결합될 때 발생함. 3. 스파크 와이어 중 하나에 스파크가 튀어 디코딩된 값의 logic을 변화시킨 경우 데이터 값이 변화함. ((회로를 만질 땐 꼭 정전기 방지 장갑을 끼자)) noise 완화 방법: 1. 실드 케이블을 사용하기 shielded cable을 적절하게 사..