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.

[参考译文] LAUNCHXL-CC26X2R1:传感器控制器-多个任务出现异常行为

Guru**** 2482225 points


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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1228561/launchxl-cc26x2r1-sensor-controller---unexpected-behavior-with-multiple-tasks

器件型号:LAUNCHXL-CC26X2R1

您好、E2E 专家!

你好。

我要通过两个任务测试一个 Sensor Controller Studio 项目。

一项任务是通过 I2C 从传感器读取测量值、该任务由计时器0使用以下命令每10毫秒触发一次:

//安排下一个执行 evhSetupTimer0Trigger (0102)

另一个任务是"Capacitive Touch for ULPSENSE"示例项目。 默认情况下、此项目使用计时器1。

当我使用任务测试或运行时测试分别测试这两个任务中的任何一个时、它们都能按预期工作。 当我使用运行时测试 功能同时测试两个任务时、在"Capacitive Touch for ULPSENSE"任务中出现了意外行为、其中电容式触控感应的响应明显较差。 当我将传感器控制器驱动程序添加到我的 project_zero 时、我会看到相同的意外行为。 如何解决此问题?

此致、

CSC

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

    您好、CSC、

    请 参阅  Sensor Controller Studio v2.9.0文档的"高级程序流程"部分。

    传感器控制器引擎不支持占先、这意味着一个任务代码块不能中断另一个任务代码块。 虽然这是一个限制、但是它可以防止一个任务(例如 SPI 通信)的操作干扰另一个任务的测量(例如 电容式 触控)。

    传感器控制器任务通常在短迭代中执行。 可以实现运行时间更长的任务、但这会阻止其他任务在这段时间内运行。

    请尝试增加 Timer 0周期和/或电容式触摸采样周期以确定这是否会改善行为。  任一任务都可能需要进一步优化以更快地执行其任务。  还要确保使用工作模式(而不是低功耗模式)以获得最大性能。

    此致、
    Ryan