다음 명령어들은 ST의 동작모드와 상관없이 공통적으로 사용됩니다.
명령어 | 하위 명령어 | 설명 | ||
---|---|---|---|---|
set | mode | free | 모드 설정: 프리모드 | |
output | pulse | 모드 설정: 펄스출력모드 | ||
toggle | 모드 설정: 토글출력모드 | |||
pwm | 모드 설정: PWM출력모드 | |||
div | sec | 단위 설정: 초 | ||
ms | 단위 설정: 밀리 초 | |||
us | 단위 설정: 마이크로 초 | |||
reset | - | 초기화 | ||
get | state | 상태 읽기 | ||
start | - | 시작 | ||
stop | - | 정지 |
ST는 일반적인 카운터 모드인 프리모드와 신호를 출력하는 출력모드를 지원합니다.
출력모드에는 토글출력모드, 펄스출력모드 및 PWM출력모드가 있습니다.
PWM출력모드는 출력횟수가 무한대인 펄스출력모드 입니다.
모드 설정 초기 값은 프리모드 이며, 각각의 모드 설정 방법은 다음과 같습니다.
구분 | 문법 |
---|---|
프리모드 | pid_ioctl($pid, "set mode free"); |
펄스출력모드 | pid_ioctl($pid, "set mode output pulse"); |
토글출력모드 | pid_ioctl($pid, "set mode output toggle"); |
PWM출력모드 | pid_ioctl($pid, "set mode output pwm"); |
ST의 단위는 다음 세 가지로 설정할 수 있습니다.
초기 값은 밀리 초 입니다.
구분 | 문법 |
---|---|
초 | pid_ioctl($pid, "set div sec"); |
밀리 초 | pid_ioctl($pid, "set div ms"); |
마이크로 초 | pid_ioctl($pid, "set div us""); |
"reset"명령어는 다음과 같은 동작을 합니다:
구분 | 문법 |
---|---|
초기화 | pid_ioctl($pid, "reset"); |
"get state" 명령어는 ST의 상태를 읽는 명령어 입니다.
구분 | 문법 |
---|---|
상태 읽기 | pid_ioctl($pid, "get state"); |
이 명령어에 의한 반환 값은 다음과 같습니다.
반환 값 | 상태 |
---|---|
0 | 정지 |
1 ~ 5 | 동작 중 |
ST를 시작시키기 위해서는 "start"명령을 사용합니다.
구분 | 문법 |
---|---|
시작 | pid_ioctl($pid, "start"); |
ST를 정지시키기 위해서는 "stop"명령을 사용합니다. 출력모드에서 ST를 정지시키면 출력 핀의 상태는 정지 시점의 상태를 유지합니다.
구분 | 문법 |
---|---|
정지 | pid_ioctl($pid, "stop"); |