微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI WIFI设计交流 > LPDS gpio wake up

LPDS gpio wake up

时间:10-02 整理:3721RD 点击:

1.我用3200LP验证idle_profile, 按下SW3(GPIO_13)确实会唤醒,但是我用GPIO_17确不能唤醒。我只在原代码的基础上加了

int gpio_intr_hndlr(int gpio_num)
{
unsigned char queue_msg = 2;

if((GPIO_SRC_WKUP == gpio_num)||(17 == gpio_num))
{
osi_MsgQWrite(&g_tWkupSignalQueue, &queue_msg, OSI_NO_WAIT);
}
return 0;
}

我的理解是,gpio_intr_hndlr里面加入判断,user_app_config.h的gpio_list里有对应的GPIO,在pinmux.c里将可唤醒的GPIO配置成输入。这样应该就可以了吧?

2.关于IO parking,cc32xx_io_park={PIN_01, "GPIO_10", WEAK_PULL_DOWN_STD},这个是指系统进LPDS的时候将GPIO_10拉低?退出LPDS的时候恢复原GPIO_10的值?

LPDS模式下有6个GPIO可以唤醒,请参考release notes

Low Power Deep Sleep(LPDS)
RAM retention – RAM is retained by default, but the application user can decide whether and which blocks to retain when the MCU enter LPDS.
CPU context retention – No (if required, context need to be saved and restored in SW)
Peripheral context retention – No (Peripherals need to be reconfigured after exiting from LPDS)
Wake source – GPIO (2,4,11,13,17,24 – only one), LPDS Wake timer and Network wakeup

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top