본문 바로가기

Tip !!!/C# tip

시리얼포트 읽기 DataReceived 한문장이 한번에 안들어 올때

타이머를 이용하여 해결함

 

    private void serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
               buff += serialPort.ReadExisting();              

             //  buff에  한문장이 한번에 잘 안들어옴
             //  그래서 타이머를 사용하여 일정시간 buff에 누적 저장한 후
             //  타이머 Event에서 한번에 출력    타이머간격은 0.3초가 적당

          }
   

  private void timer1_Tick(object sender, EventArgs e)
        {  
                 txtOut.AppendText(    buff + "\r\n"  );
                 buff = "";

        }//func