This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TAS2563:TAS2563 PureConsole Config 寄存器输出处理说明

Guru**** 2502205 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1556346/tas2563-tas2563-pureconsole-config-register-output-handling-clarification

器件型号:TAS2563


工具/软件:

使用 PurePath Console 3 来基于我的扬声器和工程获取配置寄存器值。 其输出低于。 有关如何通过 I2C 写入这些寄存器的示例 C 代码、IMO 非常令人困惑、我想做些澄清。

示例代码中的下一行是否正确、或者字节数是否应为 2 而不是 1?

I2C_WRITE ((unsigned char *)&r[i]、1); 


对于 CFG_META_BURST、字节数是否包含第一个位置字节(如果显示为 4 字节、实际上是 4 还是 5)?


例如、以下部分的正确写入 I2C 内容是什么:

{0x00、0x04}、
{ CFG_META_BURST、4 }、
{ 0x60、0x04 }、
{ 0xcc、0xcc }、
{ 0xcd、0x00 }、 


答:

I2C_WRITE ([0x00、0x04])
I2C_WRITE ([0x60、0x04、0xcc、0xcc、0xcd])

B:  

I2C_WRITE ([0x00])
I2C_WRITE ([0x60、0x04、0xcc、0xcc])
I2C_WRITE ([0xcd、0x00])

C:

还有别的吗?


===== PureConsole 的完整配置输出未修改=====

Program_0_rom Mode.h
typedef unsigned char cfg_u8;
typedef union{
结构{
CFG_u8 偏移;
CFG_u8 值;
};
结构{
CFG_u8 命令;
CFG_u8 参数;

};} cfg_reg;

#define CFG_META_SWITCH (255)
#define CFG_META_DELAY (254)#define
CFG_META_BURST (253)

/*示例 C 代码*//
*
//可以向器件写入 n 个字节的外部实现函数
// PCM51xx 和 TAS5766 目标要求在多次写入时设置 I2C 寄存器的高位 (0x80)。
//更多信息请参阅器件数据表。
extern int i2c_write (unsigned char *数据、int n);
//外部实现的函数将执行延迟 n 毫秒
extern int 延迟 (int n);
//示例实现。 致电:
// Transmit_registers(寄存器,sizeof(寄存器)/sizeof(寄存器[0]));
void transmit_registers (cfg_reg *r、int n)
{
int i = 0;
while (i < n){
switch(r[i]命令){
CASE CFG_META_SWITCH:
//用于传统应用程序。 忽略了这里。
休息;
CASE CFG_META_DELAY:
延迟 (r[i]。param);
休息;
CASE CFG_META_BURST:
I2C_WRITE ((unsigned char *)&r[i+1]、r[i]。param);
i +=(r[i]。param / 2)+ 1;
休息;
默认值:
I2C_WRITE ((unsigned char *)&r[i]、1);
Break;
}
I++;
}
}
*/

