主题 : mini6410时钟设置 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 115337
精华: 0
发帖: 9
金钱: 55 两
威望: 11 点
贡献值: 0 点
综合积分: 18 分
注册时间: 2015-05-13
最后登录: 2018-04-19
楼主  发表于: 2015-05-30 18:40

 mini6410时钟设置

在设置时钟时,需要设置寄存器CLK_DIV0来设置分频器系数,看教程里面是如下直接赋值的设置
复制代码
  1. CLK_DIV0 = (ARM_RATIO) | (MPLL_RATIO << 4) | (HCLK_RATIO << 8) | (HCLKX2_RATIO << 9) | (PCLK_RATIO << 12);

感觉这样会影响其他位的值,所以我写成如下设置方式,先进行位清除,再进行设置
复制代码
  1. CLK_DIV0 &= 0xFFFF0000;
  2. CLK_DIV0  |= (ARM_RATIO) | (MPLL_RATIO << 4) | (HCLK_RATIO << 8) | (HCLKX2_RATIO << 9) | (PCLK_RATIO << 12);

但是这样设置后,led灯不亮,去掉 CLD_DIV0 &= 0xFFFF0000;这一句就能亮,不知道这一句有什么问题,请指教  
级别: 新手上路
UID: 115337
精华: 0
发帖: 9
金钱: 55 两
威望: 11 点
贡献值: 0 点
综合积分: 18 分
注册时间: 2015-05-13
最后登录: 2018-04-19
1楼  发表于: 2015-06-02 08:50