main
Default mainpagebasic-dhrystone-projectmain
Description Source Call Graph
Start Line: 632
int main(void)
{
    unsigned char key;
    
    // DBGU configuration
    TRACE_CONFIGURE(DBGU_STANDARD, 115200, BOARD_MCK);
    printf("-- Basic Dhrystone Project %s --\n\r", SOFTPACK_VERSION);
    printf("-- %s\n\r", BOARD_NAME);
    printf("-- Compiled: %s %s --\n\r", __DATE__, __TIME__);

    // Display menu
    DisplayMenu();
#if defined(CP15_PRESENT)
    display_I_D_MMU();
#endif

    while (1) {
        // Get keypress
        key = DBGU_GetChar();
        // Check key
        //----------
        // Set configuration #n
        if ((key >= '0') && (key <= ('0' + numConfigurations - 1))) {
            SetClockConfiguration(key - '0');
        }
        // Menu
        else if (key == 'h') {
            DisplayMenu();
        }
        // Measurement
        else if (key == 'm') {
#if defined(CP15_PRESENT)
            display_I_D_MMU();
#endif
            // Print clock parameters
            ComputeDhrystonesPerSecond();
        }
#if defined(CP15_PRESENT)
        // Instruction cache
        else if (key == 'i') {
            ToggleInstructionCache();
        }
        // Data cache
        else if (key == 'b') {
            ToggleMMU();
        }
        // Data cache
        else if (key == 'c') {
            ToggleDataCache();
        }
        // Data cache
        else if (key == 'd') {
            ToggleDataCacheAndMMU();
        }
#endif
        // Unrecognized option
        else {
            printf("No menu entry for '%c'\n\r", key);
            DisplayMenu();
        }
    }
}