C#에서 입력 Uart 처리
입력 사이즈를 확인하였던 intRecSize를 초기화해 주지 않으니 0x00의 비어있는 값이 버퍼에 쌓이는 경우가 있었습니다.
private void ComPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
if (rbAscii.Checked == true)
{
InputData = ComPort.ReadExisting();
if (InputData != String.Empty)
{
this.BeginInvoke(new SetTextCallback(SetText), new object[] { InputData });
}
}
else
{
/* 입력된 데이터 량 */
int intRecSize = ComPort.BytesToRead;
while (intRecSize != 0)
{
TimerCnt = 0;
byte[] buff = new byte[intRecSize];
ComPort.Read(buff, 0, intRecSize);
/* 입력된 데이터 처리 */
intRecSize = 0;
}
}
}
'초보의 아웅다웅 설계하기 > 비주얼 C#' 카테고리의 다른 글
바이트 어레이의 값 확인 (0) | 2018.08.28 |
---|---|
Bluetooth의 시작 (0) | 2018.04.22 |
C# TextBox 속도와 WordWrap = false 처리 (0) | 2018.04.01 |
Visual Studio - error MSB8020 (0) | 2017.07.25 |
VB.NET CustomMsgBox (0) | 2013.07.08 |