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.

[参考译文] MSP430FR2522:从12个按钮唤醒

Guru**** 1127450 points
Other Parts Discussed in Thread: BOOSTXL-CAPKEYPAD
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/860146/msp430fr2522-wake-up-from-12-buttons

器件型号:MSP430FR2522
主题中讨论的其他器件:BOOSTXL-CAPKEYPAD

您好!

我正在尝试使用 BOOSTXL-CAPKEYPAD 从手动按钮唤醒。

我使用了 BOOSTXL-CAPKEYPAD 示例项目。
・在设计中心中打开控制器属性、并将"接近传感器唤醒"从近端传感器更改为 keypadSensor。
・按 Generate Source code 导入项目并将其写入 CCS。 并在设计中心实现连接。

我认为 MCU 从所有按钮(12)唤醒、但发生了奇怪的事情。
只能通过2个按钮(TX00-RX00和 TX00-RX01)唤醒。 CPU 无法通过其他10个按钮唤醒。
我已经确定了原因、但不知道如何解决。

.pCycle = CAPT_UserConfig.c 中 TSENSOR keypadSensor 的 keypadSensor_cycles
我认为是由原因造成的。

只能通过 keypadSensor_cycles 的第一个按钮(C00)来使 CPU 被制动。
例如、如果我替换 C00和 C01、它将在 C01 (TX00-RX02、TX00-RX03)处唤醒。

const tcycle* keypadSensor_cycles[6]=

keypadSensor_C00、
keypadSensor_C01、
keypadSensor_C02、(&K)
keypadSensor_C03 (&K)、
keypadSensor_C04、
keypadSensor_C05、
};

对于近端传感器、没有问题、因为有一个阵列、
对于按钮传感器、存在问题、因为存在多个阵列。

问题:
您能告诉我如何从12个按钮中唤醒吗?

此致、

BOOSTXL-CAPKEYPAD
CCS v9.2
设计中心版本1_81_00_09

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

    您好 Rei、

    为什么要使用该功能从12个按钮唤醒?

    此函数主要用于接近、因为这有助于节省功耗。 因此、在唤醒之前、MCU 将仅每100ms (默认值)检测一次接近、这比工作模式33ms (默认值)长。

    在您的情况下、我认为您只需要禁用接近。

    顺便说一下、您如何检测器件何时被唤醒? 当您触摸其他按钮时、没有反馈?

    伊斯天