cfg_reg 寄存器[]={
{ 0x00、0x00 }、
{ 0x7f、0x00 }、
{ 0x00、0xFD }、
{ 0x0d、0x0d }、
{0x32、0x49}、
{0x3f、0x21}、
{ 0x19、0x80 }、
{ 0x0d、0x0d }、
{ 0x5f、0xc1 }、
{ 0x00、0x00 }、
{0x0a、0x03}、
{ 0x1a、0xFC }、
{ 0x1b、0xa6 }、
{ 0x1c、0xdf }、
{ 0x1d、0xef }、
{0x30、0x19}、
{ 0x32、0x80 }、
{ 0x38、0x00 }、
{0x30、0x19}、
{0x33、0x34}、
{ 0x34, 0x4b },
{0x35、0x84}、
{0x3c、0x38}、
{0x00、0x04}、
{ CFG_META_BURST、4 }、
{ 0x60、0x04 }、
{ 0xcc、0xcc }、
{ 0xcd、0x00 }、
{ CFG_META_BURST、48 }、
{ 0x14, 0x1c },
{0x94、0x7a}、
{ 0xe1、0x1f }、
{ 0xa3、0xd7 }、
{0x0a、0x22}、
{0xb3、0x33}、
{0x33、0x25}、
{ 0xC2、0x8F }、
{0x5c、0x28}、
{ 0xD1、0xeb }、
{0x85、0x2b}、
{ 0xe1、0x47 }、
{ 0xae、0x2e }、
{ 0xf0、0xa3 }、
{0xd7、0x32}、
{ 0x00、0x00 }、
{ 0x00、0x35 }、
{ 0x0F、0x5c }、
{0x29、0x38}、
{0x1E、0xb8}、
{0x52、0x3b}、
{ 0x2e, 0x14 }、
{ 0x7B、0x04 }、
{ 0xcc、0xcc }、
{ 0xcd、0x00 }、
{0x00、0x03}、
{ CFG_META_BURST、4 }、
{0x5c、0x1E}、
{ 0x2e, 0x14 }、
{ 0x7B、0x00 }、
{ CFG_META_BURST、4 }、
{0x60、0x21}、
{ 0x3D, 0x70 },
{ 0xa4、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x64、0x24 }、
{ 0x4c、0xcc }、
{ 0xcd、0x00 }、
{ CFG_META_BURST、4 }、
{0x68、0x27}、
{0x5c、0x28}、
{ 0xf6、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x6c、0x2a }、
{ 0x6b、0x85 }、
{ 0x1F、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x70, 0x2D }、
{0x7a、0xe1}、
{ 0x48、0x00 }、
{ CFG_META_BURST、4 }、
{0x74、0x30}、
{ 0x8a, 0x3D }、
{ 0x71、0x00 }、
{ CFG_META_BURST、4 }、
{0x78、0x33}、
{ 0x99、0x99 }、
{0x9a、0x00}、
{ CFG_META_BURST、4 }、
{ 0x7c、0x36 }、
{ 0xa8、0xf5 }、
{ 0xc3、0x00 }、
{0x00、0x04}、
{ CFG_META_BURST、4 }、
{0x08、0x39}、
{ 0xb8、0x51 }、
{ 0xec、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x0c、0x3c }、
{ 0xc7, 0xae }、
{0x14、0x00}、
{ CFG_META_BURST、4 }、
{ 0x10、0x3f }、
{ 0xd7, 0x0a }、
{ 0x3D、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x54、0x17 }、
{ 0x99、0x99 }、
{0x9a、0x00}、
{ CFG_META_BURST、4 }、
{ 0x6c、0x00 }、
{ 0x00、0x00 }、
{ 0x19、0x00 }、
{ 0x00、0x00 }、
{0x03、0x20}、
{ 0x04、0xf6 }、
{0x0a、0x03}、
{0x12、0x12}、
{0x13、0x76}、
{0x14、0x01}、
{ 0x15、0x2e }、
{ 0x17、0x0E }、
{ 0x19、0x00 }、
{0x33、0x34}、
{ 0x34, 0x4b },
{0x3b、0x38}、
{ 0x3D、0x08 }、
{0x3e、0x10}、
{0x3f、0x00}、
{0x40、0xb6}、
{0x00、0x01}、
{ 0x08、0x40 }、
{0x00、0x02}、
{ CFG_META_BURST、4 }、
{ 0x0c、0x40 }、
{ 0x00、0x00 }、
{ 0x00、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x10、0x03 }、
{0x4a、0x51}、
{ 0x6c、0x00 }、
{0x00、0x04}、
{ CFG_META_BURST、12 }、
{0x74、0x7f}、
{0xfb、0xb6}、
{ 0x14、0x80 }、
{0x04、0x49}、
{0xED、0x7f}、
{ 0xf7, 0x6c }、
{ 0x28、0x00 }、
{0x00、0x02}、
{ CFG_META_BURST、12 }、
{0x68、0x7f}、
{0xfb、0xb6}、
{ 0x14、0x80 }、
{0x04、0x49}、
{0xED、0x7f}、
{ 0xf7, 0x6c }、
{ 0x28、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x14、0x2D }、
{ 0x6A, 0x86 },
{ 0x6F、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x18、0x47 }、
{0x5c、0x28}、
{ 0xf6、0x00 }、
{ CFG_META_BURST、4 }、
{0x1c、0x16}、
{0x66、0x66}、
{ 0x66、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x20、0x1a }、
{0x66、0x66}、
{ 0x66、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x24、0x08 }、
{ 0x00、0x00 }、
{ 0x00、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x28, 0x17 }、
{0x33、0x33}、
{0x33、0x00}、
{ CFG_META_BURST、4 }、
{ 0x2C、0x15 }、
{ 0x99、0x99 }、
{0x9a、0x00}、
{ 0x00、0x05 }、
{ CFG_META_BURST、4 }、
{ 0x24、0x7f }、
{ 0xFE、0xFD }、
{ 0x47、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x2C、0xFE }、
{ 0xFE、0xa4 }、
{ 0xb5、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x40、0x00 }、
{0x00、0x03}、
{ 0x20、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x44、0x02 }、
{ 0x46、0xb4 }、
{ 0xe4、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x1c、0x01 }、
{ 0xc9、0x24 }、
{ 0x92、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x20、0x00 }、
{0x12、0x49}、
{ 0x25、0x00 }、
{0x00、0x02}、
{ CFG_META_BURST、4 }、
{ 0x5c、0x00 }、
{0x01、0x09}、
{ 0x45、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x64、0x00 }、
{0x00、0x12}、
{ 0xc0、0x00 }、
{0x00、0x04}、
{ CFG_META_BURST、4 }、
{ 0x64、0x00 }、
{ 0x00、0x00 }、
{ 0x00、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x40、0x04 }、
{ 0xcc、0xcc }、
{ 0xcd、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x4c、0x00 }、
{ 0x00、0x00 }、
{ 0x00、0x00 }、
{0x00、0x03}、
{ CFG_META_BURST、4 }、
{ 0x24、0x39 }、
{ 0x80、0x00 }、
{ 0x00、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x18、0x72 }、
{ 0x14、0x82 }、
{ 0xc0、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x1c、0x00 }、
{ 0x00、0x00 }、
{ 0x64、0x00 }、
{ CFG_META_BURST、4 }、
{0x20、0x40}、
{ 0xbd、0xb7 }、
{ 0xc0、0x00 }、
{ CFG_META_BURST、4 }、
{ 0x28, 0x2D },
{ 0x6A, 0x86 },
{ 0x6F、0x00 }、
{ 0x00、0x00 }、
{ 0x04、0xf6 }、
{0x0a、0x03}、
{ 0x31、0x40 }、
};
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    感谢您的联系。 我已将此工单转移给我们的软件团队。 请预计下周初会有回复。

    此致、
    Sydney Northcutt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    {0x00、0x04}、
    { CFG_META_BURST、4 }、
    { 0x60、0x04 }、
    { 0xcc、0xcc }、
    { 0xcd、0x00 }、 

    假设簿为 0x0。
    该代码表示向 B0x00P0x00R0x60 写入 4 个字节、四个字节为 0x04、0xcc、0xcc、0xcd、并忽略 0x00。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