(통신프로토콜)

시리얼 통신으로 전광판 제어.

명령어

- TMODE	: 시리얼 통신 전광판 모드 전환.

- END	: 일반 PC형 시나리오 전광판 모드 ( TMODE 종료 ).

- COMON	: 데이터 통신 ON.

- COMOFF	: 데이터 통신 OFF.

- NORMAL	: 글자 속성 초기화.

- PX	: 글자 시작 위치 X ( dot ) - 기본값 0

- PY	: 글자 시작 위치 Y ( dot ) - 기본값 0

- ACT	: 문구 효과 - 기본값 0 - 효과없음

- CR	: 글자색 - 기본값 2 ( YELLOW) : 0 ~ 7

- FT	: 글자 폰트 번호  - 기본값 2

- SPEED	: 문구 효과 속도- 기본값30 – 단위(ms)

- RTX	: 전광판 표출영역 Left 위치(dot) – 기본값 0

- RTY	: 전광판 표출영역 Top 위치(dot) – 기본값 0

- RTW	: 전광판 표출영역 폭(dot) - 기본값 전광판 폭

- RTH	: 전광판 표출영역 높이(dot) – 기본값 전광판 높이

-RTF	: 전광판 표출영역 – 전체 선택

-WAIT	: 화면 정지 - 단위 100ms

-DACT	: 현재 실행중인 효과를 멈추고, 즉시 표출.

-DWAIT	: 현재 실행중인 효과를 멈추고, 즉시 대기 효과.

-TRESET	: 현재 컨트롤러의 모든 상태를 초기 상태로 reset함.

-REPEAT	: 뒤에 전송된 시나리오를 주어진 변수값만큼 반복. 255:무한루프

-FINE	: REPEAT가 적용된 플레이에서 초기화.

-GETMODE	: 현재 컨트롤러의 실행모드 리턴.( [PM0]:시나리오, [PM2]:TMODE )

-BRIGHT	: LED 밝기 조정( comon 상태에서만 적용, 범위:1~100 )

-GETBRIGHT	: LED 밝기 값 리턴.( 1 ~ 100 리턴 )

-$YY	: 컨트롤러 내 ‘년’ 읽음( 00 ~ 99)

-$MM	: 컨트롤러 내 ‘월’ 읽음( 01 ~ 12)

-$DD	: 컨트롤러 내 ‘일’ 읽음( 01 ~ 31)

-$HH	: 컨트롤러 내 ‘시’ 읽음( 00 ~ 23)

-$MN	: 컨트롤러 내 ‘분’ 읽음( 00 ~ 59)

-$SS	: 컨트롤러 내 ‘초’ 읽음( 00 ~ 59)

-$$	: ‘$’표시

-MVX	: 선그리기 명령중 x좌표 이동

-MVY	: 선그리기 명령중 y좌표 이동

-LNX	: 선그리기 명령 기존 x좌표에서 LNX좌표까지 선그리기. LNX좌표가 최종 X좌표가 됨.

-LNY	: 선그리기 명령 기존 y좌표에서 LNY좌표까지 선그리기. LNY좌표가 최종 Y좌표가 됨.

-LNC	: 선 색상 선택.( 칼라는 CR명령어 참조 )

-ADCV	: 컨트롤러 전압값( 0 ~ 1022 )

-ADCT	: 컨트롤러 내부온도( 0 ~ 1022 )

-ADCC	: 컨트롤러에 연결된 CDS값( 0 ~ 1022 )

-SETDATE	: 컨트롤러 날짜 설정

-SETTIME	: 컨트롤러 시간 설정

-SX	: 이미지 너비

-SY	: 이미지 높이

-IMG	: 이미지 포멧 및 데이터 시작

-GETSCNT	: 전광판 표시할 수 리턴

명령어 사용법

각 명령어는 '[' 와 ']' 로 묶여져 있으며, [COMON] 상태에서만 전광판에 데이터 전송 가능.

설명 :

전광판 초기 부팅시 시나리오 전광판 모드로 작동 되며, 시리얼 통신 모드는 [TMODE] 명령어로 전환.

초기 시나리오 전광판 모드로 전환하기 위해서는 '[COMOFF]' 상태에서 '[END]' 를 전송하면 됨.

문구의 시작위치는 '[PX***]' 와 '[PY***]' 로 지정하며 '[ACT***]' 이 있기전까지 계속 글자 크기 만큼 X축으로 더해지며,

'[ACT***]'이 종료되면 지정된 PX, PY부터 시작됨. ( 글자 크기 : 숫자(8x16), 영문(8x16), 한글(16x16) )

