4238|2

190

帖子

10

TA的资源

一粒金砂(中级)

楼主
 

[LPC54102]System Clock 系统时钟的设置 [复制链接]

在系统时钟上的设置 最直接的感觉就是太麻烦呢,这也是无法避免的问题,Cortex的时钟都是很麻烦,NXP却没有STM  TI  飞思卡尔等有那些图形化初始化设置工具,只能吃中硬骨头。
系统时钟的设置

对于CLKIN 与CLKOUT的引脚 如下:  万利和官网的都没有用外部时钟输入。但都有时钟的输出,但在都可以设置为关闭 Board_SetupClocking(board_sysinit.c) 中设置

IRC  与 RTC 的大小

时钟的分配情况:


对于频率的设置是在 Board_SetupClocking(board_sysinit.c)中的
Chip_SetupIrcClocking(BOARD_MAINCLOCKRATE)  (Board_sysinit.c)进行设置
void Chip_SetupIrcClocking(uint32_t iFreq)
{
PLL_CONFIG_T pllConfig;
PLL_SETUP_T pllSetup;
PLL_ERROR_T pllError;
Chip_SYSCON_PowerUp(SYSCON_PDRUNCFG_PD_IRC_OSC | SYSCON_PDRUNCFG_PD_IRC);
Chip_Clock_SetSystemPLLSource(SYSCON_PLLCLKSRC_IRC);
setupFlashClocks(iFreq);
Chip_SYSCON_PowerDown(SYSCON_PDRUNCFG_PD_SYS_PLL);
pllConfig.desiredRate = iFreq;
pllConfig.InputRate = 0;
pllConfig.flags = PLL_CONFIGFLAG_FORCENOFRACT;
pllError = Chip_Clock_SetupPLLData(&pllConfig, &pllSetup);
if (pllError == PLL_ERROR_SUCCESS) {
  pllSetup.flags = PLL_SETUPFLAG_WAITLOCK | PLL_SETUPFLAG_ADGVOLT;
  pllError = Chip_Clock_SetupSystemPLLPrec(&pllSetup);
}
Chip_Clock_SetSysClockDiv(1);
Chip_Clock_SetMainClockSource(SYSCON_MAINCLKSRC_PLLOUT);
Chip_SYSCON_Enable_ASYNC_Syscon(true);
Chip_Clock_SetAsyncSysconClockDiv(1);
Chip_Clock_SetAsyncSysconClockSource(SYSCON_ASYNC_IRC);
}
测试设置的频率,没有设置的为0
void ClockCheck(void)
{  
    uint32_t MainClockRate = 0;
    uint32_t SystemClockRate = 0;
    uint32_t AsyncSyscon_ClockRate = 0;
    uint32_t SysTickClockRate =0;
    uint32_t Main_A_ClockRate = 0;
    uint32_t Main_B_ClockRate = 0;
    uint32_t ADCClockRate = 0;
    MainClockRate  = Chip_Clock_GetMainClockRate();
    uart_int_printf_block("\r\n MainClockRate %ld \r\n", MainClockRate);
    SystemClockRate= Chip_Clock_GetSystemClockRate();
    uart_int_printf_block("\r\n SystemClockRate %ld \r\n", SystemClockRate);
    AsyncSyscon_ClockRate = Chip_Clock_GetAsyncSyscon_ClockRate();
    uart_int_printf_block("\r\n AsyncSyscon_ClockRate %ld \r\n", AsyncSyscon_ClockRate);
    SysTickClockRate = Chip_Clock_GetSysTickClockRate();
    uart_int_printf_block("\r\n SysTickClockRate %ld \r\n", SysTickClockRate);
    Main_A_ClockRate = Chip_Clock_GetMain_A_ClockRate();
    uart_int_printf_block("\r\n Main_A_ClockRate %ld \r\n", Main_A_ClockRate);
    Main_B_ClockRate = Chip_Clock_GetMain_B_ClockRate();
    uart_int_printf_block("\r\n Main_B_ClockRate %ld \r\n", Main_B_ClockRate);
    ADCClockRate = Chip_Clock_GetADCClockRate();
    uart_int_printf_block("\r\n ADCClockRate %ld \r\n", ADCClockRate);
}




此帖出自NXP MCU论坛

最新回复

nmg
还不来更新  详情 回复 发表于 2015-5-13 11:01
点赞 关注(1)
 

回复
举报

5262

帖子

239

TA的资源

管理员

沙发
 
还不来更新
此帖出自NXP MCU论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

点评

更新啦 [LPC54102]红外遥控介绍与接收 https://bbs.eeworld.com.cn/forum.php?mod=viewthread&tid=461935&fromuid=194541 (出处: 电子工程世界-论坛)  详情 回复 发表于 2015-5-13 22:35
 
 
 

回复

190

帖子

10

TA的资源

一粒金砂(中级)

板凳
 

更新啦


[LPC54102]红外遥控介绍与接收

https://bbs.eeworld.com.cn/forum ... 1935&fromuid=194541

(出处: 电子工程世界-论坛)



此帖出自NXP MCU论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表