User | Revision | Line number | New contents of line |
shintamainjp |
0:327b7653dd6c
|
1
|
/**
|
shintamainjp |
0:327b7653dd6c
|
2
|
* Test program.
|
shintamainjp |
0:327b7653dd6c
|
3
|
*
|
shintamainjp |
0:327b7653dd6c
|
4
|
* Copyright (C) 2010 Shinichiro Nakamura (CuBeatSystems)
|
shintamainjp |
0:327b7653dd6c
|
5
|
* http://shinta.main.jp/
|
shintamainjp |
0:327b7653dd6c
|
6
|
*/
|
shintamainjp |
0:327b7653dd6c
|
7
|
|
shintamainjp |
0:327b7653dd6c
|
8
|
#include "mbed.h"
|
shintamainjp |
0:327b7653dd6c
|
9
|
#include "SG12864A.h"
|
shintamainjp |
0:327b7653dd6c
|
10
|
|
shintamainjp |
0:327b7653dd6c
|
11
|
int main() {
|
shintamainjp |
0:327b7653dd6c
|
12
|
|
shintamainjp |
0:327b7653dd6c
|
13
|
SG12864A lcd(p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18);
|
shintamainjp |
0:327b7653dd6c
|
14
|
#if 0
|
shintamainjp |
0:327b7653dd6c
|
15
|
lcd.clear();
|
shintamainjp |
0:327b7653dd6c
|
16
|
lcd.reset();
|
shintamainjp |
0:327b7653dd6c
|
17
|
|
shintamainjp |
0:327b7653dd6c
|
18
|
{
|
shintamainjp |
0:327b7653dd6c
|
19
|
static const int pages = 8;
|
shintamainjp |
0:327b7653dd6c
|
20
|
static const int columns = 64;
|
shintamainjp |
0:327b7653dd6c
|
21
|
for (int i = 0; i < pages; i++) {
|
shintamainjp |
0:327b7653dd6c
|
22
|
lcd.setPageAddress(SG12864A::CS1, i);
|
shintamainjp |
0:327b7653dd6c
|
23
|
lcd.setPageAddress(SG12864A::CS2, i);
|
shintamainjp |
0:327b7653dd6c
|
24
|
for (int j = 0; j < columns; j++) {
|
shintamainjp |
0:327b7653dd6c
|
25
|
uint8_t n = 1 << (j % 8);
|
shintamainjp |
0:327b7653dd6c
|
26
|
lcd.setColumnAddress(SG12864A::CS1, j);
|
shintamainjp |
0:327b7653dd6c
|
27
|
lcd.setColumnAddress(SG12864A::CS2, j);
|
shintamainjp |
0:327b7653dd6c
|
28
|
lcd.writeData(SG12864A::CS1, n);
|
shintamainjp |
0:327b7653dd6c
|
29
|
lcd.writeData(SG12864A::CS2, n);
|
shintamainjp |
0:327b7653dd6c
|
30
|
}
|
shintamainjp |
0:327b7653dd6c
|
31
|
}
|
shintamainjp |
0:327b7653dd6c
|
32
|
}
|
shintamainjp |
0:327b7653dd6c
|
33
|
|
shintamainjp |
0:327b7653dd6c
|
34
|
uint8_t n = 0;
|
shintamainjp |
0:327b7653dd6c
|
35
|
while (1) {
|
shintamainjp |
0:327b7653dd6c
|
36
|
lcd.setDisplayStartLine(SG12864A::CS1, n);
|
shintamainjp |
0:327b7653dd6c
|
37
|
lcd.setDisplayStartLine(SG12864A::CS2, n);
|
shintamainjp |
0:327b7653dd6c
|
38
|
n++;
|
shintamainjp |
0:327b7653dd6c
|
39
|
wait_ms(100);
|
shintamainjp |
0:327b7653dd6c
|
40
|
}
|
shintamainjp |
0:327b7653dd6c
|
41
|
#else
|
shintamainjp |
0:327b7653dd6c
|
42
|
lcd.clear();
|
shintamainjp |
0:327b7653dd6c
|
43
|
lcd.reset();
|
shintamainjp |
0:327b7653dd6c
|
44
|
bool reverse = false;
|
shintamainjp |
0:327b7653dd6c
|
45
|
while (1) {
|
shintamainjp |
0:327b7653dd6c
|
46
|
//
|
shintamainjp |
0:327b7653dd6c
|
47
|
lcd.bufferClear(reverse);
|
shintamainjp |
0:327b7653dd6c
|
48
|
lcd.bufferDrawLine(0, 0, SG12864A::PIXEL_X - 1, SG12864A::PIXEL_Y - 1, reverse);
|
shintamainjp |
0:327b7653dd6c
|
49
|
lcd.bufferDrawLine(0, SG12864A::PIXEL_Y - 1, SG12864A::PIXEL_X - 1, 0, reverse);
|
shintamainjp |
0:327b7653dd6c
|
50
|
lcd.bufferDrawString(1, 1, "This is a test #1.\b", reverse);
|
shintamainjp |
0:327b7653dd6c
|
51
|
lcd.bufferDrawCheckbox(50, 50, 60, 60, true, reverse);
|
shintamainjp |
0:327b7653dd6c
|
52
|
lcd.bufferPush();
|
shintamainjp |
0:327b7653dd6c
|
53
|
wait_ms(1000);
|
shintamainjp |
0:327b7653dd6c
|
54
|
|
shintamainjp |
0:327b7653dd6c
|
55
|
//
|
shintamainjp |
0:327b7653dd6c
|
56
|
lcd.bufferClear(reverse);
|
shintamainjp |
0:327b7653dd6c
|
57
|
lcd.bufferDrawBox(0, 0, SG12864A::PIXEL_X - 1, SG12864A::PIXEL_Y - 1, reverse);
|
shintamainjp |
0:327b7653dd6c
|
58
|
lcd.bufferDrawString(1, 2, "This is a test #2.\b", reverse);
|
shintamainjp |
0:327b7653dd6c
|
59
|
lcd.bufferDrawCheckbox(50, 50, 60, 60, false, reverse);
|
shintamainjp |
0:327b7653dd6c
|
60
|
lcd.bufferPush();
|
shintamainjp |
0:327b7653dd6c
|
61
|
wait_ms(1000);
|
shintamainjp |
0:327b7653dd6c
|
62
|
|
shintamainjp |
0:327b7653dd6c
|
63
|
#if 0
|
shintamainjp |
0:327b7653dd6c
|
64
|
//
|
shintamainjp |
0:327b7653dd6c
|
65
|
lcd.bufferClear(reverse);
|
shintamainjp |
0:327b7653dd6c
|
66
|
lcd.bufferFillBox(0, 0, SG12864A::PIXEL_X - 1, SG12864A::PIXEL_Y - 1, reverse);
|
shintamainjp |
0:327b7653dd6c
|
67
|
lcd.bufferDrawString(1, 3, "This is a test #3.\b", reverse);
|
shintamainjp |
0:327b7653dd6c
|
68
|
lcd.bufferDrawCheckbox(50, 50, 60, 60, true, reverse);
|
shintamainjp |
0:327b7653dd6c
|
69
|
lcd.bufferPush();
|
shintamainjp |
0:327b7653dd6c
|
70
|
wait_ms(1000);
|
shintamainjp |
0:327b7653dd6c
|
71
|
#endif
|
shintamainjp |
0:327b7653dd6c
|
72
|
|
shintamainjp |
0:327b7653dd6c
|
73
|
//
|
shintamainjp |
0:327b7653dd6c
|
74
|
{
|
shintamainjp |
0:327b7653dd6c
|
75
|
lcd.bufferClear(reverse);
|
shintamainjp |
0:327b7653dd6c
|
76
|
int min = 0;
|
shintamainjp |
0:327b7653dd6c
|
77
|
int max = 100;
|
shintamainjp |
0:327b7653dd6c
|
78
|
for (int i = min; i <= max; i++) {
|
shintamainjp |
0:327b7653dd6c
|
79
|
lcd.bufferDrawProgressbar(10, 10, 118, 20, min, max, i, reverse);
|
shintamainjp |
0:327b7653dd6c
|
80
|
lcd.bufferPush();
|
shintamainjp |
0:327b7653dd6c
|
81
|
wait_ms(2);
|
shintamainjp |
0:327b7653dd6c
|
82
|
}
|
shintamainjp |
0:327b7653dd6c
|
83
|
}
|
shintamainjp |
0:327b7653dd6c
|
84
|
|
shintamainjp |
0:327b7653dd6c
|
85
|
//
|
shintamainjp |
0:327b7653dd6c
|
86
|
{
|
shintamainjp |
0:327b7653dd6c
|
87
|
lcd.bufferClear(reverse);
|
shintamainjp |
0:327b7653dd6c
|
88
|
int min = -100;
|
shintamainjp |
0:327b7653dd6c
|
89
|
int max = 100;
|
shintamainjp |
0:327b7653dd6c
|
90
|
for (int i = min; i <= max; i++) {
|
shintamainjp |
0:327b7653dd6c
|
91
|
lcd.bufferDrawProgressbar(10, 10, 118, 20, min, max, i, reverse);
|
shintamainjp |
0:327b7653dd6c
|
92
|
lcd.bufferPush();
|
shintamainjp |
0:327b7653dd6c
|
93
|
wait_ms(2);
|
shintamainjp |
0:327b7653dd6c
|
94
|
}
|
shintamainjp |
0:327b7653dd6c
|
95
|
}
|
shintamainjp |
0:327b7653dd6c
|
96
|
|
shintamainjp |
0:327b7653dd6c
|
97
|
//
|
shintamainjp |
0:327b7653dd6c
|
98
|
{
|
shintamainjp |
0:327b7653dd6c
|
99
|
lcd.bufferClear(reverse);
|
shintamainjp |
0:327b7653dd6c
|
100
|
int min = 100;
|
shintamainjp |
0:327b7653dd6c
|
101
|
int max = 600;
|
shintamainjp |
0:327b7653dd6c
|
102
|
for (int i = min; i <= max; i++) {
|
shintamainjp |
0:327b7653dd6c
|
103
|
lcd.bufferDrawProgressbar(10, 10, 118, 20, min, max, i, reverse);
|
shintamainjp |
0:327b7653dd6c
|
104
|
lcd.bufferPush();
|
shintamainjp |
0:327b7653dd6c
|
105
|
wait_ms(2);
|
shintamainjp |
0:327b7653dd6c
|
106
|
}
|
shintamainjp |
0:327b7653dd6c
|
107
|
}
|
shintamainjp |
0:327b7653dd6c
|
108
|
|
shintamainjp |
0:327b7653dd6c
|
109
|
//
|
shintamainjp |
0:327b7653dd6c
|
110
|
reverse = !reverse;
|
shintamainjp |
0:327b7653dd6c
|
111
|
}
|
shintamainjp |
0:327b7653dd6c
|
112
|
#endif
|
shintamainjp |
0:327b7653dd6c
|
113
|
}
|