主题中讨论的其他器件:CC3200AUDBOOST、 CC3200
工具/软件:TI-RTOS
对于旧版 I2S 驱动程序的之前 SDK 版本、(https://github.com/ti-simplelink/ble_examples)
它具有以下配置、
/*
*配置10ms 帧@ 16kHz 采样率。
*请注意,帧大小变量的最大大小限制为255。
*它是一个硬件中的8位字段(AIFDMACFG)。
*
#define FRAME_SIZE 160
160/ 16000 = 0.01 S,因此我可以每1秒获得100个音频帧。 我已经在旧 SDK 上验证了这一点。
关于最新的 SDK、它具有新的 I2S 驱动程序、我希望旧版 SDK 也能获得相同的结果。
我做了一些实验来验证帧间隔、但 我没有得到相同的结果。
我 使用/simplelink_cc13x2_26x2_SDK_3_10_00_53/examples/rtos/CC26X2R1_LAUNCHXL/drivers/i2secho 示例进行了实验。
关于以下实验、我将 BUFSIZE 从1024修改为160。
#define BUFSIZE 160 // I2S 缓冲区大小*/
实验1.
仅启动读取事务。
静态空 readCallbackFxn (I2S_Handle handle、int_fast16_t status、I2S_Transaction *事务 Ptr){
read_data_cnt++;
}
我得到帧计数为~401每1秒。
实验2.
仅启动读取事务。
静态空 readCallbackFxn (I2S_Handle handle、int_fast16_t status、I2S_Transaction *事务 Ptr){
I2S_Transaction *事务已完成=(I2S_Transaction *) List_prev (&transactionPtr ->队列 Element);
if (transactionFineded!= NULL){
read_data_cnt =操作已完成-> numberOfCommple;
}
}
我得到每1秒~67的帧计数。
问题1:为什么我在实验1和实验2中得到不同的结果?
问题2:为什么我在新旧 SDK 中获得了不同的结果?
谢谢。
BR
Trevor