一个程序运行在不同的板子上,其软件延时、定时中断等和时间相关的函数,延时的时间、定时中断的时间大不相同。 是不是程序运行过程中,时钟频率被修改?或者还有些和时钟相关的寄存器要设置?(不设置的话,可能程序运行正常,也可能不正常)
附:现在在时钟设置;
/* RCC system reset(for debug purpose) */ /* Enable HSE */ /* Wait till HSE is ready */ /* Flash 2 wait state */
/* Enable Prefetch Buffer */
/* HCLK = SYSCLK/4 = 18MHzexecutation */
/* PCLK1 = HCLK = 18MHz
/* PCLK2 = HCLK = 18MHz
/* AD Clk = PCLK2/2 = 9MHz */
/* usb Clk = PLLCLK/1.5 = 48MHz */
/* PLLCLK = 8MHz * 9 = 72 MHz, PLLCLK is SYSCLK */
/* Enable PLL */
/* Wait till PLL is ready */
/* Select PLL as system clock source */
/* Wait till PLL is used as system clock source */ |