Page 3 of 4

Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 09:32
by chen12

是不是还有其他地方的代码也需要同步更新呢


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 09:36
by heixia.wang@tuya.com

实际有数据发出去吗?这个错误说明dma完成中断是触发的


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 09:45
by heixia.wang@tuya.com

这个是我们现在在用的i2s驱动代码,你看看有没有差异,版本之间修改的部分就是tkl_i2s.c和这几个驱动文件


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 09:49
by chen12

用示波器看了是有信号,如图片所示,但是这个波形是不是不太对,而且功放出来也不是发送数据的声音


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 09:53
by heixia.wang@tuya.com

逻辑分析仪数据对的上吗?你的i2s接收和发送的配置是否一致?


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 09:59
by chen12

你好,这份i2s驱动你那边能编译过去吗,我这边替换后,找不到delay这个函数


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 09:59
by chen12

你们用的是12.25的sdk吗,还是有更新的sdk,我这边更新一下


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 10:03
by heixia.wang@tuya.com

delay更换为bk_delay,我们当前用的是smp版本,sdk变动非常大,不建议直接替换


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 10:40
by chen12
heixia.wang@tuya.com 2025年 Dec 24日 09:53

逻辑分析仪数据对的上吗?你的i2s接收和发送的配置是否一致?

我这边测试,就算只发送一次,他还是一直保持这个波形,而不是过一会变低电平,这应该不正常吧
目前发送这边,代码如下:

Code: Select all

static void __test_media_i2s_play(void *arg)
{
    TUYA_I2S_BASE_CFG_T i2s_cfg;
    int ret = 0;
    i2s_cfg.mode = TUYA_I2S_MODE_MASTER | TUYA_I2S_MODE_TX;
    i2s_cfg.communication_format = I2S_COMM_FORMAT_STAND_I2S;
    i2s_cfg.channel_format = TUYA_I2S_CHANNEL_FMT_RIGHT_LEFT;
    i2s_cfg.bits_per_sample = TUYA_I2S_BITS_PER_SAMPLE_16BIT;
    i2s_cfg.mclk = 0;
    i2s_cfg.sample_rate = 4;
    i2s_cfg.i2s_dma_flags = 1;

ret = tkl_i2s_init(SEND_I2S_NUM,  &i2s_cfg);
if(OPRT_OK != ret) {
    bk_printf("i2s_init fail %d\r\n", __LINE__);
    return;
}
bk_printf("*********************i2s_init SEND_I2S_NUM sucess %d\r\n", __LINE__);

{
    ret = tkl_i2s_send(SEND_I2S_NUM, PCM_SPK16000, TEST_AUDIO_DATA_LEN_PER_SECOND);
    if( ret < 0) {
        bk_printf("*********************SEND_I2S_NUM fail ret = %d %d\r\n",ret, __LINE__);
        return;
    }
    bk_printf("*********************SEND_I2S_NUM continue %d\r\n", __LINE__);
}
}

接收端的功放MAX98357A,看了下是支持 目前t5这边的配置的,并且PCM_SPK16000这个数据,也是从你们另外的Demo中copy过来的


Re: T5 3.12.25 i2s使用问题

Posted: 2025年 Dec 24日 12:04
by heixia.wang@tuya.com

只要不停止i2s fifo里的最后一个数据会一直向外发送