OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5161|回复: 4

关于WM8978的MCLK设置问题

[复制链接]

32

主题

119

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
298
金钱
298
注册时间
2015-1-30
在线时间
40 小时
发表于 2017-3-16 17:04:42 | 显示全部楼层 |阅读模式
1金钱
如题,原子哥的探索者板子是用的F407输出的MCLK时钟,根据不同的采样率来设定MCLK的频率
现在的实际情况是的WM8978的MCLK是一个独立的是晶体12.288MHZ
WM8978自己有一个PLL电路,为了应对不同的采样率MCLK时钟要设置成PLL提供,
图片1.jpg
由上图可知 设置R6的第8位为1 就可以是PLL提供时钟;
为了应对不同的采样率PLL的值应该是可变的 PLL/256=采样率

PLL频率比率R=f2/f1可以通过寄存器PLLK和PLLN设置:
PLLN=int R
PLLK=int(2的24次方(R-PLLN))
寄存器地址
标志
默认值
描述
R36 PLL N value
4
PLLRESCALE
0
输入到PLL前MCLK除以2
3:0
PLLN
1000
PLL输入/输出频率比率整数部分,值大于5小于13
R37 PLL K value 1
5:0
PLLK[23:18]
0Ch
PLL输入/输出频率比率小数部分(视为一个24位的二进制数码)
R38 PLL K value 2
8:0
PLLK[17:9]
093h
R39 PLL K value 3
8:0
PLLK[8:0]
0E9h
f2在90MHz附近时PLL的性能最好,它的稳定性峰值N=8。

这是探索者开发版带的资料;
问:
这个PLL的具体是怎么计算的,小弟愚笨看懂上面的算法!!
问:
当WM8978使用外部独立时钟是移植原子哥代码需要改动是:
设置MCLK为芯片内部PLL共;
设置相应是PLL输出频率
禁止F407输出MCLK
就OK了?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2017-3-16 23:14:47 | 显示全部楼层
回复

使用道具 举报

32

主题

119

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
298
金钱
298
注册时间
2015-1-30
在线时间
40 小时
 楼主| 发表于 2017-3-17 08:53:51 | 显示全部楼层

这个不知道原版手册上是怎么写的。。。
回复

使用道具 举报

32

主题

119

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
298
金钱
298
注册时间
2015-1-30
在线时间
40 小时
 楼主| 发表于 2017-3-18 09:03:45 | 显示全部楼层
难道坛子里面的人,使用WM8978的人都是模仿原子哥的吗?没人自己搞的吗?没人知道这个怎么算吗?
回复

使用道具 举报

5

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2015-2-2
在线时间
8 小时
发表于 2017-8-28 11:09:13 | 显示全部楼层
wm8978 使用内置mclk需要外置晶振吗?@正点原子
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-18 05:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表