Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed Adafruit_LEDBackpack LedMatrix8x8Driver
main.cpp@0:77ef58f3a8d5, 2022-04-17 (annotated)
- Committer:
- osw
- Date:
- Sun Apr 17 14:11:54 2022 +0000
- Revision:
- 0:77ef58f3a8d5
1st commit
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| osw | 0:77ef58f3a8d5 | 1 | #include "mbed.h" |
| osw | 0:77ef58f3a8d5 | 2 | #include "Adafruit_LEDBackpack.h" |
| osw | 0:77ef58f3a8d5 | 3 | #include "Adafruit_GFX.h" |
| osw | 0:77ef58f3a8d5 | 4 | #include "math.h" |
| osw | 0:77ef58f3a8d5 | 5 | |
| osw | 0:77ef58f3a8d5 | 6 | #define SOURCE_FILE0 "/local/f0.bmp" |
| osw | 0:77ef58f3a8d5 | 7 | #define SOURCE_FILE1 "/local/f1.bmp" |
| osw | 0:77ef58f3a8d5 | 8 | #define SOURCE_FILE2 "/local/f2.bmp" |
| osw | 0:77ef58f3a8d5 | 9 | #define SOURCE_FILE3 "local/f3.bmp" |
| osw | 0:77ef58f3a8d5 | 10 | #define BUFFER_SIZE 1024 |
| osw | 0:77ef58f3a8d5 | 11 | |
| osw | 0:77ef58f3a8d5 | 12 | LocalFileSystem local("local"); |
| osw | 0:77ef58f3a8d5 | 13 | I2C i2c(p28,p27); |
| osw | 0:77ef58f3a8d5 | 14 | Adafruit_8x8matrix matrix = Adafruit_8x8matrix(&i2c); |
| osw | 0:77ef58f3a8d5 | 15 | |
| osw | 0:77ef58f3a8d5 | 16 | InterruptIn in0(p21); |
| osw | 0:77ef58f3a8d5 | 17 | InterruptIn in1(p22); |
| osw | 0:77ef58f3a8d5 | 18 | InterruptIn in2(p23); |
| osw | 0:77ef58f3a8d5 | 19 | InterruptIn in3(p24); |
| osw | 0:77ef58f3a8d5 | 20 | |
| osw | 0:77ef58f3a8d5 | 21 | float lx,ly; |
| osw | 0:77ef58f3a8d5 | 22 | |
| osw | 0:77ef58f3a8d5 | 23 | void allclear() |
| osw | 0:77ef58f3a8d5 | 24 | { |
| osw | 0:77ef58f3a8d5 | 25 | for(lx=0; lx<8; lx++) { |
| osw | 0:77ef58f3a8d5 | 26 | for(ly=0; ly<8; ly++) { |
| osw | 0:77ef58f3a8d5 | 27 | matrix.drawPixel(lx,ly,0, 1); |
| osw | 0:77ef58f3a8d5 | 28 | } |
| osw | 0:77ef58f3a8d5 | 29 | } |
| osw | 0:77ef58f3a8d5 | 30 | matrix.writeDisplay(); |
| osw | 0:77ef58f3a8d5 | 31 | } |
| osw | 0:77ef58f3a8d5 | 32 | |
| osw | 0:77ef58f3a8d5 | 33 | int otob(unsigned char red,unsigned char green,unsigned char blue ){ |
| osw | 0:77ef58f3a8d5 | 34 | int d; |
| osw | 0:77ef58f3a8d5 | 35 | int data; |
| osw | 0:77ef58f3a8d5 | 36 | d = (int)red + (int)green + (int)blue; |
| osw | 0:77ef58f3a8d5 | 37 | if(d==0) { |
| osw | 0:77ef58f3a8d5 | 38 | data=1; |
| osw | 0:77ef58f3a8d5 | 39 | } else { |
| osw | 0:77ef58f3a8d5 | 40 | data=0; |
| osw | 0:77ef58f3a8d5 | 41 | } |
| osw | 0:77ef58f3a8d5 | 42 | return data; |
| osw | 0:77ef58f3a8d5 | 43 | } |
| osw | 0:77ef58f3a8d5 | 44 | int btod(int hairetu[8]){ |
| osw | 0:77ef58f3a8d5 | 45 | int rtn; |
| osw | 0:77ef58f3a8d5 | 46 | rtn += hairetu[0]*128; |
| osw | 0:77ef58f3a8d5 | 47 | rtn += hairetu[1]*64; |
| osw | 0:77ef58f3a8d5 | 48 | rtn += hairetu[2]*32; |
| osw | 0:77ef58f3a8d5 | 49 | rtn += hairetu[3]*16; |
| osw | 0:77ef58f3a8d5 | 50 | rtn += hairetu[4]*8; |
| osw | 0:77ef58f3a8d5 | 51 | rtn += hairetu[5]*4; |
| osw | 0:77ef58f3a8d5 | 52 | rtn += hairetu[6]*2; |
| osw | 0:77ef58f3a8d5 | 53 | rtn += hairetu[7]*1; |
| osw | 0:77ef58f3a8d5 | 54 | return rtn; |
| osw | 0:77ef58f3a8d5 | 55 | } |
| osw | 0:77ef58f3a8d5 | 56 | |
| osw | 0:77ef58f3a8d5 | 57 | //defined variables |
| osw | 0:77ef58f3a8d5 | 58 | /*****************************************************************/ |
| osw | 0:77ef58f3a8d5 | 59 | typedef struct bmp_header_st { |
| osw | 0:77ef58f3a8d5 | 60 | unsigned short bfType __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 61 | unsigned long bfSize __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 62 | unsigned short bfReserved1 __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 63 | unsigned short bfReserved2 __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 64 | unsigned long bfOffBits __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 65 | |
| osw | 0:77ef58f3a8d5 | 66 | unsigned long biSize __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 67 | long biWidth __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 68 | long biHeight __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 69 | unsigned short biPlanes __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 70 | unsigned short biBitCount __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 71 | unsigned long biCompression __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 72 | unsigned long biSizeImage __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 73 | long biXPixPerMeter __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 74 | long biYPixPerMeter __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 75 | unsigned long biClrUsed __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 76 | unsigned long biCirImportant __attribute__((packed)); |
| osw | 0:77ef58f3a8d5 | 77 | } bmp_header; |
| osw | 0:77ef58f3a8d5 | 78 | |
| osw | 0:77ef58f3a8d5 | 79 | typedef struct color_palette_st { |
| osw | 0:77ef58f3a8d5 | 80 | unsigned char red; |
| osw | 0:77ef58f3a8d5 | 81 | unsigned char green; |
| osw | 0:77ef58f3a8d5 | 82 | unsigned char blue; |
| osw | 0:77ef58f3a8d5 | 83 | unsigned char dummy; |
| osw | 0:77ef58f3a8d5 | 84 | } color_palette; |
| osw | 0:77ef58f3a8d5 | 85 | |
| osw | 0:77ef58f3a8d5 | 86 | unsigned char buffer[ BUFFER_SIZE ]; |
| osw | 0:77ef58f3a8d5 | 87 | FILE *fs; |
| osw | 0:77ef58f3a8d5 | 88 | bmp_header bh; |
| osw | 0:77ef58f3a8d5 | 89 | color_palette cp[256]; |
| osw | 0:77ef58f3a8d5 | 90 | unsigned long readsize; |
| osw | 0:77ef58f3a8d5 | 91 | unsigned long i; |
| osw | 0:77ef58f3a8d5 | 92 | unsigned long ofset = 0; |
| osw | 0:77ef58f3a8d5 | 93 | |
| osw | 0:77ef58f3a8d5 | 94 | int x[24][8]; |
| osw | 0:77ef58f3a8d5 | 95 | int *px=&x[0][0]; |
| osw | 0:77ef58f3a8d5 | 96 | long a; |
| osw | 0:77ef58f3a8d5 | 97 | int y1[8], y2[8], y3[8], y4[8], y5[8], y6[8], y7[8], y8[8], y9[8], y10[8], y11[8], y12[8]; |
| osw | 0:77ef58f3a8d5 | 98 | int y13[8],y14[8],y15[8],y16[8],y17[8],y18[8],y19[8],y20[8],y21[8],y22[8], y23[8], y24[8]; |
| osw | 0:77ef58f3a8d5 | 99 | /****************************************************************************************/ |
| osw | 0:77ef58f3a8d5 | 100 | |
| osw | 0:77ef58f3a8d5 | 101 | int DatatoArray(){ |
| osw | 0:77ef58f3a8d5 | 102 | for(int num=0; num<8; num++) { |
| osw | 0:77ef58f3a8d5 | 103 | y1[num]=*(px+24*num); y2[num]=*((px+24*num)+1); y3[num]=*((px+24*num)+2); |
| osw | 0:77ef58f3a8d5 | 104 | y4[num]=*((px+24*num)+3); y5[num]=*((px+24*num)+4); y6[num]=*((px+24*num)+5); |
| osw | 0:77ef58f3a8d5 | 105 | y7[num]=*((px+24*num)+6); y8[num]=*((px+24*num)+7); y9[num]=*((px+24*num)+8); |
| osw | 0:77ef58f3a8d5 | 106 | y10[num]=*((px+24*num)+9); y11[num]=*((px+24*num)+10); y12[num]=*((px+24*num)+11); |
| osw | 0:77ef58f3a8d5 | 107 | y13[num]=*((px+24*num)+12); y14[num]=*((px+24*num)+13); y15[num]=*((px+24*num)+14); |
| osw | 0:77ef58f3a8d5 | 108 | y16[num]=*((px+24*num)+15); y17[num]=*((px+24*num)+16); y18[num]=*((px+24*num)+17); |
| osw | 0:77ef58f3a8d5 | 109 | y19[num]=*((px+24*num)+18); y20[num]=*((px+24*num)+19); y21[num]=*((px+24*num)+20); |
| osw | 0:77ef58f3a8d5 | 110 | y22[num]=*((px+24*num)+21); y23[num]=*((px+24*num)+22); y24[num]=*((px+24*num)+23); |
| osw | 0:77ef58f3a8d5 | 111 | } |
| osw | 0:77ef58f3a8d5 | 112 | } |
| osw | 0:77ef58f3a8d5 | 113 | |
| osw | 0:77ef58f3a8d5 | 114 | void kakikaki(){ |
| osw | 0:77ef58f3a8d5 | 115 | matrix.begin(0x71); allclear(); |
| osw | 0:77ef58f3a8d5 | 116 | for(int count = 0; count<8; count++) { |
| osw | 0:77ef58f3a8d5 | 117 | matrix.drawPixel(count,0,1,y1[count]); matrix.drawPixel(count,1,1,y2[count]); |
| osw | 0:77ef58f3a8d5 | 118 | matrix.drawPixel(count,2,1,y3[count]); matrix.drawPixel(count,3,1,y4[count]); |
| osw | 0:77ef58f3a8d5 | 119 | matrix.drawPixel(count,4,1,y5[count]); matrix.drawPixel(count,5,1,y6[count]); |
| osw | 0:77ef58f3a8d5 | 120 | matrix.drawPixel(count,6,1,y7[count]); matrix.drawPixel(count,7,1,y8[count]); |
| osw | 0:77ef58f3a8d5 | 121 | } |
| osw | 0:77ef58f3a8d5 | 122 | matrix.writeDisplay(); wait_ms(250); matrix.clear(); |
| osw | 0:77ef58f3a8d5 | 123 | |
| osw | 0:77ef58f3a8d5 | 124 | matrix.begin(0x72); allclear(); |
| osw | 0:77ef58f3a8d5 | 125 | for(int count = 0; count<8; count++) { |
| osw | 0:77ef58f3a8d5 | 126 | matrix.drawPixel(count,0,1,y9[count]); matrix.drawPixel(count,1,1,y10[count]); |
| osw | 0:77ef58f3a8d5 | 127 | matrix.drawPixel(count,2,1,y11[count]); matrix.drawPixel(count,3,1,y12[count]); |
| osw | 0:77ef58f3a8d5 | 128 | matrix.drawPixel(count,4,1,y13[count]); matrix.drawPixel(count,5,1,y14[count]); |
| osw | 0:77ef58f3a8d5 | 129 | matrix.drawPixel(count,6,1,y15[count]); matrix.drawPixel(count,7,1,y16[count]); |
| osw | 0:77ef58f3a8d5 | 130 | } |
| osw | 0:77ef58f3a8d5 | 131 | matrix.writeDisplay(); wait_ms(250); matrix.clear(); |
| osw | 0:77ef58f3a8d5 | 132 | |
| osw | 0:77ef58f3a8d5 | 133 | matrix.begin(0x74); allclear(); |
| osw | 0:77ef58f3a8d5 | 134 | for(int count = 0; count<8; count++) { |
| osw | 0:77ef58f3a8d5 | 135 | matrix.drawPixel(count,0,1,y17[count]); matrix.drawPixel(count,1,1,y18[count]); |
| osw | 0:77ef58f3a8d5 | 136 | matrix.drawPixel(count,2,1,y19[count]); matrix.drawPixel(count,3,1,y20[count]); |
| osw | 0:77ef58f3a8d5 | 137 | matrix.drawPixel(count,4,1,y21[count]); matrix.drawPixel(count,5,1,y22[count]); |
| osw | 0:77ef58f3a8d5 | 138 | matrix.drawPixel(count,6,1,y23[count]); matrix.drawPixel(count,7,1,y24[count]); |
| osw | 0:77ef58f3a8d5 | 139 | } |
| osw | 0:77ef58f3a8d5 | 140 | matrix.writeDisplay(); wait_ms(250); matrix.clear(); |
| osw | 0:77ef58f3a8d5 | 141 | } |
| osw | 0:77ef58f3a8d5 | 142 | |
| osw | 0:77ef58f3a8d5 | 143 | int HiperRead0(){ |
| osw | 0:77ef58f3a8d5 | 144 | if ( NULL == (fs = fopen( SOURCE_FILE0, "rb" )) ) { |
| osw | 0:77ef58f3a8d5 | 145 | printf( "file open error when oening file \"%s\"\r\n", SOURCE_FILE0 ); |
| osw | 0:77ef58f3a8d5 | 146 | return ( 1 ); |
| osw | 0:77ef58f3a8d5 | 147 | } |
| osw | 0:77ef58f3a8d5 | 148 | fread( &bh, sizeof( bh ), 1, fs ); |
| osw | 0:77ef58f3a8d5 | 149 | |
| osw | 0:77ef58f3a8d5 | 150 | for(i = 0; i < 256; i++) { fread( &(cp[i]), sizeof( color_palette ), 1, fs ); } |
| osw | 0:77ef58f3a8d5 | 151 | |
| osw | 0:77ef58f3a8d5 | 152 | while ( 0 != (readsize = fread( buffer, sizeof( unsigned char ), BUFFER_SIZE, fs)) ) { |
| osw | 0:77ef58f3a8d5 | 153 | int data[readsize]; |
| osw | 0:77ef58f3a8d5 | 154 | printf("%ld\r\n",readsize); |
| osw | 0:77ef58f3a8d5 | 155 | for ( i = 0; i < readsize; i++ ) { |
| osw | 0:77ef58f3a8d5 | 156 | data[i] = otob( cp[ buffer[i] ].red, cp[ buffer[i] ].green, cp[ buffer[i] ].blue); |
| osw | 0:77ef58f3a8d5 | 157 | ofset++; |
| osw | 0:77ef58f3a8d5 | 158 | } |
| osw | 0:77ef58f3a8d5 | 159 | for(int size=0; size<readsize/8; size++) { |
| osw | 0:77ef58f3a8d5 | 160 | int b=8*size; |
| osw | 0:77ef58f3a8d5 | 161 | for(a = b; a<(b+8); a++) { x[size][a-b] = data[a]; } |
| osw | 0:77ef58f3a8d5 | 162 | } |
| osw | 0:77ef58f3a8d5 | 163 | for(int g=0; g<readsize; g++) { |
| osw | 0:77ef58f3a8d5 | 164 | printf("%d",*(px+g)); |
| osw | 0:77ef58f3a8d5 | 165 | if( ((g+1)%24) ==0 && g!=0) { printf("\r\n"); } |
| osw | 0:77ef58f3a8d5 | 166 | } |
| osw | 0:77ef58f3a8d5 | 167 | } |
| osw | 0:77ef58f3a8d5 | 168 | printf( "\r\ndone.\r\n\r\n" ); fclose(fs); |
| osw | 0:77ef58f3a8d5 | 169 | |
| osw | 0:77ef58f3a8d5 | 170 | DatatoArray(); kakikaki(); |
| osw | 0:77ef58f3a8d5 | 171 | return 0; |
| osw | 0:77ef58f3a8d5 | 172 | } |
| osw | 0:77ef58f3a8d5 | 173 | |
| osw | 0:77ef58f3a8d5 | 174 | int HiperRead1(){ |
| osw | 0:77ef58f3a8d5 | 175 | if ( NULL == (fs = fopen( SOURCE_FILE1, "rb" )) ) { |
| osw | 0:77ef58f3a8d5 | 176 | printf( "file open error when oening file \"%s\"\r\n", SOURCE_FILE1 ); |
| osw | 0:77ef58f3a8d5 | 177 | return ( 1 ); |
| osw | 0:77ef58f3a8d5 | 178 | } |
| osw | 0:77ef58f3a8d5 | 179 | fread( &bh, sizeof( bh ), 1, fs ); |
| osw | 0:77ef58f3a8d5 | 180 | |
| osw | 0:77ef58f3a8d5 | 181 | for(i = 0; i < 256; i++) { fread( &(cp[i]), sizeof( color_palette ), 1, fs ); } |
| osw | 0:77ef58f3a8d5 | 182 | |
| osw | 0:77ef58f3a8d5 | 183 | while ( 0 != (readsize = fread( buffer, sizeof( unsigned char ), BUFFER_SIZE, fs)) ) { |
| osw | 0:77ef58f3a8d5 | 184 | int data[readsize]; |
| osw | 0:77ef58f3a8d5 | 185 | printf("%ld\r\n",readsize); |
| osw | 0:77ef58f3a8d5 | 186 | for ( i = 0; i < readsize; i++ ) { |
| osw | 0:77ef58f3a8d5 | 187 | data[i] = otob( cp[ buffer[i] ].red, cp[ buffer[i] ].green, cp[ buffer[i] ].blue); |
| osw | 0:77ef58f3a8d5 | 188 | ofset++; |
| osw | 0:77ef58f3a8d5 | 189 | } |
| osw | 0:77ef58f3a8d5 | 190 | for(int size=0; size<readsize/8; size++) { |
| osw | 0:77ef58f3a8d5 | 191 | int b=8*size; |
| osw | 0:77ef58f3a8d5 | 192 | for( a = b; a<(b+8); a++ ){ x[size][a-b] = data[a]; } |
| osw | 0:77ef58f3a8d5 | 193 | } |
| osw | 0:77ef58f3a8d5 | 194 | for(int g=0; g<readsize; g++) { |
| osw | 0:77ef58f3a8d5 | 195 | printf("%d",*(px+g)); |
| osw | 0:77ef58f3a8d5 | 196 | if( ((g+1)%24) ==0 && g!=0 ){ printf("\r\n"); } |
| osw | 0:77ef58f3a8d5 | 197 | } |
| osw | 0:77ef58f3a8d5 | 198 | } |
| osw | 0:77ef58f3a8d5 | 199 | printf( "\r\ndone.\r\n\r\n" ); fclose(fs); |
| osw | 0:77ef58f3a8d5 | 200 | |
| osw | 0:77ef58f3a8d5 | 201 | DatatoArray(); kakikaki(); |
| osw | 0:77ef58f3a8d5 | 202 | return 0; |
| osw | 0:77ef58f3a8d5 | 203 | } |
| osw | 0:77ef58f3a8d5 | 204 | |
| osw | 0:77ef58f3a8d5 | 205 | int HiperRead2(){ |
| osw | 0:77ef58f3a8d5 | 206 | if ( NULL == (fs = fopen( SOURCE_FILE2, "rb" )) ) { |
| osw | 0:77ef58f3a8d5 | 207 | printf( "file open error when oening file \"%s\"\r\n", SOURCE_FILE2 ); |
| osw | 0:77ef58f3a8d5 | 208 | return ( 1 ); |
| osw | 0:77ef58f3a8d5 | 209 | } |
| osw | 0:77ef58f3a8d5 | 210 | fread( &bh, sizeof( bh ), 1, fs ); |
| osw | 0:77ef58f3a8d5 | 211 | |
| osw | 0:77ef58f3a8d5 | 212 | for(i = 0; i < 256; i++) { fread( &(cp[i]), sizeof( color_palette ), 1, fs ); } |
| osw | 0:77ef58f3a8d5 | 213 | |
| osw | 0:77ef58f3a8d5 | 214 | while ( 0 != (readsize = fread( buffer, sizeof( unsigned char ), BUFFER_SIZE, fs)) ) { |
| osw | 0:77ef58f3a8d5 | 215 | int data[readsize]; |
| osw | 0:77ef58f3a8d5 | 216 | printf("%ld\r\n",readsize); |
| osw | 0:77ef58f3a8d5 | 217 | for ( i = 0; i < readsize; i++ ) { |
| osw | 0:77ef58f3a8d5 | 218 | data[i] = otob( cp[ buffer[i] ].red, cp[ buffer[i] ].green, cp[ buffer[i] ].blue); |
| osw | 0:77ef58f3a8d5 | 219 | ofset++; |
| osw | 0:77ef58f3a8d5 | 220 | } |
| osw | 0:77ef58f3a8d5 | 221 | for(int size=0; size<readsize/8; size++) { |
| osw | 0:77ef58f3a8d5 | 222 | int b=8*size; |
| osw | 0:77ef58f3a8d5 | 223 | for(a = b; a<(b+8); a++) { x[size][a-b] = data[a]; } |
| osw | 0:77ef58f3a8d5 | 224 | } |
| osw | 0:77ef58f3a8d5 | 225 | for(int g=0; g<readsize; g++) { |
| osw | 0:77ef58f3a8d5 | 226 | printf("%d",*(px+g)); |
| osw | 0:77ef58f3a8d5 | 227 | if( ((g+1)%24) ==0 && g!=0) { printf("\r\n"); } |
| osw | 0:77ef58f3a8d5 | 228 | } |
| osw | 0:77ef58f3a8d5 | 229 | } |
| osw | 0:77ef58f3a8d5 | 230 | printf( "\r\ndone.\r\n\r\n" ); fclose(fs); |
| osw | 0:77ef58f3a8d5 | 231 | |
| osw | 0:77ef58f3a8d5 | 232 | DatatoArray(); kakikaki(); |
| osw | 0:77ef58f3a8d5 | 233 | return 0; |
| osw | 0:77ef58f3a8d5 | 234 | } |
| osw | 0:77ef58f3a8d5 | 235 | |
| osw | 0:77ef58f3a8d5 | 236 | int HiperRead3(){ |
| osw | 0:77ef58f3a8d5 | 237 | if ( NULL == (fs = fopen( SOURCE_FILE3, "rb" )) ) { |
| osw | 0:77ef58f3a8d5 | 238 | printf( "file open error when oening file \"%s\"\r\n", SOURCE_FILE3 ); |
| osw | 0:77ef58f3a8d5 | 239 | return ( 1 ); |
| osw | 0:77ef58f3a8d5 | 240 | } |
| osw | 0:77ef58f3a8d5 | 241 | fread( &bh, sizeof( bh ), 1, fs ); |
| osw | 0:77ef58f3a8d5 | 242 | |
| osw | 0:77ef58f3a8d5 | 243 | for(i = 0; i < 256; i++) { fread( &(cp[i]), sizeof( color_palette ), 1, fs ); } |
| osw | 0:77ef58f3a8d5 | 244 | |
| osw | 0:77ef58f3a8d5 | 245 | while ( 0 != (readsize = fread( buffer, sizeof( unsigned char ), BUFFER_SIZE, fs)) ) { |
| osw | 0:77ef58f3a8d5 | 246 | int data[readsize]; |
| osw | 0:77ef58f3a8d5 | 247 | printf("%ld\r\n",readsize); |
| osw | 0:77ef58f3a8d5 | 248 | for ( i = 0; i < readsize; i++ ) { |
| osw | 0:77ef58f3a8d5 | 249 | data[i] = otob( cp[ buffer[i] ].red, cp[ buffer[i] ].green, cp[ buffer[i] ].blue); |
| osw | 0:77ef58f3a8d5 | 250 | ofset++; |
| osw | 0:77ef58f3a8d5 | 251 | } |
| osw | 0:77ef58f3a8d5 | 252 | for(int size=0; size<readsize/8; size++) { |
| osw | 0:77ef58f3a8d5 | 253 | int b=8*size; |
| osw | 0:77ef58f3a8d5 | 254 | for(a = b; a<(b+8); a++) { x[size][a-b] = data[a]; } |
| osw | 0:77ef58f3a8d5 | 255 | } |
| osw | 0:77ef58f3a8d5 | 256 | for(int g=0; g<readsize; g++) { |
| osw | 0:77ef58f3a8d5 | 257 | printf("%d",*(px+g)); |
| osw | 0:77ef58f3a8d5 | 258 | if( ((g+1)%24) ==0 && g!=0) { printf("\r\n"); } |
| osw | 0:77ef58f3a8d5 | 259 | } |
| osw | 0:77ef58f3a8d5 | 260 | } |
| osw | 0:77ef58f3a8d5 | 261 | printf( "\r\ndone.\r\n\r\n" ); fclose(fs); |
| osw | 0:77ef58f3a8d5 | 262 | |
| osw | 0:77ef58f3a8d5 | 263 | DatatoArray(); kakikaki(); |
| osw | 0:77ef58f3a8d5 | 264 | return 0; |
| osw | 0:77ef58f3a8d5 | 265 | } |
| osw | 0:77ef58f3a8d5 | 266 | |
| osw | 0:77ef58f3a8d5 | 267 | void rin0(){ HiperRead0(); } |
| osw | 0:77ef58f3a8d5 | 268 | void rin1(){ HiperRead1(); } |
| osw | 0:77ef58f3a8d5 | 269 | void rin2(){ HiperRead2(); } |
| osw | 0:77ef58f3a8d5 | 270 | void rin3(){ HiperRead3(); } |
| osw | 0:77ef58f3a8d5 | 271 | |
| osw | 0:77ef58f3a8d5 | 272 | int main(){ |
| osw | 0:77ef58f3a8d5 | 273 | in0.rise(&rin0); in1.rise(&rin1); in2.rise(&rin2); in3.rise(&rin3); |
| osw | 0:77ef58f3a8d5 | 274 | |
| osw | 0:77ef58f3a8d5 | 275 | while(1){ |
| osw | 0:77ef58f3a8d5 | 276 | printf("waiting\r\n"); |
| osw | 0:77ef58f3a8d5 | 277 | wait(10); |
| osw | 0:77ef58f3a8d5 | 278 | } |
| osw | 0:77ef58f3a8d5 | 279 | } |