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.

[参考译文] CCS/CC3200-LAUNCHXL:创建多个任务时出现问题-串行和音频 WIFI

Guru**** 2511985 points
Other Parts Discussed in Thread: CC3200, CC3200AUDBOOST

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/781783/ccs-cc3200-launchxl-issue-in-creating-multiple-tasks--serial-and-audio-wifi

器件型号:CC3200-LAUNCHXL
主题中讨论的其他器件:CC3200CC3200AUDBOOST

工具/软件:Code Composer Studio

您好!

实际上、我希望同时执行串行和音频通信。 有可能吗? 我尝试修改 wifi 音频示例、在串行 wifi 示例中添加了另外两个线程。 但是当我尝试实现它时,它不会提供任何音频或串行输出。 可以有人帮我解决这个问题吗?

lRetVal = OSI_TaskCreate (Interpreter_Task、(signed char *)"Wi-Fi"、\
OSI_STACK_SIZE、NULL、
1、NULL);

lRetVal = OSI_TaskCreate (basic_Interpreter、(signed char *)"UART"、\
OSI_STACK_SIZE、NULL、
1、NULL);

 此致、

图表

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

    查鲁

    您能详细说明一下您想同时处理串行和音频通信的方法吗? 您是否说要调试终端输出并进行音频回放? 这绝对是可能的、请告诉我您遇到了什么具体错误。

    此致、

    Vince  

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

    尊敬的 Vince:

    我想同时在两个 CC3200板之间传输串行和音频数据。 与给定的 SDK 示例类似、串行 wifi 示例使用 TCP、音频 WIFI 使用 UDP 传输数据包。 因此,我将串行 wifi 示例中的两个任务(解释器和基本解释器)包含到音频 wifi 示例中。 程序已成功构建、没有错误、但在输出项上、我只能看到以下行  

    卷:50 reg:222
    卷:50 reg:128 0

    此致、

    图表

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

    您是否正在使用 CC3200AUDBOOST? 我不太理解您的问题、但您似乎尝试合并两个示例、这两个示例执行两个不同的操作、但不了解每个示例如何单独工作。 我建议单独运行每个示例、并在尝试合并之前了解每个示例的预期结果。

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

    尊敬的 Vince:

    我单独尝试了两个示例、它们工作正常。 我尝试修改音频 wifi 示例、以便可以同时传输音频和串行数据。我修改了 network.c 文件、但我不确定这种方法是否正确。 我正在附加修改后的 network.c 文件。 请看一下。 实际上、我为音频和串行数据创建了两个 UDP 套接字。 我分别在麦克风和扬声器任务中发送和接收串行和音频数据包。 但它不起作用。 看起来它不想创建一个文件(.

    lRetVal = sl_FsOpen ("mDNSStatusFile.txt"、FS_MODE_OPEN_READ、\
    ulToken、&g_isFileHandle);)

    程序卡在这里。  

    在 main 函数中、我创建了一个用于读取 UART 的单独线程、如下所示

    lRetVal = OSI_TaskCreate (basic_Interpreter、(signed char *)"UART"、\
    OSI_STACK_SIZE、NULL、
    1、NULL);

     请帮我解决此问题、我想同时将串行和音频数据从一个板传输到另一个板。

    e2e.ti.com/.../modified-_5F00_audio_5F00_example.txt

    此致、

    图表

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

    是否在文件系统 API 之前调用 sl_Start()? 确保在执行任何 SL 命令之前调用 sl_Start。 对于传输、请为每个流选择不同的套接字、并使用不同的端口。 如果您有这些工作方式、则只需将任务从一个添加到另一个、您就应该能够使其工作。

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

    尊敬的 Vince:

    谢谢。 现在、我能够使它正常工作。 但输出有噪声。 我将1KHz 作为输入正弦波。 现在、我只想让编解码器自行生成哔声并路由到扬声器。 我找到了一些代码行。  

    AudioCodecPageSelect(TI3254_PAGE_0);    // Select Page 0
        //Writing Beep length to registers 73,74,75 and 30 being the Codec address.
        //73=49 in hex and so on.
        AudioCodecRegWrite(TI3254_BEEP_LEN_MSB, 0x01);
        AudioCodecRegWrite(TI3254_BEEP_LEN_MID, 0x77);
        AudioCodecRegWrite(TI3254_BEEP_LEN_LSB, 0x00);
        //Now writing Sine and cosine coefficients MSB first then LSB in
        //76,77,78,79
        AudioCodecRegWrite(TI3254_SINE_MSB, 0x23);
        AudioCodecRegWrite(TI3254_SINE_LSB, 0xFB);
        AudioCodecRegWrite(TI3254_COSI_MSB, 0x7A);
        AudioCodecRegWrite(TI3254_COSI_LSB, 0xD7);
        //now that all coefficient settings are done, we can move on to control the volume of left and right
        //channel beep and turn on beep. Assuming Volume of left and right beep= –2dB
        AudioCodecRegWrite(TI3254_RIGHT_BEEP_CTRL_REG, 0x04); // Making gain of right –2dB and making right and left channel independent
        AudioCodecRegWrite(TI3254_LEFT_BEEP_CTRL_REG, 0x84); //Make gain of left channel-2dB and turning on Beep
    我只需添加音频编解码器发出哔声即可。 我尝试在扬声器任务中添加这些代码行、但它不起作用。 请帮我解决这个问题。
    此致、
    图表
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    查鲁

    您如何输出该1kHz 正弦波? 当前示例设置为16kHz、立体声、16位音频。 您必须将此采样与您想要创建的采样相关联、以确保良好的音频质量。

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

    尊敬的 Vince:

    实际上、它们是两个不同的任务

    1.当我尝试使用1kHz 正弦波的音频 wifi 示例时、它会产生无法闻的噪声、但我可以在示波器上看到。 所以我想找出噪声来自哪里。

    2.我想发出哔声,因为它不涉及 Launchpad 上的射频,我认为可能是 cc3200 launchpad 上的射频发出的噪音。

    音频 WiFi 示例中的回送模式是否也在执行相同的操作? 或者、我需要做什么来关闭射频? 我只想让音频以环回模式输入和输出 Booster Pack、而不会对射频部分造成任何干扰。

    我想找出噪声源、不管是射频还是编解码器?

    我正在连接我的输出以供您参考

    此致、

    图表  

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

    我不确定您尝试对音频编解码器命令执行什么操作。 该示例通过向编解码器发送 I2S 数据和从编解码器发送 I2S 数据来工作。 播放的音频是我们通过 I2S 线路发送的任何内容。

    当未连接任何设备时、我相信该示例具有回环模式、因此无论您向麦克风输入提供何种信号、您都将从扬声器中获得。 您看到的噪声不是由射频引起的。 我建议您使用网络分析器来查看它、并确定您看到的频率、然后尝试从那里找出原因。

    BR、
    Vince