创建并移植K10 BSP包的具体步骤和方法(二)
修改Flash时钟频率,默认是24MHz,修改为25MHz。
#define CPU_FLASH_CLK_HZ_CONFIG_0 25000000UL /* FLASH时钟频率为25MHz*/
#define CPU_PLL_FLL_CLK_HZ_CONFIG_0 100000000UL /* PLL/FLL时钟频率为100MHz*/
#define CPU_OSCER_CLK_HZ_CONFIG_0 50000000UL
/*在时钟配置0中的系统OSC 外部参考时钟 */
手工书写代码相对繁琐,更方便的方法是使用Freescale的Processor Expert 工具,根据硬件的需要来设置时钟,生成的如下的代码。通过PE工具来对CPU和各种外设进行设置,只需了解它的原理和用法,而不用把精力花在了解寄存器的具体细节上。打开PE后,参照图7的配置进行设置,点击Project-》Generator Processor Expert Code即可生成代码。记住重新修改配置后需要点击Project-》Clean,清掉上次生成的代码,然后再执行生成代码的操作。
void __pe_initialize_hardware(void)
{
_bsp_watchdog_disable();
/* 关闭 WDOG 模块 */
WDOG_UNLOCK = WDOG_UNLOCK_WDOGUNLOCK(0xC520);
WDOG_UNLOCK = WDOG_UNLOCK_WDOGUNLOCK(0xD928);
WDOG_STCTRLH = WDOG_STCTRLH_STNDBYEN_MASK | WDOG_STCTRLH_WAITEN_MASK | WDOG_STCTRLH_STOPEN_MASK | WDOG_STCTRLH_ALLOWUPDATE_MASK | WDOG_STCTRLH_CLKSRC_MASK;
/* 系统时钟初始化 */
/* SIM_SCGC5: PORTA=1 */
SIM_SCGC5 |= SIM_SCGC5_PORTA_MASK
SIM_CLKDIV1 = SIM_CLKDIV1_OUTDIV2(0x01) | SIM_CLKDIV1_OUTDIV3(0x03) |
SIM_CLKDIV1_OUTDIV4(0x03); /* 更新系统预分频器 */
SIM_SOPT1 = (uint32_t)~(uint32_t)(SIM_SOPT1_OSC32KSEL_MASK);
PORTA_PCR18 = (uint32_t)~(uint32_t)((PORT_PCR_ISF_MASK | PORT_PCR_MUX(0x07)));
PORTA_PCR19 = (uint32_t)~(uint32_t)((PORT_PCR_ISF_MASK | PORT_PCR_MUX(0x07)));
/*切换到FBE 模式*/
![](http://m.amcfsurvey.com/webstorage/images/display/reg.jpg)
评论