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.

[参考译文] CC2640:如何检测引脚是高电平还是低电平?

Guru**** 2589280 points
Other Parts Discussed in Thread: CC2640

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/604571/cc2640-how-to-detect-if-pin-is-high-or-low

器件型号:CC2640

您好!

我想检查 cc2640的唤醒引脚的状态是高电平还是低电平?

如果我使用 PIN_STATE 来检查引脚状态、如下所示:

PIN_Config 关断 IO[]={
Board_WAKE_PIN | PIN_GPIO_OUTPUT_DIS | PIN_INPUT_EN、
PIN_TERMINATE};

PIN_Handle pinHandle;
PIN_STATE pinState;

pinHandle = PIN_OPEN (&pinState、 shutdownIO);

//配置中断
PIN_setConfig (pinHandle、PIN_BM_IRQ、Board_WAKE_PIN | PIN_IRQ_POedge);
//启用 WAKEUP
PIN_setConfig (pinHandle、PINCC26XX_BM_WAKEUP、Board_WAKE_PIN | PINCC26XX_WAKEUP_POSege); 

或者是否有其他方法?

正在等待您的回复。

此致

Mbabas

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以参阅 dev.ti.com/.../中的引脚示例
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,黄晨

    感谢您的回复。 我的做法是:

    PIN_getInputValue (Board_WAKE_PIN),但始终显示0值。
    PIN_setOutputValue (pinHandle、Board_WAKE_PIN、1);
    然后我读为1。

    是否是 PIN 的配置问题?

    我在 SimpleBLEPeripheral_init 中执行该操作、如下所示
    if (SysCtrlResetSourceGet ()=RSTSRC_WAKEUP_FROW_SHUTDOWN)

    pinHandle = PIN_OPEN (&pinState、shutdownIO);
    PINCC26XX_setWakeup (shutdownIO);
    //启用唤醒
    PIN_setConfig (pinHandle、PINCC26XX_BM_WAKEUP、Board_WAKE_PIN | PINCC26XX_WAKEUP_POedge);

    PinValue = PIN_getInputValue (Board_WAKE_PIN);

    但是、当唤醒线被触发时、don、t 获得正确的值。

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

    尊敬的 YiKai Chen:

    触发复位时的值。 调试器显示  



    此时、我看到返回值4  

    pinValue = PIN_getOutputValue (IOID_0);


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当您使用 PIN_getInputValue (Board_WAKE_PIN)获取引脚值时,是否将外部的 BOARD_WAKE_PIN (例如将 BOARD_WAKE_PIN 连接到 VCC (高电平)或 GND (低电平))更改为 BOARD_WAKE_PIN?