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.

[参考译文] CC2650STK:CC2650 UART TX 丢弃字节、破坏输出

Guru**** 2468460 points
Other Parts Discussed in Thread: CC2650

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/675234/cc2650stk-cc2650-uart-tx-dropping-bytes-corrupting-output

器件型号:CC2650STK
Thread 中讨论的其他器件:CC-DEVPACK-DEBUGCC2650

美好的一天

我将使用 cc2650 sensortag 以及 XDS110调试探针(CC-DEVPACK-DEBUG)。 我正在开发 Contiki 应用、并通过 UART 传输流输出。 在许多实例中、我观察到数据似乎已损坏。 检查数据后、FIFO 中现有的数据似乎会被丢弃、而不是较新的数据。

我在115200、230400、460800和921600的速度下发现了该问题。  查看 contiki CPU/cc26xx-cc13xx/dev/cc26xx-uart.c、只需调用 UARTCharPut 即可。

如有任何建议,请提出。

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

    尊敬的 Thomas:

    您如何通过 UART 发送数据? 您是直接使用 UART API 还是调用某种类型的 printf?
    另外、如何在另一侧检索 UART 数据? 您是否只是设置与终端的串行连接?

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

    该代码取代了 MPU 9250 FIFO、每秒产生200条线路


    (笑声)
    ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789");
    (笑声)


    输出正确的时间、但有多个添加和删除实例。 添加示例为(插入"qrstuvwxyz"):
    (笑声)
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnopqrstuvwxyqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    (笑声)

    删除示例为("p"减法):
    (笑声)
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnoqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789
    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789

    我在 Linux 和 Windows (仿真软件包7.0.188.0)上都看到了这种行为。
    在 Linux 上、我执行
    stty -F /dev/ttyACM0原始手动手动变焦921600
    CAT /dev/ttyACM0 >文件

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

    我使用 usbmon 来监视来自 XDS110的数据。 我确实看到了 BULK_IN 中发生的损坏。 我将提供输出和 usbmon pcapng (使用 Wireshark 解析)。

    有关 XDS110的信息为:

    USB 设备固件升级实用程序

    版权所有(c) 2008-2015 Texas Instruments Incorporated。  保留所有权利。

    正在扫描支持的 XDS110器件的 USB 总线...

    <<<设备0 >>e2e.ti.com/.../20180327.tar.gz

    VID:0x0451  PID:0xbef3

    器件名称: XDS110嵌入了 CMSIS-DAP

    版本:   2.3.0.12

    制造商: 德州仪器(TI)

    序列号:  L3000751

    模式:      运行时

    找到1个器件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您使用的波特率是多少? 如果不覆盖 project-conf.h 文件中的设置、Contiki 将使用默认115200波特率。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    上述结果是在 UART 配置为230400bps 的情况下收集的。

    从 project-conf.h:
    #define CC26XX_UART_CONF_BAUD_RATE 2304000

    请记住、输出不会变乱、它会删除字符。 它可以在 BULK_IN 消息中看到

    问题在于问题在哪里存在:在 cc2650 UART 中、devpack UART 转 USB 接口或 contiki。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Thomas、

    这听起来非常像设备连接不良。 我一直在使用 Contiki-NG 进行终端连接、没有任何问题。 您应该仔细检查电缆/连接、以验证这不是由次优连接引起的。

    出于好奇、您是否使用 Contiki 或 Contiki-NG?

    BTW、您似乎已经为项目配置波特率指定了一个0到多的波特率、即230400而不是2304000? 您还应该在修改 project-conf 后完全重建项目、即

    $清除并制作*您的参数* 

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

    埃德瓦德-

    我的副本和粘贴就会出现 astray。 波特率设置为230400。

    我使用 TIRTOS 编写了一个简单的程序。 请参见随附的。 我以9600运行 UART。 我观察到同样的问题:字节正在被丢弃。

    这些测试表明问题不是 TI-RTOS 或 contiki、而是 devpack (将 UART 连接到 ACM)或 CC2650 UART。

    这令人沮丧。 只是尝试从 sensortag 获取干净的数据。

    感谢您的建议。

    e2e.ti.com/.../5736.uartecho.c

    e2e.ti.com/.../output.c

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

    我们已经使用最新的 CC2650 SDK 试用了您的代码片段、但我们发现的问题与您不同。 您多久观察一次此问题?

    您使用的是哪些 Contiki 版本(原始 Contiki 或 Contiki-NG)? 此外、您使用的是 CC2650 SDK 版本?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Thomas:

    您对此问题是否有任何更新?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    由于不活动、我将关闭此线程。 如果您仍然对此或相关问题有疑问、请随意打开新主题。