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.
工具/软件:Code Composer Studio
您好!
我现在可以使用 UART 进行转换、谢谢! 但有2个问题。
1) 1)当我使用 I2S 至 PDM 麦克风时。 在其示例 pdmstream_CC2650STK_TI 中、我想查看 并保存 PDM STREAMMING、但如何 获取?
2)从何处可以看到输出:"Log_Print1 (Diags_User2、"I2S:(%p) opened"、hwAttrs->baseAddr);
您好、lixia、
我们将深入研究这一点、并在本周结束前再次与您进行讨论。
谢谢、
Alexis
您好!
1) 1)是否确定要访问 PDM 数据? 一般而言、有用数据是 PCM 数据。
要获得 PCM 数据,很容易:您基本上需要使用函数 PDMCC26XX_requestBuffer(),因为它是在 SA_processPDMData()函数中完成的。 然后、您基本上会将数据存储在所需的位置。
要获取 PDM 原始数据、您需要深入 PDM 驱动程序以在数据被抽取之前截取数据(但我还是不想这样做)。
在这两种情况下、请记住要存储的数据量很大(根据您的设置、您可能会在几秒钟内填充器件的整个存储器)
2) 2)请查看自述文件、了解有关如何使用 Display 驱动程序的一些详细信息。 如果需要、我已将其最相关部分粘贴到下面:
##示例用法 *示例输出是通过使用 Display 驱动程序 API 生成的。 请参阅 SimpleLink MCU SDK 用户指南中的 Display 驱动程序文档。 运行示例。 `Board_PIN_LED1`打开``以指示驱动 程序初始化完成。 当 PDM 驱动程序启动时、它将关闭。 当用户按下`Board_PIN_BUTTON0`时将启动流。 `Board_PIN_LED1` 在流结束前保持关闭状态。 当用户按 `Board_PIN_Button1`或流中存在错误时、流结束。 当流运行时、`Board_PIN_LED1`根据 采样率以一个周期打开和关闭。 周期为32帧、占空比为50%。 一帧 为192个样本、@16kHz、周期为364ms。 当应用程序运行时、打开一个到 相应 COM 端口的串行会话(例如 HyperTerminal、PuTTy 等)。 > COM 端口可通过 Windows 中的 Device Manager (设备管理器)或 Linux 中的`ls /dev/tty`确定。 连接应具有以下设置 ``` 波特率:115200 数据位: 8. 停止位: 1 奇偶校验: 无 流控制:无 ``` 如果在目标完成初始化之前启动串行会话、 则显示以下内容: `s延迟 PDM 流:`
我希望这将有所帮助、
此致、
是的、我确定 我的麦克风传感器是 PDM 输出、我使用 pdmstream_cc2650STK_TI 示例。
我不确定 这是否适合 PDM 麦克风,因为我在 源代码中添加了两个头文件
#include
#include
我注意使用 API 来获取 I2S 缓冲器,但它建议我找不到源。
PDMCC26XX_I2S_Handle i2sHandle;
i2sHandle=(PDMCC26XX_I2S_Handle)&(PDMCC26XX_I2S_CONFIG);
PDMCC26XX_I2S_INIT (i2sHandle);
i2sHandle=PDMCC26XX_I2S_OPEN (i2sHandle、NULL);
PDMCC26XX_I2S_startStream (i2sHandle);
我还想添加以下 API:
pdm2pcm16k (bufferRequest.bufferIn、decimationState、object->decimationFilter、(Int16_t *)&tempcmBuf);
这似乎是同一个问题。 可以给我一些建议吗?
现在、我 必须使用 I2S 寄存器来接受 PDM 缓冲区、 这是它看起来唯一的方式。
您好!
您需要访问什么:原始 PDM 数据? 或抽取 PDM 数据(称为 PCM)?
PDM 驱动程序已经负责使用抽取滤波器(名为 pdm2pcm16k 或 pdm2pcm8k)将原始 PDM 数据抽取为 PCM 数据。
此致、
您好!
这两种类型中的任何一种都可以、我认为抽取 PDM 数据更好。
如何 解决此问题:
我在 main.c 中添加了标题
#include 、
并 将 PDMCC26XX.c 置于 ti/drivers/PDM 中。
然后生成全部、出现错误:
ERROR[Li005]:"PDMCC26XX_I2S_INIT"没有定义[引用自 C:\ti\simplelink\TIMAC_1_05_02_43299-TX_LOW_POWER_2019\TIMAC_1_05_02_43299-TX\Projects\Mac\Samples\cc26xx_RTOS\Projects\IAR\CC2650\Application\Application
我在 ti/drivers/pdm/PDMCC26XX.h 中注意到了这一点
#ifndef ti_drivers_PDM_PDMCC26XX__include
#define ti_drivers_PDM_PDMCC26XX__include
您好!
[引用 user="lixia Zhu"]我认为抽取的 PDM 数据更好
然后您可以使用 PDM 驱动程序。 有关详细信息、请参阅文档: http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/tirtos/2_20_00_06/exports/tirtos_full_2_20_00_06/products/tidrivers_full_2_20_00_08/docs/doxygen/html/_p_d_m_c_c26_x_x_8h.html
关于编译错误、请验证您的文件夹是否是#include 搜索路径的一部分(请参阅 Project Properties > Build > Include Options)。 这种问题很常见、请使用论坛的搜索功能了解详细信息。
此致、
您好!
您是否在提供信息的情况下不能解决您的问题?
如果是、请单击"此解决了我的问题"按钮。
此致、