Compare Channel, Target#, Port, TargetState
Channel : 카운터 채널 |
Target# : 목표치 펄스 갯수 |
Port : 출력포트 (입력전용 포트는 사용금지) |
TargetState : 목표상태 (0 또는 1) |
이 명령은 고속 카운터와 연동되어 동작하는 명령입니다. 고속카운터로 입력되는 펄스의개수를 항상 감시하고 있다가 목표치를 초과하면 정해준 포트를 원하는 상태로 바꿉니다.
이때 포트는 반드시 출력이 가능한 포트(입력 포트제외)로 설정해 주십시오. 목표상태를 1로 하면, 목표치에 도달했을 때 해당포트가 High가 됩니다. 반대로 0으로 하면 해당포트의 상태가 Low가 됩니다.
이 명령어를 실행하면 목표상태의 반대로 해당포트가 바뀝니다. 유저가 일부러 바꿀 필요가 없습니다.
고속카운터 채널 0은 목표치를 최대 65535까지 설정할 수 있습니다. 채널1은 목표치를 최대 255까지 설정할 수 있습니다.
또한 채널0은 Set Count0 On 명령어를 사용하여 활성화시켜준 뒤에 Compare명령으로 목표치를 설정해 주어야 합니다.
Dim i As Integer Set Count0 On Compare 0,10,61,1 '목표치에 도달하면 61번포트가 High가됩니다. Do i = Count(0) Debug Goxy,0,0,dec4 i,Cr Delay 100 Loop '이 경우 채널0을 사용했고, 목표치를 10으로 설정했습니다. 카운터0채널의 값이 10을 넘었을 때, 포트 61번이 High가 됩니다.