C语言中怎么设置时钟
发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,本篇内容介绍了"C语言中怎么设置时钟"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#define A
千家信息网最后更新 2024年11月30日C语言中怎么设置时钟
本篇内容介绍了"C语言中怎么设置时钟"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
#define APLL_LOCK (*((volatile unsigned long *)0x7E00F000))#define MPLL_LOCK (*((volatile unsigned long *)0x7E00F004))#define EPLL_LOCK (*((volatile unsigned long *)0x7E00F008))#define OTHERS (*((volatile unsigned long *)0x7e00f900))#define CLK_DIV0 (*((volatile unsigned long *)0x7E00F020))#define ARM_RATIO 0 /* ARMCLK = DOUTAPLL / (ARM_RATIO + 1) */#define HCLKX2_RATIO 4 /* HCLKX2 = HCLKX2IN / (HCLKX2_RATIO + 1) = 100MHz */#define HCLK_RATIO 0 /* HCLK = HCLKX2 / (HCLK_RATIO + 1) = 100MHz */#define PCLK_RATIO 1 /* PCLK = HCLKX2 / (PCLK_RATIO + 1) = 50MHz */#define MPLL_RATIO 0 /* DOUTMPLL = MOUTMPLL / (MPLL_RATIO + 1) */#define APLL_CON (*((volatile unsigned long *)0x7E00F00C))#define APLL_CON_VAL ((1<<31) | (250 << 16) | (3 << 8) | (1))#define MPLL_CON (*((volatile unsigned long *)0x7E00F010))#define MPLL_CON_VAL ((1<<31) | (250 << 16) | (3 << 8) | (1))#define CLK_SRC (*((volatile unsigned long *)0x7E00F01C))void clock_init(void){ /*将每一个 LOCK_TIME 设置为 0xffff*/ APLL_LOCK = 0xffff; MPLL_LOCK = 0xffff; EPLL_LOCK = 0xffff; /* set async mode 当CPU时钟 != HCLK时,要设为异步模式 */ OTHERS &= ~0xc0; //将 OTHERS 的第六和第七位清零,以设置成异步模式。 while ((OTHERS & 0xf00) != 0); /*CLK_DIV是为外设进行分频的寄存器,共三个.CLK_DIV0、CLK_DIV1、CLK_DIV2。对于设置内核时钟和AHB、APB的总线时钟来说,我们只需要了解CLK_DIV0的几个位域即可。*/ CLK_DIV0 = (ARM_RATIO) | (MPLL_RATIO << 4) | (HCLK_RATIO << 8) | (HCLKX2_RATIO << 9) | (PCLK_RATIO << 12); APLL_CON = APLL_CON_VAL; /* 500MHz */ MPLL_CON = MPLL_CON_VAL; /* 500MHz */ CLK_SRC = 0x03;//打开时钟源开关,让进过LOCK_TIME后变得稳定后的时钟源输出。}
注意:OTHERS寄存器中的syncmode和syncmuxsel这两个位应该是协同工作的,一起置1或清0。syncmode要置1,就先向syncmuxsel位写1;syncmode清0后,随即再把syncmuxsel位也清0。
"C语言中怎么设置时钟"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
时钟
语言
内容
寄存器
更多
模式
知识
输出
实用
学有所成
接下来
三个
两个
个位
内核
困境
外设
实际
总线
情况
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
辽宁gps卫星时钟服务器云空间
数据库文件生成脚本
什么是软件开发套件
车载电子软件开发
服务器管理员工作总结
谷歌云服务器怎么运行程序
小鹅网络技术招聘
郑州安卓软件开发定制费用
网络安全心得体会短小
手机软件开发好学吗
江西戴尔服务器虚拟化云主机
asp连接数据库表格
方舟联机服务器怎么样
凯塞尔软件开发计划
常德游戏软件开发排名
网络技术与数据库读书笔记
网络技术对网络协议的理解
数据库中关系模式是静态的稳定的
网络技术专业热门吗
昆翎数据库设计员
深圳市天麒软件开发有限公司
宿迁小型网络技术厂家价格
永州祁阳软件开发
网络安全知识关后感
大圣服务器
计算机与网络技术基础考点
广州安卓软件开发常见问题
筑业资料软件开发时间
国务院教师网络安全
云南软件开发工程师培训排行