본문 바로가기

프로그래밍_객체지향언어/C#_프로그래밍

C# Tip) Serial Port 에러 발생시 Tip

최근 SerialPort 에서 정상적인 데이터를 수신 하지 못하였을 경우 User 가 확인 할 수 있는 방법 


이 없는지 고민하던 차에 괜찮은 정보가 있어 이렇게 Tip !! 

일반적으로 


serialPort.DataReceived += new SerialDataReceivedEventHandler(serialPort_DataReceived);

와 같은 방식으로 되어 있습니다.

serialPort.ErrorReceived += new SerialErrorReceivedEventHandler(serialPort_ErrorReceived);

와 같이 정상적인 데이터를 수신 하지 못하였을 경우의 처리도 같이 해주면 좋을 것 같은데 말입니다..

아래는 발생하는 에러의 종류와 원인(?) 정도를 출력합니다.


void serialPort_ErrorReceived(object sender, SerialErrorReceivedEventArgs e)
        {
            SerialError err = e.EventType;
            string strErr = "";

            switch (err)
            {
                case SerialError.Frame:
                    strErr = "HardWare Framing Error";
                    break;
                case SerialError.Overrun:
                    strErr = "Charaters Buffer Over Run";
                    break;
                case SerialError.RXOver:
                    strErr = "Input Buffer OverFlow";
                    break;
                case SerialError.RXParity:
                    strErr = "Founded Parity Error";
                    break;
                case SerialError.TXFull:
                    strErr = "Write Buffer was Fulled";
                    break;
                default:
                    break;
            }

          // 생략....

            }
        }

'프로그래밍_객체지향언어 > C#_프로그래밍' 카테고리의 다른 글

곰용이의 C# 초급 (4)  (0) 2013.07.03
곰용이의 C# 초급 (3)  (0) 2013.04.01
곰용이의 C# 초급 (2)  (0) 2013.04.01
곰용이의 C# 초급 (1)  (0) 2013.03.21
C# 프로그래밍의 개념  (0) 2013.03.20