示例#1
0
文件: main.c 项目: Saul2588/ousia
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;
}
示例#2
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
	}
}