'[CR]' 는 글자의 색깔을 지정하는 명령어로 초기는 YELLOW 로 지정되어 있으며,  지정된 색상은 계속 유지됨.

칼라는 '[CR0]' 부터 '[CR7]' 까지 존재하며 각각의 색상은 아래의 색상값을 참조.

'[WAIT***]'는 대기시간으로 효과 최종화면에서 x100ms 만큼 기다림.

'[DACT***]','[DWAIT***]'는 현재 즉시표출일 경우 효과를 멈추고 DACT이나 DWAIT를 내용 앞에 추가하여 즉시 표출.

DACT, DWAIT가 지속적으로 입력되면, 즉시 표출 마지막 부분에 삽입되어 수행되며, 즉시 표출이 종료되면 이전에 입력

되었던 내용이 실행됩니다.

전송한 표출 내용이 전체 표시되면, 전광판에서 0x17를 전송합니다.

[Repeat***]는 후에 주여진 내용을 반복적으로 표출하며, [FINE]은 Repeat로

반복되고 있을시 중단하고 초기상태로 만듦.

온도표시단위(℃,℉)는 각각의 코드 값을 입력하면 됩니다.

색상값 :

CR0 : Black	CR1: Red	CR2:Green	CR3: YELLOW

CR4: Blue	CR5: Magenta	CR6:CYAN	CR7: WHITE

3색 전광판일경우 BLUE 값이 적용 안됨.( 예: WHITE 값은 3색에서 YELLOW )

예제 :

'[TMODE]' 로  시리얼 전광판 통신 모드로 전환.

( [TMODE] 뒤에는 0x0d 를 입력해 주어야 함. )

이 이외의 예제에서는 '[TMODE]'는 제외.

- 화면 0,0 에 '안녕하세요'를 효과없음 으로  표시.

[COMON]

[PX0 PY0]안녕하세요[ACT0]

[COMOFF]

-  화면 10,0 에 '반갑습니다'를 좌로흐르기 로 표시.

[COMON]

[PX10]반갑습니다[ACT1]

[PX0]

[COMOFF]

-  화면 0,0에 '감사합니다' 를 RED 로 효과없음 표시

[COMON]

[PX0  CR1]감사합니다[ACT0]

[COMOFF]

-  화면에 안녕하세요 반갑습니다 를 3번 반복

[COMON]

[REPEAT3 SPEED10]

안녕하세요[ACT8]

반갑습니다[ACT8]

[COMOFF]

-  화면에 안녕하세요 반갑습니다 를 무한 반복

[COMON]

[REPEAT255 SPEED10]

안녕하세요[ACT8]

반갑습니다[ACT8]

[COMOFF]

무한반복 종료

[COMON]

[FINE]

[COMOFF]

온도 표시 단위 표출.

[COMON]

12.0℃[act0]

[COMOFF]

참고) ℃[0xa1c9], ℉[0xa2b5]

모드 표시

[GETMODE]

Return : [PM2]

LED 밝기 조정

[COMON]

[BRIGHT50]

[COMOFF]

날짜 시간 표시

[COMON]

오늘은 20$YY년 $$MM월 $$DD입니다.[ACT1]

지금은 $HH시$MN분$SS초 입니다.[ACT1]

[COMOFF]

1단6열(16x96) GREEN 전체 직사각형 그리기

[COMON]

[LNC2 MVX0 MVY0 LNX95 LNY15 LNX0 LNY0 ACT0]

[COMOFF]

컨트롤러 내부정보

[ADCV]      : return value => [V500]

[ADCT]      : return value => [T500]

[ADCC]      : return value => [C500]

컨트롤러 시간 날짜 설정

[SETDATE90501]  : return value=> [date2009.05.01]

[SETTIME230000]  : return value=> [time23:00:00]

TMODE 상 남아있는 시나리오 개수

[GETSCNT]

Return : [S2]  :  남아 있는 개수 2개

이미지 표출

[COMON]

[PX0 PY0 ]

[SX16 SY16]

[IMG2]

00055000

005FF500

01FFFF40

07FFFFD0

07C3C3D0

1F3FFCF4

1FC3C3F4

1FC3C3F4

1CFFFF34

1C0FF034

04C3C310

07F00FD0

01FFFF40

005FF500

00055000

00000000

[ACT0]

[COMOFFf]

설명 :

IMG 인자 값은 1pixel 이 차지하는 비트수

IMG1 : (단색)

7pixel 전체 ON  : FE

IMG2 : (삼색)

7pixel Red ON : 5554

IMG4: (7색)

7pixel Red ON : 1111111

7pixel Green ON : 2222222

7pixel Blue ON : 4444444

