Mbed Program for Gatech 4180 Shiftbrite LED Rotation Display

Dependencies:   mbed

Committer:
kbahar3
Date:
Wed Dec 14 22:11:49 2011 +0000
Revision:
0:0499f4bb7fa5

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kbahar3 0:0499f4bb7fa5 1 /* ----- 4180 Final Design Project -----
kbahar3 0:0499f4bb7fa5 2 Bicycle Wheel LED Image Display
kbahar3 0:0499f4bb7fa5 3 */
kbahar3 0:0499f4bb7fa5 4 #include "mbed.h"
kbahar3 0:0499f4bb7fa5 5
kbahar3 0:0499f4bb7fa5 6 InterruptIn hall(p28); // This interupt is used to poll the Hall Effect IC
kbahar3 0:0499f4bb7fa5 7 DigitalOut latch(p8);
kbahar3 0:0499f4bb7fa5 8 DigitalOut enable(p9);
kbahar3 0:0499f4bb7fa5 9 Timer timer; // This timer is used to time the wheel's rotation
kbahar3 0:0499f4bb7fa5 10
kbahar3 0:0499f4bb7fa5 11 int LEDRowNumber = 10; // This is equal to the number of divisions the user has setup for his or her image
kbahar3 0:0499f4bb7fa5 12 int cycle_time = 0; // Global Variable for the full rotation
kbahar3 0:0499f4bb7fa5 13 int rowIndex = 0; // Index for shifting through the Image array
kbahar3 0:0499f4bb7fa5 14 bool top_wheel = false; // Variable Debug LED Circuit
kbahar3 0:0499f4bb7fa5 15 int color = 0; // Variable for shifting through colors
kbahar3 0:0499f4bb7fa5 16 int j; // For Loop index for LED debug circuit
kbahar3 0:0499f4bb7fa5 17 float adj_cycle_time = 0; // Variable used to hold "cycle_time / LEDRowNumber"
kbahar3 0:0499f4bb7fa5 18
kbahar3 0:0499f4bb7fa5 19 //Cycles through different colors on RGB LED
kbahar3 0:0499f4bb7fa5 20 SPI spi(p5, p6, p7);
kbahar3 0:0499f4bb7fa5 21
kbahar3 0:0499f4bb7fa5 22 //Use SPI hardware to write color values to LED driver chip
kbahar3 0:0499f4bb7fa5 23 void RGB_LED(int red, int green, int blue) {
kbahar3 0:0499f4bb7fa5 24 unsigned int low_color=0;
kbahar3 0:0499f4bb7fa5 25 unsigned int high_color=0;
kbahar3 0:0499f4bb7fa5 26 high_color=(blue<<4)|((red&0x3C0)>>6);
kbahar3 0:0499f4bb7fa5 27 low_color=(((red&0x3F)<<10)|(green));
kbahar3 0:0499f4bb7fa5 28 spi.write(high_color);
kbahar3 0:0499f4bb7fa5 29 spi.write(low_color);
kbahar3 0:0499f4bb7fa5 30 latch=1;
kbahar3 0:0499f4bb7fa5 31 latch=0;
kbahar3 0:0499f4bb7fa5 32 }
kbahar3 0:0499f4bb7fa5 33
kbahar3 0:0499f4bb7fa5 34 //Interupt Routine used to detect when the magnet passes the Hall Effect Sensor
kbahar3 0:0499f4bb7fa5 35 void intRoutine() {
kbahar3 0:0499f4bb7fa5 36 cycle_time = timer.read_ms(); //This is only called then the Hall Effect IC returns a "0"
kbahar3 0:0499f4bb7fa5 37 adj_cycle_time = cycle_time / LEDRowNumber; //Calculates the time between sending each LED Row within the color Arrays
kbahar3 0:0499f4bb7fa5 38 timer.reset(); //Resets the Timer
kbahar3 0:0499f4bb7fa5 39 rowIndex = 0; //Resets the Row to be sent so the image always stays in the relatively same place
kbahar3 0:0499f4bb7fa5 40 color=0; //Resets the color Index for the LED sample wheel so the image always stays in the same place
kbahar3 0:0499f4bb7fa5 41 }
kbahar3 0:0499f4bb7fa5 42
kbahar3 0:0499f4bb7fa5 43 int main() {
kbahar3 0:0499f4bb7fa5 44 hall.mode(PullUp); //Initializes the PullUp Resistor for the Hall Effect Sensor
kbahar3 0:0499f4bb7fa5 45 hall.fall(&intRoutine); //Initializes the Interrupt Routine for the Hall Effect Sensor (on falling edge)
kbahar3 0:0499f4bb7fa5 46
kbahar3 0:0499f4bb7fa5 47 spi.format(16,0); //Initializes the Shiftbright LED Chain
kbahar3 0:0499f4bb7fa5 48 spi.frequency(500000);
kbahar3 0:0499f4bb7fa5 49 enable=0;
kbahar3 0:0499f4bb7fa5 50 latch=0;
kbahar3 0:0499f4bb7fa5 51 wait(2);
kbahar3 0:0499f4bb7fa5 52
kbahar3 0:0499f4bb7fa5 53 timer.start(); //Starts the Timer
kbahar3 0:0499f4bb7fa5 54
kbahar3 0:0499f4bb7fa5 55 /*//----- Color Initialization for Debug Program -----
kbahar3 0:0499f4bb7fa5 56 int red=0;
kbahar3 0:0499f4bb7fa5 57 int green=0;
kbahar3 0:0499f4bb7fa5 58 int blue=0;
kbahar3 0:0499f4bb7fa5 59 */
kbahar3 0:0499f4bb7fa5 60
kbahar3 0:0499f4bb7fa5 61 /* //----- Spiral Pattern -----
kbahar3 0:0499f4bb7fa5 62 int red[10][10]={50,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 63 ,0,50,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 64 ,0,0,50,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 65 ,0,0,0,50,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 66 ,0,0,0,0,50,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 67 ,0,0,0,0,0,50,0,0,0,0
kbahar3 0:0499f4bb7fa5 68 ,0,0,0,0,0,0,50,0,0,0
kbahar3 0:0499f4bb7fa5 69 ,0,0,0,0,0,0,0,50,0,0
kbahar3 0:0499f4bb7fa5 70 ,0,0,0,0,0,0,0,0,50,0
kbahar3 0:0499f4bb7fa5 71 ,0,0,0,0,0,0,0,0,0,50};
kbahar3 0:0499f4bb7fa5 72 int green[10][10]={50,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 73 ,0,50,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 74 ,0,0,50,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 75 ,0,0,0,50,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 76 ,0,0,0,0,50,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 77 ,0,0,0,0,0,50,0,0,0,0
kbahar3 0:0499f4bb7fa5 78 ,0,0,0,0,0,0,50,0,0,0
kbahar3 0:0499f4bb7fa5 79 ,0,0,0,0,0,0,0,50,0,0
kbahar3 0:0499f4bb7fa5 80 ,0,0,0,0,0,0,0,0,50,0
kbahar3 0:0499f4bb7fa5 81 ,0,0,0,0,0,0,0,0,0,50};
kbahar3 0:0499f4bb7fa5 82 int blue[10][10]={50,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 83 ,0,50,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 84 ,0,0,50,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 85 ,0,0,0,50,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 86 ,0,0,0,0,50,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 87 ,0,0,0,0,0,50,0,0,0,0
kbahar3 0:0499f4bb7fa5 88 ,0,0,0,0,0,0,50,0,0,0
kbahar3 0:0499f4bb7fa5 89 ,0,0,0,0,0,0,0,50,0,0
kbahar3 0:0499f4bb7fa5 90 ,0,0,0,0,0,0,0,0,50,0
kbahar3 0:0499f4bb7fa5 91 ,0,0,0,0,0,0,0,0,0,50};
kbahar3 0:0499f4bb7fa5 92 */
kbahar3 0:0499f4bb7fa5 93
kbahar3 0:0499f4bb7fa5 94 //----- Pac Man -----
kbahar3 0:0499f4bb7fa5 95
kbahar3 0:0499f4bb7fa5 96 int red[10][10]={50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 97 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 98 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 99 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 100 ,50,50,50,50,50,50,0,0,50,50
kbahar3 0:0499f4bb7fa5 101 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 102 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 103 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 104 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 105 ,50,50,50,50,50,50,50,50,50,50};
kbahar3 0:0499f4bb7fa5 106
kbahar3 0:0499f4bb7fa5 107 int green[10][10]={50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 108 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 109 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 110 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 111 ,50,50,50,50,50,50,0,0,50,50
kbahar3 0:0499f4bb7fa5 112 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 113 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 114 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 115 ,50,50,50,50,50,50,50,50,50,50
kbahar3 0:0499f4bb7fa5 116 ,50,50,50,50,50,50,50,50,50,50};
kbahar3 0:0499f4bb7fa5 117
kbahar3 0:0499f4bb7fa5 118 int blue[10][10]={0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 119 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 120 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 121 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 122 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 123 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 124 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 125 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 126 ,0,0,0,0,0,0,0,0,0,0
kbahar3 0:0499f4bb7fa5 127 ,0,0,0,0,0,0,0,0,0,0};
kbahar3 0:0499f4bb7fa5 128
kbahar3 0:0499f4bb7fa5 129
kbahar3 0:0499f4bb7fa5 130 /*// -----Blue Triangle: From Bitmap Image Program -----
kbahar3 0:0499f4bb7fa5 131 int red[36][10]={0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 132 0,0,0,0,0,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 133 0,0,0,0,0,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 134 0,0,0,0,0,0,0,42,42,42,
kbahar3 0:0499f4bb7fa5 135 0,0,0,0,0,0,0,0,0,42,
kbahar3 0:0499f4bb7fa5 136 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 137 0,0,0,0,0,0,0,0,0,42,
kbahar3 0:0499f4bb7fa5 138 0,0,0,0,0,0,0,0,0,42,
kbahar3 0:0499f4bb7fa5 139 0,0,0,0,0,0,0,0,42,42,
kbahar3 0:0499f4bb7fa5 140 0,0,0,0,0,0,0,0,42,42,
kbahar3 0:0499f4bb7fa5 141 0,0,0,0,0,0,0,0,42,42,
kbahar3 0:0499f4bb7fa5 142 0,0,0,0,0,0,0,0,0,42,
kbahar3 0:0499f4bb7fa5 143 0,0,0,0,0,0,0,0,0,42,
kbahar3 0:0499f4bb7fa5 144 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 145 0,0,0,0,0,0,0,0,0,42,
kbahar3 0:0499f4bb7fa5 146 0,0,0,0,0,0,0,42,42,42,
kbahar3 0:0499f4bb7fa5 147 0,0,0,0,0,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 148 0,0,0,0,0,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 149 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 150 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 151 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 152 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 153 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 154 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 155 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 156 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 157 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 158 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 159 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 160 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 161 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 162 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 163 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 164 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 165 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 166 0,0,0,0,0,0,0,0,0,0};
kbahar3 0:0499f4bb7fa5 167
kbahar3 0:0499f4bb7fa5 168 int green[36][10]={0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 169 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 170 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 171 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 172 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 173 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 174 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 175 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 176 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 177 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 178 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 179 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 180 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 181 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 182 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 183 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 184 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 185 0,0,0,0,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 186 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 187 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 188 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 189 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 190 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 191 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 192 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 193 0,0,0,0,0,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 194 0,0,0,0,0,0,0,42,42,42,
kbahar3 0:0499f4bb7fa5 195 0,0,0,0,0,0,0,0,42,42,
kbahar3 0:0499f4bb7fa5 196 0,0,0,0,0,0,0,42,42,42,
kbahar3 0:0499f4bb7fa5 197 0,0,0,0,0,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 198 0,0,0,0,0,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 199 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 200 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 201 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 202 0,0,0,0,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 203 0,0,0,0,42,42,42,42,42,42};
kbahar3 0:0499f4bb7fa5 204
kbahar3 0:0499f4bb7fa5 205 int blue[36][10]={42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 206 42,42,42,42,42,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 207 42,42,42,42,42,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 208 42,42,42,42,42,42,42,0,0,0,
kbahar3 0:0499f4bb7fa5 209 42,42,42,42,42,42,42,42,42,0,
kbahar3 0:0499f4bb7fa5 210 42,42,42,42,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 211 42,42,42,42,42,42,42,42,42,0,
kbahar3 0:0499f4bb7fa5 212 42,42,42,42,42,42,42,42,42,0,
kbahar3 0:0499f4bb7fa5 213 42,42,42,42,42,42,42,42,0,0,
kbahar3 0:0499f4bb7fa5 214 42,42,42,42,42,42,42,42,0,0,
kbahar3 0:0499f4bb7fa5 215 42,42,42,42,42,42,42,42,0,0,
kbahar3 0:0499f4bb7fa5 216 42,42,42,42,42,42,42,42,42,0,
kbahar3 0:0499f4bb7fa5 217 42,42,42,42,42,42,42,42,42,0,
kbahar3 0:0499f4bb7fa5 218 42,42,42,42,42,42,42,42,42,42,
kbahar3 0:0499f4bb7fa5 219 42,42,42,42,42,42,42,42,42,0,
kbahar3 0:0499f4bb7fa5 220 42,42,42,42,42,42,42,0,0,0,
kbahar3 0:0499f4bb7fa5 221 42,42,42,42,42,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 222 42,42,42,42,42,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 223 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 224 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 225 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 226 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 227 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 228 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 229 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 230 42,42,42,42,42,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 231 42,42,42,42,42,42,42,0,0,0,
kbahar3 0:0499f4bb7fa5 232 42,42,42,42,42,42,42,42,0,0,
kbahar3 0:0499f4bb7fa5 233 42,42,42,42,42,42,42,0,0,0,
kbahar3 0:0499f4bb7fa5 234 42,42,42,42,42,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 235 42,42,42,42,42,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 236 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 237 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 238 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 239 42,42,42,42,0,0,0,0,0,0,
kbahar3 0:0499f4bb7fa5 240 42,42,42,42,0,0,0,0,0,0};
kbahar3 0:0499f4bb7fa5 241 */
kbahar3 0:0499f4bb7fa5 242 while(1) {
kbahar3 0:0499f4bb7fa5 243 //led1 = hall; // Used for Debugging the Hall Effect IC
kbahar3 0:0499f4bb7fa5 244 //led2 = !hall; // Used for Debugging the Hall Effect IC
kbahar3 0:0499f4bb7fa5 245
kbahar3 0:0499f4bb7fa5 246 //----- Code for Cycling through a 2D Picture Array -----
kbahar3 0:0499f4bb7fa5 247 wait_ms(adj_cycle_time);
kbahar3 0:0499f4bb7fa5 248 for(int i=9;i>=0;i--){ //If we update without any waiting, the LEDs change colors super fast, and you won't notice the shifting LEDs
kbahar3 0:0499f4bb7fa5 249 RGB_LED( red[rowIndex][i], green[rowIndex][i], blue[rowIndex][i]);
kbahar3 0:0499f4bb7fa5 250 }
kbahar3 0:0499f4bb7fa5 251 rowIndex++;
kbahar3 0:0499f4bb7fa5 252 if(rowIndex>=LEDRowNumber){
kbahar3 0:0499f4bb7fa5 253 rowIndex = 0;
kbahar3 0:0499f4bb7fa5 254 }
kbahar3 0:0499f4bb7fa5 255
kbahar3 0:0499f4bb7fa5 256
kbahar3 0:0499f4bb7fa5 257 /* //----- Debug Code: Rainbow Pattern ------ (Pre 2D Color Array)
kbahar3 0:0499f4bb7fa5 258 wait_ms(adj_cycle_time);
kbahar3 0:0499f4bb7fa5 259 top_wheel = true;
kbahar3 0:0499f4bb7fa5 260 if (top_wheel && (color == 0)) {
kbahar3 0:0499f4bb7fa5 261 // Red, Color 0
kbahar3 0:0499f4bb7fa5 262 //printf("RED RED RED\r\n");
kbahar3 0:0499f4bb7fa5 263 red = 50;
kbahar3 0:0499f4bb7fa5 264 blue = 0;
kbahar3 0:0499f4bb7fa5 265 green = 0;
kbahar3 0:0499f4bb7fa5 266 for(j = 0; j < 10; j++)
kbahar3 0:0499f4bb7fa5 267 RGB_LED(red, green, blue);
kbahar3 0:0499f4bb7fa5 268 top_wheel = false;
kbahar3 0:0499f4bb7fa5 269 color++;
kbahar3 0:0499f4bb7fa5 270 }
kbahar3 0:0499f4bb7fa5 271 if (top_wheel && (color == 1)) {
kbahar3 0:0499f4bb7fa5 272 //printf("ORANGE ORANGE ORANGE\r\n");
kbahar3 0:0499f4bb7fa5 273 // Orange, Color 1
kbahar3 0:0499f4bb7fa5 274 red = 50;
kbahar3 0:0499f4bb7fa5 275 blue = 0;
kbahar3 0:0499f4bb7fa5 276 green = 25;
kbahar3 0:0499f4bb7fa5 277 for(j = 0; j < 10; j++)
kbahar3 0:0499f4bb7fa5 278 RGB_LED(red, green, blue);
kbahar3 0:0499f4bb7fa5 279 top_wheel = false;
kbahar3 0:0499f4bb7fa5 280 color++;
kbahar3 0:0499f4bb7fa5 281 }
kbahar3 0:0499f4bb7fa5 282 if (top_wheel && (color == 2)) {
kbahar3 0:0499f4bb7fa5 283 //printf("YELLOW YELLOW YELLOW\r\n");
kbahar3 0:0499f4bb7fa5 284 // Yellow, Color 2
kbahar3 0:0499f4bb7fa5 285 red = 50;
kbahar3 0:0499f4bb7fa5 286 blue = 0;
kbahar3 0:0499f4bb7fa5 287 green = 50;
kbahar3 0:0499f4bb7fa5 288 for(j = 0; j < 10; j++)
kbahar3 0:0499f4bb7fa5 289 RGB_LED(red, green, blue);
kbahar3 0:0499f4bb7fa5 290 top_wheel = false;
kbahar3 0:0499f4bb7fa5 291 color++;
kbahar3 0:0499f4bb7fa5 292 }
kbahar3 0:0499f4bb7fa5 293 if (top_wheel && (color == 3)) {
kbahar3 0:0499f4bb7fa5 294 //printf("GREEN GREEN GREEN\r\n");
kbahar3 0:0499f4bb7fa5 295 // Green, Color 3
kbahar3 0:0499f4bb7fa5 296 red = 0;
kbahar3 0:0499f4bb7fa5 297 blue = 0;
kbahar3 0:0499f4bb7fa5 298 green = 50;
kbahar3 0:0499f4bb7fa5 299 for(j = 0; j < 10; j++)
kbahar3 0:0499f4bb7fa5 300 RGB_LED(red, green, blue);
kbahar3 0:0499f4bb7fa5 301 top_wheel = false;
kbahar3 0:0499f4bb7fa5 302 color++;
kbahar3 0:0499f4bb7fa5 303 }
kbahar3 0:0499f4bb7fa5 304 if (top_wheel && (color == 4)) {
kbahar3 0:0499f4bb7fa5 305 //printf("CYAN CYAN CYAN\r\n");
kbahar3 0:0499f4bb7fa5 306 // Cyan, Color 4
kbahar3 0:0499f4bb7fa5 307 red = 0;
kbahar3 0:0499f4bb7fa5 308 blue = 50;
kbahar3 0:0499f4bb7fa5 309 green = 50;
kbahar3 0:0499f4bb7fa5 310 for(j = 0; j < 10; j++)
kbahar3 0:0499f4bb7fa5 311 RGB_LED(red, green, blue);
kbahar3 0:0499f4bb7fa5 312 top_wheel = false;
kbahar3 0:0499f4bb7fa5 313 color++;
kbahar3 0:0499f4bb7fa5 314 }
kbahar3 0:0499f4bb7fa5 315 if (top_wheel && (color == 5)) {
kbahar3 0:0499f4bb7fa5 316 //printf("BLUE BLUE BLUE\r\n");
kbahar3 0:0499f4bb7fa5 317 // Blue, Color 5
kbahar3 0:0499f4bb7fa5 318 red = 0;
kbahar3 0:0499f4bb7fa5 319 blue = 50;
kbahar3 0:0499f4bb7fa5 320 green = 0;
kbahar3 0:0499f4bb7fa5 321 for(j = 0; j < 10; j++)
kbahar3 0:0499f4bb7fa5 322 RGB_LED(red, green, blue);
kbahar3 0:0499f4bb7fa5 323 top_wheel = false;
kbahar3 0:0499f4bb7fa5 324 color++;
kbahar3 0:0499f4bb7fa5 325 }
kbahar3 0:0499f4bb7fa5 326 if (top_wheel && (color == 6)) {
kbahar3 0:0499f4bb7fa5 327 //printf("PURPLE PURPLE PURPLE\r\n");
kbahar3 0:0499f4bb7fa5 328 //Purple, Color 6
kbahar3 0:0499f4bb7fa5 329 red = 50;
kbahar3 0:0499f4bb7fa5 330 blue = 50;
kbahar3 0:0499f4bb7fa5 331 green = 0;
kbahar3 0:0499f4bb7fa5 332 for(j = 0; j < 10; j++)
kbahar3 0:0499f4bb7fa5 333 RGB_LED(red, green, blue);
kbahar3 0:0499f4bb7fa5 334 top_wheel = false;
kbahar3 0:0499f4bb7fa5 335 color = 0;
kbahar3 0:0499f4bb7fa5 336 }
kbahar3 0:0499f4bb7fa5 337 */
kbahar3 0:0499f4bb7fa5 338 }
kbahar3 0:0499f4bb7fa5 339 }