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

본문 바로가기

사이트 내 전체검색


커뮤니티
누구나 참여할 수 있는 캔위성 체험·경연대회 홈페이지 입니다.



Q&A

Home   >  커뮤니티  >  Q&A

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

페이지 정보

profile_image
작성자 name
댓글 0건 조회 942회 작성일 19-07-11 09:51

본문

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진수로 변환하여 저장한 데이터 입니다. > >  

댓글목록

등록된 댓글이 없습니다.


캔위성체험경연대회 주소 : 34141 대전광역시 유성구 대학로 291 KAIST 인공위성연구소
E-mail : cansat@kaist.ac.kr
COPYRIGHT SATREC CANSAT COMPETITION 2023. ALL RIGHTS RESERVED.