Christmas ornament gashapon ball WS / Mbed 2 deprecated test10

Dependencies:   EightDotMatrixLed mbed

Committer:
hirokuru
Date:
Tue Nov 17 06:31:46 2015 +0000
Revision:
1:bde1037a0ee5
Parent:
0:d7c2060a9a36
?????????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hirokuru 0:d7c2060a9a36 1 #include "mbed.h"
hirokuru 0:d7c2060a9a36 2 #include "EightDotMatrixLed.h"
hirokuru 0:d7c2060a9a36 3
hirokuru 1:bde1037a0ee5 4 // common type (0:anode common 1:cathode common)
hirokuru 1:bde1037a0ee5 5 // |
hirokuru 1:bde1037a0ee5 6 // | segA segB segC segD segE segF segG segh com1 com2 com3 com4 com5 com6 com7 com8
hirokuru 1:bde1037a0ee5 7 // | | | | | | | | | | | | | | | | |
hirokuru 1:bde1037a0ee5 8 EightDotMatrixLed segmentled(0, dp24, dp25, dp26, dp27, dp28, dp17, dp18, dp5, dp13, dp14, dp15, dp16, dp6, dp9, dp10, dp11);
hirokuru 0:d7c2060a9a36 9
hirokuru 0:d7c2060a9a36 10 BusOut Rows (dp24, dp25, dp26, dp27,dp28,dp17,dp18,dp5);
hirokuru 0:d7c2060a9a36 11 BusOut Cols (dp13,dp14,dp15,dp16,dp6,dp9,dp10,dp11);
hirokuru 0:d7c2060a9a36 12
hirokuru 0:d7c2060a9a36 13
hirokuru 0:d7c2060a9a36 14 int DotPattern1[] = {0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
hirokuru 0:d7c2060a9a36 15 0x7F, 0x00, 0x7F, 0x7E, 0x7E,
hirokuru 0:d7c2060a9a36 16 0x00, 0x7E, 0x7E, 0x7F, 0x78,
hirokuru 0:d7c2060a9a36 17 0x47, 0x3F, 0x47, 0x3F, 0x47,
hirokuru 0:d7c2060a9a36 18 0x78, 0x7F, 0x7F, 0x7F, 0x7F,
hirokuru 0:d7c2060a9a36 19 0x5D, 0x3A, 0x36, 0x4D, 0x7F,
hirokuru 0:d7c2060a9a36 20 0x43, 0x3F, 0x5F, 0x3F, 0x43,
hirokuru 0:d7c2060a9a36 21 0x7F, 0x02, 0x7F, 0x7D, 0x40,
hirokuru 0:d7c2060a9a36 22 0x3D, 0x5D, 0x7F, 0x47, 0x3B,
hirokuru 0:d7c2060a9a36 23 0x3B, 0x57, 0x7F, 0x00, 0x7B,
hirokuru 0:d7c2060a9a36 24 0x03, 0x7F, 0x47, 0x2B, 0x2B,
hirokuru 0:d7c2060a9a36 25 0x37, 0x7F, 0x37, 0x2B, 0x5B,
hirokuru 0:d7c2060a9a36 26 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
hirokuru 0:d7c2060a9a36 27 0x7f, 0x7f, 0x7f, 0x7f, 0x7f
hirokuru 0:d7c2060a9a36 28 }; //Message = "ITW Switches".
hirokuru 0:d7c2060a9a36 29
hirokuru 1:bde1037a0ee5 30
hirokuru 1:bde1037a0ee5 31
hirokuru 1:bde1037a0ee5 32
hirokuru 1:bde1037a0ee5 33
hirokuru 1:bde1037a0ee5 34
hirokuru 1:bde1037a0ee5 35
hirokuru 1:bde1037a0ee5 36
hirokuru 1:bde1037a0ee5 37
hirokuru 1:bde1037a0ee5 38
hirokuru 1:bde1037a0ee5 39
hirokuru 1:bde1037a0ee5 40
hirokuru 1:bde1037a0ee5 41
hirokuru 1:bde1037a0ee5 42
hirokuru 1:bde1037a0ee5 43
hirokuru 1:bde1037a0ee5 44
hirokuru 1:bde1037a0ee5 45
hirokuru 1:bde1037a0ee5 46
hirokuru 1:bde1037a0ee5 47
hirokuru 1:bde1037a0ee5 48
hirokuru 1:bde1037a0ee5 49
hirokuru 1:bde1037a0ee5 50
hirokuru 1:bde1037a0ee5 51
hirokuru 1:bde1037a0ee5 52
hirokuru 1:bde1037a0ee5 53
hirokuru 1:bde1037a0ee5 54
hirokuru 1:bde1037a0ee5 55
hirokuru 1:bde1037a0ee5 56 uint8_t D_dotGrayData[8][8] = {
hirokuru 1:bde1037a0ee5 57 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},//snow
hirokuru 1:bde1037a0ee5 58 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
hirokuru 1:bde1037a0ee5 59 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
hirokuru 1:bde1037a0ee5 60 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
hirokuru 1:bde1037a0ee5 61 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
hirokuru 1:bde1037a0ee5 62 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
hirokuru 1:bde1037a0ee5 63 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
hirokuru 1:bde1037a0ee5 64 {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
hirokuru 1:bde1037a0ee5 65 };
hirokuru 1:bde1037a0ee5 66 uint8_t D_dotDigitalData[8][8] = {
hirokuru 1:bde1037a0ee5 67 {0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},//snow
hirokuru 1:bde1037a0ee5 68 {0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00},
hirokuru 1:bde1037a0ee5 69 {0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00},
hirokuru 1:bde1037a0ee5 70 {0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
hirokuru 1:bde1037a0ee5 71 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
hirokuru 1:bde1037a0ee5 72 {0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01},
hirokuru 1:bde1037a0ee5 73 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
hirokuru 1:bde1037a0ee5 74 {0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00}
hirokuru 1:bde1037a0ee5 75 };
hirokuru 1:bde1037a0ee5 76
hirokuru 1:bde1037a0ee5 77 Timer timer; // data change timer
hirokuru 1:bde1037a0ee5 78
hirokuru 0:d7c2060a9a36 79 float count;
hirokuru 0:d7c2060a9a36 80 int ColCount;
hirokuru 0:d7c2060a9a36 81 int pattern;
hirokuru 0:d7c2060a9a36 82 int loop;
hirokuru 0:d7c2060a9a36 83 int index;
hirokuru 1:bde1037a0ee5 84 int i;
hirokuru 1:bde1037a0ee5 85 int k;
hirokuru 1:bde1037a0ee5 86
hirokuru 0:d7c2060a9a36 87 int main() {
hirokuru 0:d7c2060a9a36 88 i=0;
hirokuru 1:bde1037a0ee5 89 uint8_t seg;
hirokuru 1:bde1037a0ee5 90 uint8_t wk0, wk1, wk2, wk3, wk4, wk5, wk6, wk7;
hirokuru 1:bde1037a0ee5 91
hirokuru 1:bde1037a0ee5 92
hirokuru 0:d7c2060a9a36 93
hirokuru 1:bde1037a0ee5 94 while(1) {
hirokuru 0:d7c2060a9a36 95 index=0;
hirokuru 1:bde1037a0ee5 96 while (index<65) {//横方向移動回数(65)1だと停止
hirokuru 0:d7c2060a9a36 97 loop=0;
hirokuru 0:d7c2060a9a36 98 while (loop<8) {//スクロール速度初期値(4)
hirokuru 0:d7c2060a9a36 99
hirokuru 0:d7c2060a9a36 100 count = 1;
hirokuru 0:d7c2060a9a36 101 pattern = 0+index;
hirokuru 0:d7c2060a9a36 102 while (count<0x81) {//cols側の表示行数2進数ケタ数(20)
hirokuru 1:bde1037a0ee5 103 Cols = count;
hirokuru 1:bde1037a0ee5 104 if(i==0){
hirokuru 1:bde1037a0ee5 105 Rows = DotPattern1[pattern];
hirokuru 1:bde1037a0ee5 106 }else{if(i==1){
hirokuru 1:bde1037a0ee5 107 // After 500[ms] to start the process
hirokuru 1:bde1037a0ee5 108
hirokuru 1:bde1037a0ee5 109 timer.start();
hirokuru 1:bde1037a0ee5 110
hirokuru 1:bde1037a0ee5 111 while(k<6000) {
hirokuru 1:bde1037a0ee5 112
hirokuru 1:bde1037a0ee5 113 if(timer.read_ms() >= 500){
hirokuru 1:bde1037a0ee5 114 timer.reset();
hirokuru 1:bde1037a0ee5 115
hirokuru 1:bde1037a0ee5 116 // com0 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 117 wk0 = D_dotDigitalData[0][7];
hirokuru 1:bde1037a0ee5 118 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 119 D_dotDigitalData[0][seg] = D_dotDigitalData[0][seg - 1];
hirokuru 1:bde1037a0ee5 120 }
hirokuru 1:bde1037a0ee5 121 D_dotDigitalData[0][0] = wk0;
hirokuru 1:bde1037a0ee5 122
hirokuru 1:bde1037a0ee5 123 // com1 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 124 wk1 = D_dotDigitalData[1][7];
hirokuru 1:bde1037a0ee5 125 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 126 D_dotDigitalData[1][seg] = D_dotDigitalData[1][seg - 1];
hirokuru 1:bde1037a0ee5 127 }
hirokuru 1:bde1037a0ee5 128 D_dotDigitalData[1][0] = wk1;
hirokuru 1:bde1037a0ee5 129
hirokuru 1:bde1037a0ee5 130 // com2 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 131 wk2 = D_dotDigitalData[2][7];
hirokuru 1:bde1037a0ee5 132 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 133 D_dotDigitalData[2][seg] = D_dotDigitalData[2][seg - 1];
hirokuru 1:bde1037a0ee5 134 }
hirokuru 1:bde1037a0ee5 135 D_dotDigitalData[2][0] = wk2;
hirokuru 1:bde1037a0ee5 136
hirokuru 1:bde1037a0ee5 137 // com3 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 138 wk3 = D_dotDigitalData[3][7];
hirokuru 1:bde1037a0ee5 139 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 140 D_dotDigitalData[3][seg] = D_dotDigitalData[3][seg - 1];
hirokuru 1:bde1037a0ee5 141 }
hirokuru 1:bde1037a0ee5 142 D_dotDigitalData[3][0] = wk3;
hirokuru 1:bde1037a0ee5 143
hirokuru 1:bde1037a0ee5 144 // com4 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 145 wk4 = D_dotDigitalData[4][7];
hirokuru 1:bde1037a0ee5 146 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 147 D_dotDigitalData[4][seg] = D_dotDigitalData[4][seg - 1];
hirokuru 1:bde1037a0ee5 148 }
hirokuru 1:bde1037a0ee5 149 D_dotDigitalData[4][0] = wk4;
hirokuru 1:bde1037a0ee5 150
hirokuru 1:bde1037a0ee5 151 // com5 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 152 wk5 = D_dotDigitalData[5][7];
hirokuru 1:bde1037a0ee5 153 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 154 D_dotDigitalData[5][seg] = D_dotDigitalData[5][seg - 1];
hirokuru 1:bde1037a0ee5 155 }
hirokuru 1:bde1037a0ee5 156 D_dotDigitalData[5][0] = wk5;
hirokuru 1:bde1037a0ee5 157
hirokuru 1:bde1037a0ee5 158 // com6 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 159 wk6 = D_dotDigitalData[6][7];
hirokuru 1:bde1037a0ee5 160 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 161 D_dotDigitalData[6][seg] = D_dotDigitalData[6][seg - 1];
hirokuru 1:bde1037a0ee5 162 }
hirokuru 1:bde1037a0ee5 163 D_dotDigitalData[6][0] = wk6;
hirokuru 1:bde1037a0ee5 164
hirokuru 1:bde1037a0ee5 165 // com7 Led off to on smooth, on to off hard
hirokuru 1:bde1037a0ee5 166 wk7 = D_dotDigitalData[7][7];
hirokuru 1:bde1037a0ee5 167 for(seg = 7; seg > 0; seg--){
hirokuru 1:bde1037a0ee5 168 D_dotDigitalData[7][seg] = D_dotDigitalData[7][seg - 1];
hirokuru 1:bde1037a0ee5 169 }
hirokuru 1:bde1037a0ee5 170 D_dotDigitalData[7][0] = wk7;
hirokuru 1:bde1037a0ee5 171 }
hirokuru 1:bde1037a0ee5 172
hirokuru 1:bde1037a0ee5 173 // This function, please repeat the process in less than 1ms.
hirokuru 1:bde1037a0ee5 174 segmentled.EightDotMatrixLed_main((uint8_t*)D_dotGrayData, (uint8_t*)D_dotDigitalData);
hirokuru 1:bde1037a0ee5 175 k++;
hirokuru 1:bde1037a0ee5 176 }
hirokuru 1:bde1037a0ee5 177 }{
hirokuru 1:bde1037a0ee5 178 i=0;
hirokuru 1:bde1037a0ee5 179 k=0;
hirokuru 1:bde1037a0ee5 180 }
hirokuru 1:bde1037a0ee5 181
hirokuru 1:bde1037a0ee5 182 }
hirokuru 1:bde1037a0ee5 183
hirokuru 0:d7c2060a9a36 184 wait_ms(3);
hirokuru 0:d7c2060a9a36 185 count = count*2;
hirokuru 0:d7c2060a9a36 186 pattern++;
hirokuru 0:d7c2060a9a36 187 }
hirokuru 1:bde1037a0ee5 188 loop++;
hirokuru 1:bde1037a0ee5 189 }
hirokuru 1:bde1037a0ee5 190 index++;
hirokuru 0:d7c2060a9a36 191
hirokuru 0:d7c2060a9a36 192 }
hirokuru 1:bde1037a0ee5 193 i++;}
hirokuru 0:d7c2060a9a36 194 }
hirokuru 1:bde1037a0ee5 195
hirokuru 1:bde1037a0ee5 196
hirokuru 1:bde1037a0ee5 197
hirokuru 1:bde1037a0ee5 198
hirokuru 1:bde1037a0ee5 199
hirokuru 1:bde1037a0ee5 200
hirokuru 1:bde1037a0ee5 201
hirokuru 1:bde1037a0ee5 202
hirokuru 1:bde1037a0ee5 203
hirokuru 1:bde1037a0ee5 204
hirokuru 1:bde1037a0ee5 205
hirokuru 1:bde1037a0ee5 206
hirokuru 1:bde1037a0ee5 207
hirokuru 1:bde1037a0ee5 208
hirokuru 1:bde1037a0ee5 209
hirokuru 1:bde1037a0ee5 210
hirokuru 1:bde1037a0ee5 211