10.07.2015 Views

cubloc_manual2.pdf

cubloc_manual2.pdf

cubloc_manual2.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Blen( )Variable = BLEN(channel, bufferkind)Variable : 결과가 저장될 변수channel : RS232 채널bufferkind : 버퍼종류, 0=수신버퍼, 1=송신버퍼RS232 포트 채널의 수신용또는 송신용버퍼에 쌓인 데이터의 개수를 반환합니다. 버퍼에 아무것도들어있지 않다면 0 을 반환합니다. 수신버퍼의 경우, 외부로부터 RS232 데이터를 수신하면 내부데이터 수신버퍼에 저장됩니다. BLEN 명령을 사용하면 몇바이트의 데이터가 수신되었는지 확인할수 있습니다. GET 명령을 사용하기 전에 GET 명령에서 수신할 데이터만큼 수신되어 있는지 확인할 필요가 있습니다. 원하는 양만큼 수신되었을 때 , GET 이나 GETSTR 명령을 사용해서 데이터를 꺼냅니다.수신버퍼가 꽉 찰때까지 GET 명령을 사용해서 데이터를 읽어내지 않는다면, 그 이후에 들어오는데이터는 더 이상 저장할 공간이 없으므로, 잃어버리게 됩니다. 이런 일을 막기 위해서는 수신 인터럽트를 사용해서 RS232 데이터가 수신되는데로 읽어내거나, 충분한 수의 수신버퍼를 확보해야합니다. 수신 버퍼가 꽉차서 더 이상 데이터가 저장할 곳이 없는 경우, 이후에 들어오는 데이터는잃어버리게 됩니다.DIM A AS BYTEOPENCOM 1,19200,0,100,50ON RECV1 DATARECV_RTN ‘RS232 데이터가 수신되면 DATARECV_RTN 으로 점프DOLOOP ‘ 무한루프DATARECV_RTN:IF BLEN(1,0) > 0 THEN ‘ 버퍼에 저장된 데이터가 1 바이트라도 있으면..A = GET(1) ‘ 1 바이트만 읽습니다.END IFRETURN‘ 인터럽트 루틴을 종료BclrBCLR channel, bufferkindchannel : RS232 채널bufferkind : 버퍼종류, 0=수신버퍼, 1=송신버퍼, 2=모두 클리어RS232 버퍼를 모두 클리어합니다. 채널과 버퍼종류를 적어주어야 합니다. 버퍼 종류를 0 으로 하면 수신버퍼를 클리어하고, 1 로 하면 송신버퍼를 클리어하고, 2 로 하면 송수신버퍼를 모두 클리어합니다.BCLR 1,0‘ 1 번 채널의 수신버퍼를 모두 클리어합니다.236

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!