dump (06.09.2007 19:02, просмотров: 153) ответил AlexandrY на Смотрим здесь.
А что с настройками частот? Прогнал Whetstone на своей плате со своими системными настройками и получилась цифра в ~3 раза хуже, чем у Вас в таблице. А именно:
0.61 сек (определял дерганием ноги проца) при условиях:
ARM mode, exe. from flash, IAR compiler, optimization for speed
(по Вашим результатам 0,226 сек)
В чем же дело? вроде все правильно
вот функция инициализации системы, взятая из примеров micrium:
<c>
#define BSP_SRAM_SIZE_MASK 0xFFFFFFE7
#define BSP_WSR_AHB_MASK 0xFFFFFFFB
#define BSP_WSR_DTCM_MASK 0xFFFFFFFD
#define BSP_SRAM_LK_EN_MASK 0xFFFFFFDF
#define BSP_SRAM_SIZE 0x02
#define BSP_WSR_AHB_VAL 0
#define BSP_WSR_DTCM_VAL 0
#define BSP_SRAM_LK_EN_VAL 1
#define BSP_PLL_M 25
#define BSP_PLL_N 192
#define BSP_PLL_P 2
void InitClock (void)
{
unsigned int scr0_val;
SCU_MCLKSourceConfig(SCU_MCLK_OSC);
/* Set the PLL's multipliers and dividers */
SCU_PLLFactorsConfig(BSP_PLL_N, BSP_PLL_M, BSP_PLL_P);
SCU_PLLCmd(ENABLE); /* Enable the PLL */
SCU_RCLKDivisorConfig(SCU_RCLK_Div1); /* Set RCLK, the CPU clock's main divider */
SCU_PCLKDivisorConfig(SCU_PCLK_Div1); /* Set APBDIV, the PCLK divider */
SCU_FMICLKDivisorConfig(SCU_FMICLK_Div2);
SCU_MCLKSourceConfig(SCU_MCLK_PLL); /* Select the PLL output as CPU clock */
scr0_val = SCU->SCR0; /* Set the size of the SRAM */
scr0_val &= (BSP_SRAM_SIZE_MASK & BSP_WSR_AHB_MASK & BSP_WSR_DTCM_MASK & BSP_SRAM_LK_EN_MASK);
scr0_val |= ((BSP_SRAM_LK_EN_VAL << 5) | (BSP_SRAM_SIZE << 3) | (BSP_WSR_AHB_VAL << 2) | (BSP_WSR_DTCM_VAL << 1));
SCU->SCR0 = scr0_val;
SCU_PFQBCCmd(ENABLE); /* Enable the PFQBC */
}
</c>