IMG8: (256색)

7pixel Red ON : F0F0F0F0F0F0F0

7pixel Green ON : 0F0F0F0F0F0F0F

7pixel Gray ON : 88888888888888

IMG16: 565풀칼라

3pixel Red ON : F800F800F800

3pixel Green ON : 07E007E007E0

3pixel Blue ON : 001F001F001F

IMG24 : 888풀칼라

3pixel Red ON : FF0000FF0000FF0000

3pixel Green ON : 00FF0000FF0000FF00

3pixel Blue ON : 0000FF0000FF0000FF

효과 :

0.효과없음	1.좌로이동	2.우로이동	3.위로이동	4.아래로이동

5.위아래보기	6.아래로보기	7.위로보기	8.좌로이동1

9.좌로이동2	10좌로이동3	12.좌로이동4	22.좌로이동5

11.좌로보기

101.스프레이	102.물방울1	103.물방울2	104.원1	105.원2

106.원3	107.부채살1	108.부채살2	109.부채살3	110.다이아몬드1

111.다이아몬드2	112.레이저	113.골뱅이1	114.골뱅이2	115.블럭회전1

116.원확대	117.커텐1	118.별확대	119.블럭회전2	120.꽃무늬1

121.커텐2	122.골뱅이3	123.체크무늬1	124.골뱅이4	125.블럭이동1

126.블럭쌓기1	127.블럭회전3

201.물방울3	202.원4	203.부채살4	204.부채살45	205.부채살6

206.다이아몬드3	207.커튼3	208.골뱅이5	209.골뱅이6	210.커튼4

211.골뱅이7	212.골뱅이8	213.꽃무늬2	214.커튼5	215.골뱅이9

216.블럭이동2	217.블럭쌓기2	218.체크무늬2	219.골뱅이10	220.블럭회전4

301.확대:중앙	302.확대:중앙1	303.확대:왼쪽위	304.확대:오른쪽위	305.확대:왼쪽아래

306.확대:오른쪽아래	307.확대:왼쪽->오른쪽	308.확대:왼쪽<-오른쪽	309.확대:위->아래	310.확대:위<-아래

311.축소:중앙	312.축소:중앙1	313.축소:왼쪽위	314.축소:오른쪽위	315.축소:왼쪽아래

316.축소:오른쪽아래	317.축소:왼쪽->오른쪽	318.축소:왼쪽<-오른쪽	319.축소:위->아래	320.축소:위<-아래

401.좌로돌리기	402.우로돌리기	403.아래로돌리기	404.위로돌리기	411.3D돌리기1

412.3D돌리기2	413.3D돌리기3	414.3D돌리기4	415.3D돌리기5	416.3D돌리기6

417.3D돌리기7	418.3D돌리기8	419.3D돌리기9	420.3D돌리기10

501.Exp1	502.Exp2	503.Exp3	504.Exp4	505.Exp5

506.Exp6

601.바꾸기:왼쪽->오른쪽	602.바꾸기:오른쪽->왼쪽	603.바꾸기:위->아래	604.바꾸기:아래->위

605.바꾸기:가운데->양옆	606.바꾸기:양옆->가운데	607.바꾸기:가운데->상하	608.바꾸기:상하->가운데

609.바꾸기:왼쪽->오른쪽(M)	610.바꾸기:오른쪽->왼쪽(M)	611.바꾸기:위->아래(M)	612.바꾸기:아래->위(M)

613.바꾸기:가운데->양옆(M)	614.바꾸기:양옆->가운데(M)	615.바꾸기:가운데->상하(M)	616.바꾸기:상하->가운데(M)

621. 블럭바꾸기:왼쪽->오른쪽 622. 블럭바꾸기:왼쪽<-오른쪽

1001. 전체칼라반전 1002. 전체칼라Blink 1003. 네온효과1 1004. 네온효과2

1005. 네온효과3    1011. 전체칼라반전1

Xml 사이트에서 시리얼 통신으로 전광판 제어.

명령어

<outc1> n← : 섭씨온도값

<outc2> n← : 화씨온도값

<outc3> n← : 습도값

설명)

상기 명령에서 ←는 0x0d를 표시하는 것이며 n는 정수값을 표시합니다.

정수값은 소수점1자리를 표시하기위해 기본값 x 10를 적용하시면 됩니다.

예를 들어 섭씨 20C 는 <outc1> 200← 를 전송하시면 됩니다.

예를 들어 섭씨 80F 는 <outc2> 800← 를 전송하시면 됩니다.

예를 들어 섭씨 90% 는 <outc3> 900← 를 전송하시면 됩니다.