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.

TAS5713

Other Parts Discussed in Thread: TAS5713, TAS5715

Hi .. I am new to this whole embedded stuff. I am testing a custom board with a Cortex M3 and a TAS5713 on it. I have did all the startup sequence as instructed by the datasheet and verified that we have data, sclk, lrclr and mclk going into the audio chip andyet there is no sound .. Am I missing something .. Is there a sample code or a user/programming  guide that I can download and take a look at.

Thanks

  • Hi, Thuan,

    Unfortunately, we don't have further documentation beyond what is in the data sheet.

    Can you provide a list of registers and data that you are writing to the TAS5713?

    -d2

  • Hi Don .. Thanks for helping

    Here is the registers and values that I wrote to.. I verified the oscillator trim register has value of 0xC0 after a short delay (I even tried remove the delay and still get 0xC0). For Exit Shutdown, I tried both with 0x0 & 0x02

        /* Trim oscillator */
        if (Uda1380_WriteData(0x1B,0x0 ) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }
            Delay(100);
            
            /* Read back anverify Trim is done */
            if(Uda1380_ReadData(0x1B, &dataTmp) == UDA1380_FUNC_OK)
            {
              if (dataTmp != 0x0)
              {
                Delay(10);
              }
            }
            
            /* Clock rate 44.kKHz, 256 fs */        
        if (Uda1380_WriteData(0x0, 0x6C) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }

        
            /* Serial Data Interface I2S - Word Length = 16 */
        if (Uda1380_WriteData(0x04,0x03) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }        

            
            /* Volume control */
        if (Uda1380_WriteData(0x07,0x0) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }
        if (Uda1380_WriteData(0x08,0x0) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }
        if (Uda1380_WriteData(0x09,0x0) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }
        if (Uda1380_WriteData(0x0A,0x0) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }

            /* Soft Mute - no soft mute for all channels*/
        if (Uda1380_WriteData(0x06,0x00) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }        
     

            /* ICD Mode */
        if (Uda1380_WriteData(0x11,0xB8) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }        
        if (Uda1380_WriteData(0x12,0x60) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }
        if (Uda1380_WriteData(0x13,0xA0) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }
        if (Uda1380_WriteData(0x14,0x48) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }        
     
            
            
            /* Exit Shutdown */
        if (Uda1380_WriteData(0x05,0x02) != UDA1380_FUNC_OK)
            {
              Delay(10);
            }   

  • I just poked around the Device ID Register (0x01) and get back the value of 0x50 .. The datasheet say it should be 0x43. What does this mean ?

  • Hello Thuan,

    I have the same problem you had: no sound even though the I2S signals are good and I get 0x50 as the device id instead of 0x43. 

    I also noticed that the system control register 1 is at 0xa0 instead of its 0xb0 reset value (the difference is on a reserved bit so I don't know if it changes anything).

    Other registers are:

    clock control register: 0x6c

    device id register: 0x50

    error status register: 0x00

    system control register 1: 0xa0

    serial data interface register: 0x03 (I2S standard, which I'm using with my MCU)

    system control register 2: 0x00

    soft mute register: 0x00

    master volume register: 0x20

    pwm shutdown register: 0x30

    oscillator trim register: 0xc0

    Have you solved your problem? Does someone have an idea of what I'm missing?

    Thanks,

    Florent

  • After a somewhat painful experience with the TAS5715, which we never did get to work by following the datasheet, we eventually solved it by using the GDE configuration application to set up what we needed then dumping the I2C setup to file (Only seems to work if the program is DISCONNECTED from the hardware...).

    The file is simple ascii with the address followed by bytes of hex data, but between the 'interesting' GUI and the rather painful development cycle this imposes it all gets a bit trying. 

    We never did get BD mode to work which is disappointing as it would have saved a great deal of heat. 

    Also a warning about the EVM for the 5717, the BOM is wrong! Specifically the snubber capacitors are about 4 orders of magnitude too large, the resistors will smoke if you try to blindly copy it.

    Regards, Dan.