COMI_ENC_Config¶
SYNOPSYS¶
void COMI_ENC_Config (HANDLE hDevice, int ch, int mode, BOOL bResetByZ)
DESCRIPTION¶
이 함수는 지정한 A/B 상 카운터 채널의 모드를 설정합니다.
PARAMETER¶
▶ hDevice : 디바이스 핸들값입니다. 이 값은 COMI_LoadDevice() 함수에 의해 얻어진 값이어야 합니다.
▶ ch : Counter 채널번호. 채널 번호는 0 부터 시작합니다.
▶ mode : 채배모드를 설정합니다.
Value |
Meaning |
---|---|
0 또는 ENCODER_1X |
엔코더의 기본 분해능대로 카운트합니다. |
1 또는 ENCODER_2X |
2 채배 모드. 이 모드에서 카운터는 엔코더의 기본 분해능의 2배 분해능을 가질 수 있습니다. |
2 또는 ENCODER_4X |
4 채배 모드. 이 모드에서 카운터는 엔코더의 기본 분해능의 4배 분해능을 가질 수 있습니다. |
▶ bResetByZ : A/B 상 카운트값을 Z 상 입력단자에 펄스가 입력될 때마다 리셋(Reset) 할 것인지를 지정합니다.
Value |
Meaning |
---|---|
0 |
이 값으로 지정하면 A/B 상 카운트 값은 Z 상에 의해 영향을 받지 않습니다. |
1 |
이 값으로 지정하면 A/B 상 카운트 값은 Z-펄스가 발생할 때마다 리셋됩니다. |
Device¶
지원 디바이스: COMI-SD501
EXAMPLE¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | /*************************************************************
/* [COMIDAS sample program by COMIZOA Inc., Ltd]
/*
/* - Subject : Encoder Counter.
/* - Contents : 이 프로그램은 1개의 Encoder counter 채널을 읽어서 화면에
/* 보여주는 프로그램 입니다.
/* - Reamkrs :
/* 1. 이 예제는 COMI-SD501 보드에만 적용가능합니다.
/**************************************************************/
#include <windows.h>
#include <stdio.h>
#include <conio.h>
#include "Comidas.h"
#define CH 0
void main(void)
{
HANDLE hDevice;
long count;
COMI_LoadDll();
hDevice = COMI_LoadDevice(COMI_SD501, 0);
if(hDevice == INVALID_HANDLE_VALUE){
printf("Can't load specified device!");
exit(0);
}
COMI_ENC_Config(hDevice, CH, ENCODER_1X, FALSE);
COMI_ENC_Reset(hDevice, CH) /* Reset counter to 0 */
while(!kbhit())
{
count = COMI_ENC_Read(hDevice, CH);
printf("Read Encoder Count = %9ld\n", count);
}
COMI_UnloadDevice(hDevice);
COMI_UnloadDll();
}
|