Generates Braille Text and has it display on an RGB LED Matrix
Fork of LEDmatrix by
Diff: main.cpp
- Revision:
- 1:0ca4d6b1e3d7
- Parent:
- 0:ad2e87d4b20e
--- a/main.cpp Sat Apr 20 20:05:35 2013 +0000 +++ b/main.cpp Fri May 10 17:34:39 2013 +0000 @@ -8,93 +8,401 @@ DigitalOut cs1(p18); /*volatile uint8_t arrow_green_right[] = { - 0, 0, 0, 1, 1, 1, 0, 0, - 0, 0, 0, 1, 1, 1, 0, 0, - 0, 0, 0, 1, 1, 1, 0, 0, - 0, 0, 0, 1, 1, 1, 0, 0, - 0, 0, 0, 1, 1, 1, 0, 0, - 0, 1, 0, 1, 1, 1, 0, 1, - 0, 0, 1, 1, 1, 1, 1, 0, - 0, 0, 0, 1, 1, 1, 0, 0, + 0, 0, 0, 1, 1, 1, 0, 0, + 0, 0, 0, 1, 1, 1, 0, 0, + 0, 0, 0, 1, 1, 1, 0, 0, + 0, 0, 0, 1, 1, 1, 0, 0, + 0, 0, 0, 1, 1, 1, 0, 0, + 0, 1, 0, 1, 1, 1, 0, 1, + 0, 0, 1, 1, 1, 1, 1, 0, + 0, 0, 0, 1, 1, 1, 0, 0, };*/ volatile uint8_t arrow_red_left[] = { - 0, 0, 0, 224, 224, 224, 0, 0, - 0, 0, 224, 224, 224, 224, 224, 0, - 0, 224, 0, 224, 224, 224, 0, 224, - 0, 0, 0, 224, 224, 224, 0, 0, - 0, 0, 0, 224, 224, 224, 0, 0, - 0, 0, 0, 224, 224, 224, 0, 0, - 0, 0, 0, 224, 224, 224, 0, 0, - 0, 0, 0, 224, 224, 224, 0, 0, + 0, 0, 0, 224, 224, 224, 0, 0, + 0, 0, 224, 224, 224, 224, 224, 0, + 0, 224, 0, 224, 224, 224, 0, 224, + 0, 0, 0, 224, 224, 224, 0, 0, + 0, 0, 0, 224, 224, 224, 0, 0, + 0, 0, 0, 224, 224, 224, 0, 0, + 0, 0, 0, 224, 224, 224, 0, 0, + 0, 0, 0, 224, 224, 224, 0, 0, }; volatile uint8_t arrow_blue_left[] = { - 0, 0, 0, 3, 3, 3, 0, 0, - 0, 0, 3, 3, 3, 3, 3, 0, - 0, 3, 0, 3, 3, 3, 0, 3, - 0, 0, 0, 3, 3, 3, 0, 0, - 0, 0, 0, 3, 3, 3, 0, 0, - 0, 0, 0, 3, 3, 3, 0, 0, - 0, 0, 0, 3, 3, 3, 0, 0, - 0, 0, 0, 3, 3, 3, 0, 0, + 0, 0, 0, 3, 3, 3, 0, 0, + 0, 0, 3, 3, 3, 3, 3, 0, + 0, 3, 0, 3, 3, 3, 0, 3, + 0, 0, 0, 3, 3, 3, 0, 0, + 0, 0, 0, 3, 3, 3, 0, 0, + 0, 0, 0, 3, 3, 3, 0, 0, + 0, 0, 0, 3, 3, 3, 0, 0, + 0, 0, 0, 3, 3, 3, 0, 0, }; volatile uint8_t arrow_white_left[] = { - 0, 0, 0, 95, 95, 95, 0, 0, - 0, 0, 95, 95, 95, 95, 95, 0, - 0, 95, 0, 95, 95, 95, 0, 95, - 0, 0, 0, 95, 95, 95, 0, 0, - 0, 0, 0, 95, 95, 95, 0, 0, - 0, 0, 0, 95, 95, 95, 0, 0, - 0, 0, 0, 95, 95, 95, 0, 0, - 0, 0, 0, 95, 95, 95, 0, 0, + 0, 0, 0, 95, 95, 95, 0, 0, + 0, 0, 95, 95, 95, 95, 95, 0, + 0, 95, 0, 95, 95, 95, 0, 95, + 0, 0, 0, 95, 95, 95, 0, 0, + 0, 0, 0, 95, 95, 95, 0, 0, + 0, 0, 0, 95, 95, 95, 0, 0, + 0, 0, 0, 95, 95, 95, 0, 0, + 0, 0, 0, 95, 95, 95, 0, 0, }; volatile uint8_t arrow_white_up[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 95, 0, 0, - 0, 0, 0, 0, 0, 0, 95, 0, - 0, 95, 95, 95, 95, 95, 95, 95, - 0, 95, 95, 95, 95, 95, 95, 95, - 95, 95, 95, 95, 95, 95, 95, 95, - 0, 0, 0, 0, 0, 0, 95, 0, - 0, 0, 0, 0, 0, 95, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 95, 0, 0, + 0, 0, 0, 0, 0, 0, 95, 0, + 0, 95, 95, 95, 95, 95, 95, 95, + 0, 95, 95, 95, 95, 95, 95, 95, + 95, 95, 95, 95, 95, 95, 95, 95, + 0, 0, 0, 0, 0, 0, 95, 0, + 0, 0, 0, 0, 0, 95, 0, 0, }; volatile uint8_t arrow_blue_up[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 0, 3, 3, 3, 3, 3, 3, 3, - 0, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, - 0, 0, 0, 0, 0, 0, 3, 0, - 0, 0, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 0, 0, 3, 0, + 0, 3, 3, 3, 3, 3, 3, 3, + 0, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, + 0, 0, 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 3, 0, 0, }; volatile uint8_t arrow_white_down[] = { - 0, 0, 0, 0, 95, 0, 0, 0, - 0, 0, 0, 95, 0, 0, 0, 0, - 0, 0, 95, 95, 95, 95, 95, 95, - 95, 95, 95, 95, 95, 95, 95, 95, - 95, 0, 95, 95, 95, 95, 95, 95, - 95, 0, 0, 95, 0, 0, 0, 0, - 0, 0, 0, 0, 95, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 95, 0, 0, 0, + 0, 0, 0, 95, 0, 0, 0, 0, + 0, 0, 95, 95, 95, 95, 95, 95, + 95, 95, 95, 95, 95, 95, 95, 95, + 95, 0, 95, 95, 95, 95, 95, 95, + 95, 0, 0, 95, 0, 0, 0, 0, + 0, 0, 0, 0, 95, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, }; volatile uint8_t arrow_blue_down[] = { - 0, 0, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, - 3, 0, 3, 3, 3, 3, 3, 3, - 3, 0, 0, 3, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, + 3, 0, 3, 3, 3, 3, 3, 3, + 3, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; + +volatile uint8_t smiley_face[] = { + 0, 0, 0, 95, 95, 95, 0, 0, + 0, 0, 95, 95, 0, 95, 95, 0, + 0, 0, 95, 95, 0, 95, 95, 0, + 0, 0, 95, 95, 0, 0, 0, 0, + 0, 0, 0, 95, 95, 0, 0, 0, + 0, 0, 0, 95, 95, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 95, 95, 0, 0, 0, +}; + +volatile uint8_t smiley_smiley[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 95, 0, 0, 95, 0, 0, + 0, 0, 95, 0, 0, 95, 0, 0, + 0, 0, 95, 0, 0, 95, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 95, 0, 0, 0, 0, 95, 0, + 0, 95, 0, 0, 0, 0, 95, 0, + 0, 95, 95, 95, 95, 95, 95, 0, +}; + +volatile uint8_t blank[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; + +volatile uint8_t letter_a[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 255, 255, 25, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 255, 255, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, +}; + +volatile uint8_t letter_b[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 255, 255, 255, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 255, 255, 255, 25, 25, +}; + +volatile uint8_t letter_c[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 255, 255, 255, 25, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 25, 255, 255, 255, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + +volatile uint8_t letter_d[] = { + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 255, 255, 255, 25, + 25, 25, 25, 255, 25, 25, 255, 25, + 25, 25, 25, 255, 25, 25, 255, 25, + 25, 25, 25, 255, 255, 255, 255, 25, +}; + +volatile uint8_t letter_e[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 255, 255, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 255, 255, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 255, 255, 255, 25, +}; + +volatile uint8_t letter_f[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 255, 255, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 255, 255, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, +}; + +volatile uint8_t letter_g[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 255, 255, 255, 25, 25, + 25, 25, 25, 255, 25, 255, 25, 25, + 25, 25, 25, 255, 255, 255, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 255, 25, 25, + 25, 25, 25, 255, 255, 255, 25, 25, +}; +volatile uint8_t letter_h[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 255, 25, 25, 255, 25, 25, 25, + 25, 255, 25, 25, 255, 25, 25, 25, + 25, 255, 25, 25, 255, 25, 25, 25, + 25, 255, 255, 255, 255, 25, 25, 25, + 25, 255, 25, 25, 255, 25, 25, 25, + 25, 255, 25, 25, 255, 25, 25, 25, + 25, 255, 25, 25, 255, 25, 25, 25, +}; +volatile uint8_t letter_i[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 25, 25, 25, +}; +volatile uint8_t letter_j[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 255, 255, 255, 255, 255, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 255, 25, 25, + 25, 25, 25, 255, 255, 255, 25, 25, +}; +volatile uint8_t letter_k[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 25, 255, 25, 255, 25, 25, + 25, 25, 25, 25, 255, 255, 25, 25, + 25, 25, 25, 25, 255, 255, 25, 25, + 25, 25, 25, 255, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, }; -int main() +volatile uint8_t letter_l[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 255, 255, 255, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_m[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 255, 255, 255, 255, 255, 255, 255, + 25, 255, 25, 25, 255, 25, 25, 255, + 25, 255, 25, 25, 255, 25, 25, 255, + 25, 255, 25, 25, 255, 25, 25, 255, + 25, 255, 25, 25, 25, 25, 25, 255, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_n[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 255, 25, 25, 255, 255, 25, + 25, 25, 255, 25, 255, 25, 255, 25, + 25, 25, 255, 255, 25, 25, 255, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_o[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 255, 25, 25, + 25, 255, 25, 25, 25, 25, 255, 25, + 25, 255, 25, 25, 25, 25, 255, 25, + 25, 255, 25, 25, 25, 25, 255, 25, + 25, 255, 25, 25, 25, 25, 255, 25, + 25, 25, 255, 255, 255, 255, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_p[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 25, 25, 25, + 25, 25, 255, 25, 255, 25, 25, 25, + 25, 25, 255, 255, 255, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_q[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 25, 25, 25, + 25, 25, 255, 25, 255, 25, 25, 25, + 25, 25, 255, 255, 255, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 25, 25, + 25, 255, 255, 255, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_r[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_s[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 255, 25, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 255, 25, + 25, 25, 255, 255, 255, 255, 255, 25, + 25, 25, 255, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 255, 255, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; +volatile uint8_t letter_t[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 255, 255, 255, 255, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + +volatile uint8_t letter_u[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 255, 255, 255, 255, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + +volatile uint8_t letter_v[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 25, 255, 25, 255, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + +volatile uint8_t letter_w[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 255, 25, 25, 25, 255, 25, 25, + 25, 255, 25, 25, 25, 255, 25, 25, + 25, 255, 25, 255, 25, 255, 25, 25, + 25, 255, 25, 255, 25, 255, 25, 25, + 25, 255, 255, 255, 255, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + +volatile uint8_t letter_x[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 255, 25, 25, 25, 25, 255, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 25, 25, 255, 255, 25, 25, 25, + 25, 25, 25, 255, 255, 25, 25, 25, + 25, 25, 255, 25, 25, 255, 25, 25, + 25, 255, 25, 25, 25, 25, 255, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + +volatile uint8_t letter_y[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 255, 25, 25, 25, 255, 25, + 25, 25, 25, 255, 25, 255, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + +volatile uint8_t letter_z[] = { + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 255, 255, 255, 255, 255, 25, 25, + 25, 25, 255, 25, 25, 25, 25, 25, + 25, 25, 25, 255, 25, 25, 25, 25, + 25, 25, 25, 25, 255, 25, 25, 25, + 25, 25, 25, 25, 25, 255, 25, 25, + 25, 255, 255, 255, 255, 255, 255, 25, + 25, 25, 25, 25, 25, 25, 25, 25, +}; + + +int main() { // Setup the spi for 8 bit data, high steady state clock, // second edge capture, with a 100kHz clock rate @@ -110,116 +418,646 @@ spi1.frequency(100000); //draw_pattern(0); //draw_pattern(1); - draw_pattern(2); - draw_pattern(3); + // draw_pattern(2); + + while(1) { + draw_pattern(5); + //wait(2); + draw_pattern(6); + // wait(2); + draw_pattern(7); + //wait(2); + draw_pattern(8); + draw_pattern(9); + draw_pattern(10); + draw_pattern(11); + draw_pattern(12); + draw_pattern(13); + draw_pattern(14); + draw_pattern(15); + draw_pattern(16); + draw_pattern(17); + draw_pattern(18); + draw_pattern(19); + draw_pattern(20); + draw_pattern(21); + draw_pattern(22); + draw_pattern(23); + draw_pattern(24); + draw_pattern(25); + draw_pattern(26); + draw_pattern(27); + draw_pattern(28); + draw_pattern(29); + draw_pattern(30); + } } void draw_pattern(int pattern) { - switch(pattern) - { - case 0: - { - while(1) - { - cs = 0; - //cs1 = 0; - myled = 0; - wait_ms(0.5); - for(int k = 0; k<65;k++ ) - { - spi.write(arrow_blue_down[k+1]); - //spi1.write(arrow_blue_up[k+1]); - } - wait_ms(0.5); - cs = 1; - //cs1 = 1; - } - - /* { - cs = 0; - //cs1 = 0; - myled = 0; - wait_ms(0.5); - for(int k = 0; k<65;k++ ) - { - spi.write(arrow_blue_up[k+1]); - //spi1.write(arrow_blue_up[k+1]); - } - wait_ms(0.5); - cs = 1; - //cs1 = 1; - }*/ - - + switch(pattern) { + case 0: { + while(1) { + cs = 0; + //cs1 = 0; + myled = 0; + wait_ms(0.5); + for(int k = 0; k<65; k++ ) { + spi.write(arrow_blue_down[k+1]); + //spi1.write(arrow_blue_up[k+1]); + } + wait_ms(0.5); + cs = 1; + //cs1 = 1; + } + + /* { + cs = 0; + //cs1 = 0; + myled = 0; + wait_ms(0.5); + for(int k = 0; k<65;k++ ) + { + spi.write(arrow_blue_up[k+1]); + //spi1.write(arrow_blue_up[k+1]); + } + wait_ms(0.5); + cs = 1; + //cs1 = 1; + }*/ + + + } + case 1: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(arrow_red_left[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(1); + i++; + } while(i<10); + break; + } + case 2: { + int i=0; + do { + cs1 = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi1.write(arrow_white_up[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs1 = 1; + myled=0; + wait(1); + i++; + } while(i<10); + break; + } + case 3: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(arrow_white_down[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(1); + i++; + } while(i<10); + break; + } + case 4: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(smiley_smiley[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(1); + i++; + } while(i<10); + break; + } + case 5: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_a[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 6: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_b[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; } - case 1: - { + case 7: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_c[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 8: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_d[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 9: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_e[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 10: { int i=0; - do - { - cs = 0; - //cs1 = 0; - myled = 1; - wait_ms(0.5); - for(int k=0;k<65;k++) - { - spi.write(arrow_red_left[k+1]); - //spi1.write(image[k+1]); - } - wait_ms(0.5); - cs = 1; - myled=0; - wait(1); - i++; - }while(i<10); + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_f[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 11: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_g[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 12: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_h[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 13: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_i[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 14: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_j[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); break; } - case 2: - { + case 15: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_k[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 16: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_l[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 17: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_m[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 18: { int i=0; - do - { - cs1 = 0; - //cs1 = 0; - myled = 1; - wait_ms(0.5); - for(int k=0;k<65;k++) - { - spi1.write(arrow_white_up[k+1]); - //spi1.write(image[k+1]); - } - wait_ms(0.5); - cs1 = 1; - myled=0; - wait(1); - i++; - }while(i<10); + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_n[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 19: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_o[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 20: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_p[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 21: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_q[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 22: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_r[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); break; } - - case 3: - { + case 23: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_s[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 24: { int i=0; - do - { - cs = 0; - //cs1 = 0; - myled = 1; - wait_ms(0.5); - for(int k=0;k<65;k++) - { - spi.write(arrow_white_down[k+1]); - //spi1.write(image[k+1]); - } - wait_ms(0.5); - cs = 1; - myled=0; - wait(1); - i++; - }while(i<10); + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_t[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 25: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_u[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 26: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_v[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); break; } - } + case 27: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_w[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 28: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_x[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 29: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_y[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + case 30: { + int i=0; + do { + cs = 0; + //cs1 = 0; + myled = 1; + wait_ms(0.5); + for(int k=0; k<65; k++) { + spi.write(letter_z[k+1]); + //spi1.write(image[k+1]); + } + wait_ms(0.5); + cs = 1; + myled=0; + wait(0.5); + i++; + } while(i<4); + break; + } + }//ACTUAL END }