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.

[参考译文] TLV320AIC3254:关于 ADC 的 INT1

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/897600/tlv320aic3254-about-int1-from-adc

器件型号:TLV320AIC3254

大家好、提前感谢您的帮助。

我想通过转换结束时的信号读取 ADC 数据、以便不轮询 ADC 状态寄存器。

为此、信号 INT1配置为 MFP5上的输出。 但 ADC 转换结束时的信号 INT1始终具有4.6ms 的周期。

这不取决于我的设置。 Fs 选择0.192MHz。 下面给出了一个示例程序代码。 如何设置数据输出的频率? 

我怎么了?

 

WRITE_ADC_TLV320 (0x00、0x00);/*初始化为第0页*/

WRITE_ADC_TLV320 (0x01、0x01);//通过软件复位初始化器件*/

WRITE_ADC_TLV320 (0x04、0x00);//引脚 MCLK = 25MHz 是 CODE_CLKIN *

 

WRITE_ADC_TLV320 (0x12、0x01);/*为 NADC 分频器加电、值为2 */

WRITE_ADC_TLV320 (0x13、0x04);//为 mAdc 分频器加电、值为7 */

WRITE_ADC_TLV320 (0x14、0x20);//将 ADC 的 OSR 编程为128 *

WRITE_ADC_TLV320 (0x3D、0x0D);//选择 ADC PRB_R13 *

WRITE_ADC_TLV320 (0x00、0x00);/*初始化为第0页*/

WRITE_ADC_TLV320 (0x51、0xc0);//为左侧和右侧 ADC 通道加电*

WRITE_ADC_TLV320 (0x52、0x00);//取消左侧和右侧 ADC 数字音量控制的静音   

 

WRITE_ADC_TLV320 (0x66、0xc1);//为左侧和右侧 ADC 通道启用 DC 测量模式0 0001:DC 测量 D 参数= 1*/   

WRITE_ADC_TLV320 (0x67、0x00);/*左通道和右通道直流测量结果更新被启用*/

WRITE_ADC_TLV320 (0x30、0x02);        /*直流 INT1中断*/

WRITE_ADC_TLV320 (0x34、0x014);      /*来自 MFP5 (32引脚)的 INT1输出*/

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

    您好 Vladimir!

    欢迎参加我们的 e2e 论坛!  我不会立即看到您的寄存器设置有任何错误、但是如果您可以验证上面的最后一行是否实际将0x14 (而不是0x01)写入寄存器34、我会很感激。  您能不能为我描述 INT 脉冲的宽度是什么样的?  

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

    感谢 Tom 的及时回复、并希望为我提供帮助。 对于寄存器34h、写入14h (00010100:GPIO 输出为 INT1、SLAA408A、112)。 主调试程序看起来非常简单、在循环中读取2Dh 寄存器(粘滞标志寄存器3 - 0x00 / 0x2D)、以便自动清除数据就绪标志(左侧 ADC 直流测量数据可用标志/ 1)。 数据可用/将在读取寄存器时清除)。 μs 该标志显然正在被移除、因此 INT1信号看起来像这样:高电平2.3 MSEK、低电平0.4-0.5 μ s (变化)、周期非常精确2.35ms。 为什么信号 INT1出现如此低的频率、因为根据我的计算:ADC_FS = 25 * 10 ^ 6 /1/4/32 = 195.3kHz?

    while (1)

    {                     

               LED_BLINK;

               READ_ADC_TLV320 (0x2D、0);

               延迟(10_usec);

    }// main ()

     

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


    我发现、在读取粘滞标志寄存器3 - 0x00 / 0x2D 寄存器后、数据就绪位不会复位、尽管它们应该复位、正如文档所说的那样。

    左侧 ADC 直流测量数据可用标志

    0:数据不可用

    1:数据可用(将在读取寄存器时清除)

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

    感谢您添加的详细信息 Vladimir!  让我更深入地探讨一下这个问题。  我将在第二十个星期一的一天结束前再次与您进行讨论。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    亲爱的,我感谢你关注我的问题,并希望为我提供救济。