打印
[菜农助学交流]

UDA1341 音频解码芯片的 寄存器设置(DATA0:Ox14)

[复制链接]
2900|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kyzb001|  楼主 | 2011-9-23 15:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
继续 介绍UDA1341的寄存器
这个寄存器的名字叫做DATA0  物理地址是0x14  也是个8位寄存器,功能太多,主要是对声音的输入和输出设置  下面就一一介绍
D7: D6 二个模式选择  所以这个寄存器有4种模式 先介绍第一种模式
D7=0,D6=0.模式一
这个模式简单 就是音量控制 D5: D0都是对声音的调节
就是对声音的调节大小在0-2的5次方(打不出来)
举例:
WriteAddr(0x14);//选择寄存器
WriteData(30);   //输入数据   
这个音量的前2个是0   后2个是最大  所以你输入0 1  都是没声音   输入62 63都是最大。

D7=0,D6=1,模式二
这个是模式是设置低音增强和高音增强。就不做详细介绍了
D5: D2是低音, D1: D0是高音

D7=1,D6=0,模式三
D5: PP 峰值检测   0:音量特性之前   1:音量特性之后。
D4: D3 去加重
             0 0 不去加重
             0 1 32kHz去加重
             1 0 44.1kHz去加重
             1 1 48kHz去加重
D2: MT  静音    0不静音    1静音
D1: D0 音频滤波模式选择
             0 0     平均值
             0 1     最小值
             1 0     最小值
             1 1     最大值

D7=1,D6=1模式四   这么模式比较蛋疼,因为比较多的东西,这个模式是扩展数据,D5: D4默认为0, D2: D0为扩展数据的地址  扩张数据位5位
扩张数据位用A表示
总共有六个扩张数据寄存器
D2: D0    0 0 0  寄存器一  设置通道一的混频增益
D2: D0    0 0 1  寄存器二  设置通道二的混频增益         增益设置和设置音量一样,这里就不做过多的介绍啦
D2: D0    0 1 0  寄存器三  设置麦克风灵敏度和混频器模式选择
                       A4: A2    设置麦克风灵敏度这个也和设置音量一样的模式, 必须注意:只有当(AGC)自动增益使能的时候,下面会有介绍这么设置,这个才可以被设置,不然也木有用。
                       A1: A0    设置混频器的模式
                       0 0         双差模式
                       0 1         选择输入通道一,输入通道二切断
                       1 0         选择输入通道二,输入通道一切断
                       1 1         数字混频模式(貌似一般用这个)
D2: D0   1 0 0  寄存器四
D2: D0   1 0 1  寄存器五  这二个寄存器要一起介绍。  
                       四:A4            AGC使能     0=Dis, 1=En
                       寄存器四德 A3和A2默认为0   A2,A1和寄存器5的A4: A0组成一个7位的数据组 用来设置 输入通道二的放大器增益   这个设置必须必能在 双差模式下并且AG禁用
                       数据和音量设置一样
寄存器六 是设置自动增益时间控制常数的
DATA0寄存器介绍完毕,这个寄存器比较蛋疼。相信寄存器在模式一到模式三德情况下都会使用
下面举例设置模式四
// disable AGC
WriteL3Addr(0x14);
WriteL3Data(0xC4,0);       //11000,100  : DATA0, Extended addr(100)
WriteL3Data(0xe0,0);       //111,000,00 : DATA0, AGC=Off, IG[0,1]=0

注意第二个数据的高二位是1 1 也就是选择模式四。 后三位选择地址(以传输数据的模式)
接着在传输数据。这个数据高三位默认为0
这样就设置好一个寄存器了  如果想一下设置很多寄存器,也没必要设置一个输入一个WriteL3Addr(0x14);,当然你也可以那样使用

WriteL3(0x14 + 0,1);
//DATA0 (000101xx+00)

WriteL3(0x7b,0);
//01,11 10,11 : Data0, Bass Boost 18~24dB, Treble 6dB 模式二

WriteL3(0xc4,0);
//1100 0,100  : Extended addr(3bits), 100      模式四 寄存器四

WriteL3(0xf0,0);
       //111,1 00,00 : DATA0, Enable AGC, 00, input amplifier gain channel 2 (2bits)

WriteL3(0xc0,0);
//1100 0,000  : Extended addr(3bits), 000
模式四 寄存器一

WriteL3(0xe0,0);
//111, 00000  : MA = 0dB

WriteL3(0xc1,0);
//1100 0,001  : Extended addr(3bits), 001       模式四 寄存器二

WriteL3(0xe0,0);
//111, 00000  : MB = 0dB





OVER 这个寄存器就介绍到这里

相关帖子

沙发
ichuangj| | 2011-9-29 17:06 | 只看该作者
助学板上不是82V731吗?

使用特权

评论回复
板凳
hotpower| | 2011-9-30 00:06 | 只看该作者
好像新唐的板子用的是UDA1341

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:Is this my life

15

主题

624

帖子

1

粉丝