/* * Blink the status LEDs a little to indicate that the device has just * booted. This is useful to see if an error is making the device reboot * when not supposed to. And it looks cool. */ void boot_msg(void) { int i = 0; LED_PORT |= LED_GREEN; for (i = 0; i < 2; i++) { /* blinky */ delay_ms(1000); led_green(0x00); led_red(0x01); /* blink */ delay_ms(1000); led_red(0x00); led_green(0x01); } delay_ms(1000); led_green(0x00); }
int main(int argc, char **argv) { initialize(); clear_array(); //Message to display on serial console. //USART_SendString("\tHello world.\r\n"); char str [33]; while(1){ PORTC = PINA; //Creating the "X": int i, j, k; //printf("\tHello \r\n"); //IF no button pressed, light up as green if (PORTC != 0b00000001) { //clear_array(); for (i = 7; i >= 0; i--) { PORTE = i; led_green(7-i, 7-i); led_green(7-i, i); _delay_ms(0.1); #ifdef DEBUG USART_SendString("\t\r\nX: "); USART_Transmit(itoa(7-i, str, 10)); USART_SendString("\t\r\nY(top): "); USART_Transmit(itoa(7-i, str, 10)); USART_SendString("\t\r\nY(bottom): "); USART_Transmit(itoa(i, str, 10)); #endif set_array_green(0); } } //IF button 1 is pressed, light up as red if (PORTC & 0b00000010) { clear_array(); for (i = 7; i >= 0; i--) { PORTE = i; led_red(7-i, 7-i); led_red(7-i, i); _delay_ms(0.1); #ifdef DEBUG USART_SendString("\t\r\nX: "); USART_Transmit(itoa(7-i, str, 10)); USART_SendString("\t\r\nY(top): "); USART_Transmit(itoa(7-i, str, 10)); USART_SendString("\t\r\nY(bottom): "); USART_Transmit(itoa(i, str, 10)); #endif set_array_red(0); } } //IF button 5 is pressed, light up as blue. if (PORTC & 0b00100000) { clear_array(); for (i = 7; i >= 0; i--) { PORTE = i; led_blue(7-i, 7-i); led_blue(7-i, i); _delay_ms(0.1); #ifdef DEBUG USART_SendString("\t\r\nX: "); USART_Transmit(itoa(7-i, str, 10)); USART_SendString("\t\r\nY(top): "); USART_Transmit(itoa(7-i, str, 10)); USART_SendString("\t\r\nY(bottom): "); USART_Transmit(itoa(i, str, 10)); #endif set_array_blue(0); } } } }