需要注意的点:
1、telink进入睡眠模式使用如下API
int cpu_sleep_wakeup (int deepsleep, int wakeup_src, u32 wakeup_tick);
2、telink唤醒中断后会重新初始化,此时需要注意初始化时的初始化函数使用的哪一个,取决于main.c
睡眠前,将需要触发唤醒的管脚上下拉设置好,再设置唤醒电平即可。注意无边沿触发。
如下:
gpio_setup_up_down_resistor(AN_KEY, PM_PIN_UP_DOWN_FLOAT);
cpu_set_gpio_wakeup (AN_KEY, Level_Low, 1);
cpu_sleep_wakeup(DEEPSLEEP_MODE, PM_WAKEUP_PAD, 0) ;
吐槽一下:telink的工程还是比较难搞的。没有标准的API给你参考,许多库函数只能通过名字猜测用法,没有注释