Table of Contents
CSG2 모듈
CSG2를 사용하려면 BASIC소스를 약간 고쳐야 합니다.
(CUBLOC STUDIO V4.5이상 사용요망)
- Setcsg2 명령어로 활성화(Active)시켜주어야 합니다.
- 모든 명령어 이름이 Csg2 가 들어갑니다. 예를들어 기존 Csgdec는 Csg2dec로 바꾸어주어야 합니다.
뒷면 슬레이브 어드레스 셋팅 DIP 스위치 조작법은 아래 그림을 참조하세요.
| A2 A1 A0 | 슬레이브 어드레스 |
|---|---|
| 0 0 0 | 0 |
| 0 0 1 | 1 |
| 0 1 0 | 2 |
| 0 1 1 | 3 |
| 1 0 0 | 4 |
| 1 0 1 | 5 |
| 1 1 0 | 6 |
| 1 1 1 | 7 |
Setcsg2
Setcsg2 SlaveAdr
| SlaveAdr : CSG2모듈의 Slave Address |
| Data : 표시 데이터 |
설명
해당 슬레이브 어드레스의 CSG2를 활성화 시킵니다. 반드시 처음에 꼭 한번은 실행시켜주어야 하는 명령어입니다.
Csg2dec
Csg2dec SlaveAdr, Data
| SlaveAdr : CSG2모듈의 Slave Address |
| Data : 표시 데이터 |
설명
CUBLOC과 CSG2를 연결한 상태에서 사용할 수 있는 명령어입니다.
10진수 형식으로 데이터를 표시합니다. 소스 앞부분에 Set I2c 명령과 Setcsg2명령을 실행시켜주어야 동작합니다.
사용예
Const Device = cb280 Set I2c 9,8 Setcsg2 0 '0번 슬레이브 어드레스 CSG2 모듈을 활성화합니다. b=8 Do Csg2dec 0,b Delay 100 b = b + 1 If b=0 Then b=200 Loop
Csg2hex
Csg2hex SlaveAdr, Data
| SlaveAdr : CSG2모듈의 Slave Address |
| Data : 표시 데이터 |
설명
CUBLOC과 CSG2를 연결한 상태에서 사용할 수 있는 명령어입니다.
16진수 형식으로 데이터를 표시합니다. 소스 앞부분에 Set I2c 명령과 Setcsg2명령을 실행시켜주어야 동작합니다.
사용예
Const Device = cb280 Set I2c 9,8 Setcsg2 0 '0번 슬레이브 어드레스 CSG2 모듈을 활성화합니다. b=8 Do Csg2hex 0,b Delay 100 b = b + 1 If b=0 Then b=200 Loop
Csg2nput
Csg2nput SlaveAdr, Digit, Data
| SlaveAdr : CSG2모듈의 Slave Address |
| Digit : 위치 (왼쪽부터 0, 1, 2, 3) |
| Data : 표시 데이터 (&h30~&h39, &h41~&h4f) |
설명
CUBLOC과 CSG2를 연결한 상태에서 사용할 수 있는 명령어입니다.
CSG2모듈의 원하는 위치에 원하는 숫자를 표시하는 명령입니다. Data의 상위 1비트는 Dot를 On할 때 사용하는 비트입니다. Data는 Ascii코드로 써주어야 하며, 숫자 0~9, 영문자 A~F까지만 표시할 수 있습니다.
소스 앞부분에 Set I2c 명령과 Setcsg2명령을 실행시켜주어야 동작합니다.
사용예
Const Device = cb280 Set I2c 9,8 Setcsg2 0 '0번 슬레이브 어드레스 CSG2 모듈을 활성화합니다. Csg2nput 0,1,&h30 '1번위치에 0을 표시
Csg2xput
Csg2xput SlaveAdr, Digit, Data
| SlaveAdr : CSG2모듈의 Slave Address |
| Digit : 위치 (왼쪽부터 0, 1, 2, 3) |
| Data : 표시 데이터 (&h30~&h39, &h41~&h4f) |
설명
CUBLOC과 CSG2를 연결한 상태에서 사용할 수 있는 명령어입니다.
CSG2모듈의 원하는 위치에 원하는 LED를 On합니다. 8개의 LED를 각각 On / Off할 수 있으므로 Csgnput명령으로 표현할 수 없는 숫자이외의 모양을 표현하고 싶을 때 사용합니다.
소스 앞부분에 Set I2c 명령과 Setcsg2명령을 실행시켜주어야 동작합니다.
| 비트 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|
| LED | H | G | F | E | D | C | B | A |
사용예
Const Device = cb280 Set I2c 9,8 Setcsg2 0 '0번 슬레이브 어드레스 CSG2 모듈을 활성화합니다. Csg2xput 0,1,&hff '1번위치에 LED전부를 On합니다.
Csg2colron
Csg2colron SlaveAdr, 1또는0
| SlaveAdr : CSG2모듈의 Slave Address |
| OnOff결정 : 1=On, 0=Off |
설명
CUBLOC과 CSG2를 연결한 상태에서 사용할 수 있는 명령어입니다.
CSG2모듈은 가운데 콜론led가 있습니다. (시계표시에 사용) 이 콜론 led를 켜거나 끌 수 있는 명령어입니다. 소스 앞부분에 Set I2c 명령과 Setcsg2명령을 실행시켜주어야 동작합니다.
사용예
Const Device = cb280 Set I2c 9,8 Setcsg2 0 '0번 슬레이브 어드레스 CSG2 모듈을 활성화합니다. Csg2colron 0,1 '0번 슬레이브 어드레스의 콜론표시를 On합니다.
CSG2 샘플 프로그램
CB210의 포트 8을 SDA, 9번을 SCL로 연결해주세요. CSG2의 슬레이브 어드레스는 0으로 하시면 아래 샘플 프로그램의 실행결과를 보실 수 있습니다.
Const Device = CB210 Set I2c 8,9 Setcsg2 0 Delay 50 Dim A As Integer Dim b As Integer Dim c As Integer Dim Stra As String * 5 Ramclear Do '1. beef 16진수 소수점 test(Csg2hex,Csg2nput) A = &hbeef Csg2hex 0, A Csghex 0, A Delay 1000 For b=0 To 4 Csg2xput 0, b, 0 Csgxput 0, b, 0 Next Delay 500 Stra = hex4 A b = 0 Do While b < 4 Csg2nput 0, b, Stra_a(b) + &h80 Csgnput 0, b, Stra_a(b) + &h80 Incr b Delay 500 Loop Delay 1000 For b=0 To 4 Csg2xput 0, b, 0 Csgxput 0, b, 0 Next '2. 위치별 데이터(&h30~&h39 / &h41~&h46) test(Csg2nput) b=0 Do While b<5 A =&h30 Do While A<&h3A Csg2nput 0, b, A Csgnput 0, b, A Incr A Delay 150 Loop Incr b Loop Delay 1000 b=0 Do While b<5 A =&h41 Do While A<&h47 Csg2nput 0, b, A Or &H80 Csgnput 0, b, A Or &H80 Incr A Delay 150 Loop Incr b Loop '3. 개별 세그먼트 led test (Csg2colron, Csg2xput) b=0 Do While b<5 A=0 Do While A<16 Csg2colron 0, 1 Csg2xput 0, b,1<<A Csgxput 0, b,1<<A Incr A Delay 50 Loop Csg2colron 0, 0 Delay 150 Incr b Loop '4. 10, 16진 카운터(Csg2dec, Csg2hex) A=0 Do While A<1000 Csg2dec 0, A Csgdec 0, A Incr A Loop Delay 1000 A=&hfff Do While A>1 Csg2hex 0, A Csghex 0, A Decr A Loop Loop
