커뮤니티

캔위성 체험·경연대회 커뮤니티 게시판 입니다.

Q&A
  • ▶ Q&A
  • 커뮤니티
  • Home

[답변] 프로토콜 관련 질문 ( 수신 )

페이지 정보

  • 작성자 : 관리자
  • 작성일 : 19-07-11 09:51
  • 댓글 : 0건   조회 : 98회

본문

CANSAT FSW 의 한바이트씩 수신 처리 함수를 참고하세요.


 hyGs_RecvByte(unsigned char b) 함수 : 56 00 ...  지상국 명령을 수신하는 경우

hyImu_RecvByte(unsigned char b) 함수 : ( \n, \a ) 로 끝나는 경우

hyGps_RecvByte(unsigned char b) 함수 : $GPGGA 로 시작하는 경우

hyMsg_RecvByte(unsigned char b) 함수 : 76 00 MSG_TYPE MSG_LEN MSG 의 경우


1. UART 에서 들어오는 데이터를 N 바이트 블럭에 저장

2. 블럭의 데이터를 1바이트(b)씩 꺼내고

3. b에 대해서 상태 머신(State Machine) 을 돌림 ( 한바이트씩 처리하는 함수 )

3.0 초기화 상태, 상태값     (상태값 S00 )

3.1 원하는 첫번째 바이트를 찾으면. (상태값 ==> S01   )  그렇지 않으면 ( 상태값 은 그대로 )

3.2 원하는 두번째 바이트를 찾으면 ( 상태값 ==> S02   ), 첫번째 바이트이면 ( 상태값 ==> S01 ), 맞지않으면, ( 상태값 ==> S00 )

3.3 원하는 nn번째  바이트를 찾으면 ( 상태값 ==> Snn ), 첫번째 바이트이면 ( 상태값 ==> S01 ), 맞지않으면, ( 상태값 ==> S00 )

3.4 원하는 마지막 바이트를 찾으면 ( 상태값 ==> S00 )  , [ 이때 원하는 처리를 하고, 상태값을 초기화 시킴 ]

     첫번째 바이트이면 ( 상태값 ==> S01 ), 맞지않으면, ( 상태값 ==> S00 )


> > > 직접 지상국을 만들기 위해서 블루투스를 이용해 정보를 받아오는데 프로토콜에 있는 정보가 들어오는 것 같지 않습니다. 혹시 이 데이터를 어떻게 처리해야하는지 알 수 있을까요? 첨부파일은 받은 정보를 모두 16진수로 변환하여 저장한 데이터 입니다. > >  

댓글목록

등록된 댓글이 없습니다.

대회소개

경연대회

체험캠프

자료실

커뮤니티

지난대회소개

•  대회개요
•  앰블럼
•  문의
•  대회안내
•  대회지원사항 및 포상계획
•  대회규정
•  대회참가신청
•  캠프안내
•  캠프지원사항 및 포상계획
•  캠프규정
•  캠프참가신청
•  캔위성이란?
•  국내외 캔위성대회 소개
•  관련사이트
•  관련논문
•  온라인교육자료
•  공지사항
•  FAQ
•  Q&A
•  대회이모저모
•  2012년 대회
•  2013년 대회
•  2014년 대회
•  2015년 대회
•  2016년 대회
•  2017년 대회

전체메뉴닫기