int main(void) { int i = 0; char ch = 0; os_status stat = OS_OK; stat = os_init(); stat = stat; stm32utils_system_init(); /* led flashes -> sign of system reset ok */ for(i = 0; i < 6; i++) { gpio_toggle_bit(GPIOA, 0); delay(50); } /* Boot Animation */ os_putchar(0x0C); /* clear screen */ os_printf("Booting...\r\n\r\n"); os_printf(" _\r\n"); os_printf(" _ / /\r\n"); os_printf(" | | ___ __ _ _| |_ __ _ _ __ __ _ _ _\r\n"); os_printf(" | | / _ \\/ _` |_ _/ _` | \\/ _)/ _` | / / / /\r\n"); os_printf(" | |_ _ __( (_| | | | (_| | | | ( (_| | \\ \\ \\ \\\r\n"); os_printf(" |_ _ _\\___|\\__,_| | | \\__, / | | \\__,_| /_/ /_/\r\n"); os_printf(" /_/ \\_ _/\r\n" ); os_printf("\r\n"); os_printf("Ousia "); os_printf(VERSION); os_printf(" "); os_printf(VER_NAME); os_printf("\r\n\tby Librae - [email protected]"); os_printf("\r\n\r\n"); os_printf("Hello, Ousia ~\r\n"); for (;;) { if (USART1->flag_trigger) { for (i = 0; i < USART1->cnt_trigger; i++) { ch = usart_getc(USART1); if (ch) { switch( ch ) { case '\r': os_printf( "\r\n" ); break; case '\b': os_printf( "\b \b" ); break; default: os_printf( "%c", ch ); break; } } } USART1->cnt_trigger = 0; } delay(10); } return 0; }
void setMemory8(uint8_t * mem_addr, int value) { *mem_addr=value; switch (mem_addr-mem) { case UDR0_IDX: os_putchar(value); break; #if _DEBUG case PORTB_IDX: printf("PORTB=0x%02x;\n", value); break; default: printf("memory8 [0x%04x]=0x%02x;\n", mem_addr-mem, value); #endif } }