CONFIG_ENCODER_MODE

이 구조체는 엔코더 채널별 엔코더 입력 모드 구성을 정의합니다. A/B/Z/S 신호를 해석하는 방식, 극성이나 카운트 모드, 회전당 펄스 수 구성을 지정합니다. 주로 외부 엔코더나 컨베이어 트래킹 엔코더를 설정할 때 사용합니다.

BYTE#

필드 이름

자료형

값

비고

0

_iChannel

unsigned char

0~1

엔코더 채널 인덱스

1

_iABMode

unsigned char

0~4

A/B상 모드 구성
0: A/B 사용 안 함
1: A(QEP), B(QEP)
2: A(Count), B(Direction)
3: A(Up Count), B(Not Used)
4: A(Down Count), B(Not Used)

2

_iZMode

unsigned char

0~2

Z상 신호 모드
0: 사용 안 함
1: 누적 보상
2: 카운트 초기화

3

_iSMode

unsigned char

0

S상 신호 모드(0: 사용 안 함)

4

_iInvMode

unsigned char

0 또는 1

반전 모드
(0: 정방향, 1: 반전)

5

_nPulseAZ

unsigned int

0~100000

Z 펄스당 A 펄스 수(회전당 카운트 수)

전체 크기: 9바이트

정의 위치: DRFS.h

typedef struct _CONFIG_ENCODER_MODE
{
    /* 엔코더 채널: 0~1 */
    unsigned char _iChannel;

    /* A/B 극성 모드
       0: A(사용 안 함), B(사용 안 함)
       1: A(QEP), B(QEP)
       2: A(카운트), B(방향)
       3: A(업 카운트), B(사용 안 함)
       4: A(다운 카운트), B(사용 안 함)
    */
    unsigned char _iABMode;

    /* Z 극성 모드
       0: 사용 안 함
       1: 카운트 누적 보정
       2: 카운트 초기화
    */
    unsigned char _iZMode;

    /* S 극성 모드(0: 사용 안 함) */
    unsigned char _iSMode;

    /* 반전 모드(0: 정방향, 1: 반전) */
    unsigned char _iInvMode;

    /* Z 펄스당 A 펄스 수(0 ~ 100000) */
    unsigned int _nPulseAZ;

} CONFIG_ENCODER_MODE, *LPCONFIG_ENCODER_MODE;