C#.NET Q&A

C# 시리얼 통신 stx etx 처리 관련 질문입니다! - 두번째 이건내얼굴 평점: 없음 조회: 126
먼저 저번에 도움주신 지후니파파 님과 중앙초등학교 님 감사합니다!
(그 전에 도움주셨던 아이프리드 님과 꿈속을걷는자 님도 감사드립니다! ㅎ)

드디어! buffer 비교없이 아래처럼 출력하는데는 성공했습니다!



그런데 문자열을 substring으로 잘라서 저장하려고 보니 값이 제 생각대로 깔끔하게 잘려서 저장되지 않네요.. ㅎ..

그래서 stx와 etx를 찾아서 중간의 데이터만 가져와야 된다는 것을 심각하게 느꼈습니다. (진지, 궁서)

일단 저번처럼 buffer변수에 저장된 값을 출력하는 방법을 찾다가 foreach문으로 쉽게 할 수 있다고 해서

아래처럼 해보니 이게 왠걸 출력은 되는데 이 숫자 나열들이 도대체 뭘 의미하는지 도무지.. 모르겠어요! (맨붕..)



혹시나 싶어서 foreach문에 " " 추가해 봤더니 요렇게 나오는 것 까지는 확인했는데요



아?마?도?  맨 앞에 "2" 와 맨 뒤에 "13" 이 stx와 etx일 것? 같은데요?

요걸.. 뺀 나머지를 substring해서? 다시 문자열로 인코딩하면 되는건가요?
 (?가 많은 건 똥인지 된장인지 몰라서..)

항상 도움 주시는 분들 감사하고 좋은 하루 되세요!

------------------------------------------------------------------- 1차 추가 내용
textbox를 좀 더 길게 조절하고 보니 2번째 줄로 내려간 값 중에 3 이 있었네요!
이게 아마 0x02 = 2 이고 0x03 = 3 인가 보네요?! 오홍.. 그럼 10 이랑 13은 뭐당가..
------------------------------------------------------------------- 2차 추가 내용
stx랑 etx를 찾아내는 것은 for문으로 돌려서 변수에 저장했습니다!

for(int i = 0; i < 23; i++)
  {
    if (buffer[i] == 2)
      stxnum = i;
    else if (buffer[i] == 3)
      etxnum = i;
  }                                 요렇게욥 ㅎ

그 후에 시리얼 데이터를 계속 temp1에 +=로 받다가 stx랑 etx가 다 확인됐을 때
(stx의index)+1부터 20개를 저장해서 출력하는 것은 성공했는데요!
temp1에서 출력한 값 etx까지를 삭제해 주는 방법을 모르겠네요..
그냥 remove하면 되는것임감요?..
태그 : #데이터 #문자열비교 #시리얼통신 #etx #stx
작성자 정보
이건내얼굴
Level 9
 [EXP.9/14]

메일:  비공개
글등록 +12 48 덧글등록 +3 51
자기소개
안녕하세요 컴공과 출신이라 앵간한건 알지만 깊은 내용은 부족합니다 잘 부탁드립니다! ㅎ
글 공유하기 |
  tweet facebook
2017-05-15 오전 10:39:00
나도한마디
사용자
지후니파파            [2017-05-15]
Level 31
 [EXP.44/80]
아스키 코드표 참고하세요 CR LF 가 엔터입니다. 거꾸로 되어 있긴하네요
사용자
이건내얼굴            [2017-05-15]
Level 9
 [EXP.9/14]
오오.. 감사합니다!
아까 아스키 코드표 보고 뭔지는 알았는데 순서가 바뀐 건 몰랐네요!
사용자
묵상의언어            [2017-05-19]
Level 18
 [EXP.28/70]
참견 하나 하자면..
temp2는 없어도 될 것 같습니다.
Invoke()내에서 buffer를 하나씩 가져와서 Strings 변수(?) 에 추가해주면 되지 않을까 합니다.
그리고, 숫자 자릿수는 맞춰주시는 게 보기 편할 듯 합니다.

Strings = String.Format("{0}", temp2) 대신에..
foreach(byte b in buffer)
Strings += String.Format("{0:X2} ", b);

위와 같이 해보시는 건 어떨런지...
글리스트
String을 디코딩 하고 싶습니다.[3]  프리라인
access 범위로 조회 쿼리 질문입니다[1] 파일첨부 불꽃한화
c#으로 윈도우 프로그래밍 만들 때 클래스 다이어그램을 어떻게 그리나요?  kinect고생중
C# 호환성? 질문입니다![1]+1  이건내얼굴
정기적으로 프로그램 실행에 관해서 문의드립니다[3]+3  꼬니복이
SelectionChanged 가 걸린 그리드에 붙여넣기가 안되는경우  넝약이
C# 엑셀 실행에 관해 문의드립니다.[2]+3  꼬니복이
C# DataGridView Cell Text 자동 개행  봄기운가득
c#에서 파일 암호화/복호화 하는데 문제가 잇습니다 [2]  두들기기
C# 엑셀 매크로 실행 구현후, 작업 스케줄러 실행시 안되는 점 도와주세요ㅠㅠ[1]+1  꼬니복이
 ★현재글->   C# 시리얼 통신 stx etx 처리 관련 질문입니다! - 두번째[2]+1  이건내얼굴
ㅇ웹에서 웹캠을 스트리밍하고 싶은데...  이상민
ILMerge로 결합만 하면 악성코드라고 자꾸 잡네요;;[1]  Nell
C# 시리얼 통신 stx etx 처리 관련 질문입니다![2]+3  이건내얼굴
VB에서 Split 함수 이용해서 연,월,일 나누는 것 오류해결좀 도와주세요 !!! 파일첨부 불꽃한화
DataSet과 MySqlAdapter를 이용하여 중복된 데이터를 검색해보려고 합니다.[1]+7  탄곰
TextBox에서 Mask설정에 대해서 문의드립니다.  꼬니복이
궁금한 부분이 있습니다.[3]  C#초보자임다
string문자열 검색 및 처리 법 [3]+5  hs
visual studio 2010 .net framework 4.0 선택  깡갱하기
winform 프로젝트 파일 관리 (초보!)[4]  폭탄맨