示例#1
0
/*
 * 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);
}
示例#2
0
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);
			}
		}	
	}
}