
//[구동선택]{****
//[ ]맷돌가상구동
//[v]맷돌직접연결
//}************

//[설명]{----------------------------------------------------------------
//
//맷돌(G.MTDL.X)로 G.M.RC.BASiC(범용 RC서보 제어기)계열을 제어하는 기본 [설계묶음].
//
//맷돌(G.MTDL.X)에 내장된 통신포트(COM0)와 G.M.RC.BASiC 계열용 [표준함수] 를 사용.
//
//G.M.RC.BASiC 을 보다 정확한 각도로 제어하기 위해서는 반드시 [영점조정] 필요.
//이는 [G.M.RC.BASiC-통합개발환경] 에서 수행가능.
//자세한 내용은 G.M.RC.BASiC 제품 페이지를 참고.
//
//2012.03.23.금
//기계닉스 첨단 대장장이 김갑철(金甲哲)
//}---------------------------------------------------------------------


//[함수묶음] 에 등록된 API 를 사용하기 위한것.
#include "함수묶음.h"

//G.M.RC.BASiC 계열을 제어하기 위한 표준함수.
#include "gmrcbasic\gmrcbasic.h"


//[내부정의]
//{
    #define  true     1
    #define  false    0

    //I/O 포트번호 정의.
    #define  P0       0
    #define  P1       1
    #define  P2       2

    //통신포트번호 정의.
    #define  COM0     0
    #define  COM1     1

    //DID:0 인 제어기를 대상으로 제어.
    #define  DID0     0

//}


//[VAR]
//{
    //G.M.RC.BASiC 으로 부터 전송되는것은 <ACK>, <END> 단두개로 각각 1바이트 크기.
    //따라서, 최소 2 바이트 이상이면 충분(저장소는 <실제 사용크기 + 1> 로 설정).
    unsigned char  수신저장소[5];

    //기타 [전역변수] 는 여기에 선언.

    // ...

//}


void main(void)
{
  //[VAR]
  //{
      //[지역변수] 는 여기에 선언.

      // ...

  //}

  //[통신포트 열기]
  //{
      //[설명]{--------------------------------------
      //맷돌(G.MTDL.X) 의 [통신포트:COM0] 사용.
      //38400BOS 사용(G.M.RC.BASiC 계열과 통신을 위한것).
      //이벤트는 사용하지 않음.
      //송신/수신 전부 사용.
      //}-------------------------------------------

      _Com_열기_(COM0,       //0번포트.
                true,       //송신사용.
                true,       //수신사용.
                수신저장소,    //수신저장소 지정.
                5,          //수신저장소 크기 지정(선언 크기와 동일하게 지정).
                38400);     //38400BPS 사용.

  //}


  // ...


  //사용자가 작성.


  // ...


  while(1);

}

