i.MX6ULL终结者主频和时钟配置例程程序设计

本实验对应的例程在光盘资料的:i.MX6UL终结者光盘资料\04_裸机例程源码\7_clk 目录下面,我们在Ubuntu系统下使用命令“mkdir 7_clk”建立“7_clk”文件夹,如图 1所示:
在这里插入图片描述

图 1

然后使用命令“cd 7_clk”进入7_clk文件。如图 2所示:
在这里插入图片描述

图 2

然后使用命令“cp -r …/6_key/* ./”将上一章试验中的所有内容拷贝到刚刚新建的“7_clk”里面,如图 3:
在这里插入图片描述

图 3

拷贝完成以后的工程如图 4所示:
在这里插入图片描述

图 4

然后使用命令“vi drivers/clk/clk.h”修改clk.h文件。如图 5所示:
在这里插入图片描述

图 5

修改如下内容:

  1 #ifndef __BSP_CLK_H
  2 #define __BSP_CLK_H
  3 
  4 #include "imx6ul.h"
  5 
  6 /* 函数声明 */
  7 void clk_enable(void);
  8 void imx6u_clkinit(void);
  9 
 10 
 11 #endif

gpio.h文件中是两个函数声明。主要是第7行添加void clk_enable和第8行添加 imx6u_clkinit函数声明,部分截图如图 6所示:
在这里插入图片描述

图 6

添加完成之后,保存并退出文件。
然后使用命令“vi drivers/clk/clk.c”修改clk.c文件。如图 7所示:
在这里插入图片描述

图 7

添加内容如下:

 1 #include "clk.h"
  2 
  3 /*
  4  * @description : 使能I.MX6U所有外设时钟
  5  * @param               : 无
  6  * @return              : 无
  7  */
  8 void clk_enable(void)
  9 {
   
 10         CCM->CCGR0 = 0XFFFFFFFF;
 11         CCM->CCGR1 = 0XFFFFFFFF;
 12         CCM->CCGR2 = 0XFFFFFFFF;
 13         CCM->CCGR3 = 0XFFFFFFFF;
 14         CCM->CCGR4 = 0XFFFFFFFF;
 15         CCM->CCGR5 = 0XFFFFFFFF;
 16         CCM->CCGR6 = 0XFFFFFFFF;
 17 }
 18 
 19 /*
 20  * @description : 初始化系统时钟,设置系统时钟为528Mhz,设置PLL2和
 21                PLL3各个PFD时钟,所有时钟频率按照I.MX6U官方手册推荐的值.
 22  * @param              : 无
 23  * @return              : 无
 24  */
 25 void imx6u_clkinit(void)
 26 {
   
 27         unsigned int reg = 0;
 28         /* 1、设置ARM内核时钟为528MHz */
 29         /* 1.1、判断当前ARM内核是使用的哪个时钟源启动的,
正常情况下ARM内核是由pll1_sw_clk驱动的,而
 30         
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值