문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
moacon:startcomxuntilevent:index [2016/04/14 09:50] 127.0.0.1 바깥 편집 |
moacon:startcomxuntilevent:index [2020/02/23 14:06] (현재) Comfile Technology [사용예] |
||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | ====== startComxUntilEvent ====== | ||
+ | ''void startCom0UntilEvent ( u8 untilCode ) '' \\ | ||
+ | ''void startCom1UntilEvent ( u8 untilCode ) '' \\ | ||
+ | ''void startCom2UntilEvent ( u8 untilCode ) '' \\ | ||
+ | |||
+ | |untilCode : 종료코드 ( 0 부터 0xff 사이의 값) | | ||
+ | |||
+ | ==== 설명 ==== | ||
+ | 특정 코드가 수신되면 이벤트를 발생시켜주는 기능입니다. | ||
+ | |||
+ | 통신채널 x (0,1,2,중 하나) 의 수신 검사 이벤트를 시작합니다. 수신버퍼에 UntilCode 로 지정한 코드가 | ||
+ | 수신되면 이벤트가 발생됩니다. 코드는 0 부터 0xff 사이의 아무 값이나 사용할 수 있습니다. | ||
+ | |||
+ | {{ :moacon:startcomxuntilevent:untilevent.png?nolink |}} | ||
+ | |||
+ | 위 그림처럼 통신 패킷이 구성되어 있을 경우, stop code 인 0x30 이 수신되면 이벤트가 | ||
+ | 발생됩니다. 이벤트 처리 함수에서 수신버퍼에 있는 내용을 모두 읽어서 start code 와 stop | ||
+ | code 사이에 있는 본체(Body)를 찾을 수 있습니다. | ||
+ | |||
+ | |||
+ | ==== 사용예 ==== | ||
+ | <code c> | ||
+ | #include "moacon500.h" | ||
+ | void cmain(void) | ||
+ | { | ||
+ | startCom0UntilEvent(0x30); // 채널 0 수신검사 이벤트 시작, 0x30 을 찾으면 이벤트실행 | ||
+ | openCom(0,115200,C8N1); | ||
+ | while(1) { } | ||
+ | } | ||
+ | void com0UntilEvent(void) // 채널 0 수신버퍼에서 0x30 을 찾으면 이 함수가 실행됨. | ||
+ | { | ||
+ | while (comLen(0)>0) // 버퍼에 있는 모든 내용을 출력합니다. | ||
+ | comPut(0,comGet(0)); | ||
+ | } | ||
+ | |||
+ | </code> | ||
+ | |||
+ | [[moacon:index#-s-|라이브러리 목록으로 가기]] |