====== Get ====== ''Variable = Get(채널, 길이)'' | // Variable : 결과가 저장될 정수형 변수 // | | //채널 : 사용채널 (1,2,3중 하나) // | | //길이 : 수신할 데이터 수 (최대 4까지 사용가능) // | ==== 설명 ==== RS232포트로부터 데이터를 수신하는 명령입니다. 포트로부터 직접 읽는 것이 아니라,수신버퍼에 저장된 값을 읽어옵니다. 수신버퍼에 데이터가 없다면 데이터가 도착할 때까지 기다리지 않고 명령수행을 종료합니다. 즉 아무것도 읽어오지못하고 의미 없는 Gabage(쓰레기)값만 반환됩니다. 이것을 막기 위해서는 Blen 함수를 사용해서, 수신버퍼에 데이터가 있는지 확인한 후 GET명령을 수행해야 합니다. 보통의 경우 수신 인터럽트가 발생된뒤 인터럽트 루틴에 가서 GET명령을 사용하게 됩니다. 괄호 안에는 채널번호와 수신해야 될 데이터의 바이트 수를 적어줍니다. 바이트형 변수에 값을 할당할 때에는 1로 적어줍니다.INTEGER형에 저장할 때에는 2로 적어줍니다. LONG이나 SINGLE형에 저장할 때에는 4로 적어줍니다. 4이상의 값은 사용할 수 없습니다. 이것 역시도 버퍼상에 원하는 바이트수가 모두 도착했는지 미리 확인한 후에 읽어와야 합니다. 그렇지 않은 경우 엉뚱한 값을 받게 됩니다. ==== 사용예 ==== 'RX와 TX단자를 서로 쇼트시킨뒤 아래 프로그램을 실행시키면, Debug터미널에 A부터 Z까지가 표시됩니다. Const Device = CB210 Dim A As Byte Dim B As Byte Opencom 1,19200,3,50,50 Wait 500 For A=&h41 To &h5a Put 1,A,1 '채널1으로 1바이트를 송신 Wait 10 '버퍼로 들어오는시간을 기다려줍니다. B = Get(1,1) '채널1로부터 1바이트를 수신. Debug B Wait 100 Next [[cubloc:|명령어 목록으로 가기]]