继续 介绍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 这个寄存器就介绍到这里 |