CN / EN
文档反馈
感谢关注汇顶文档,期待您的宝贵建议!
感谢您的反馈,祝您愉快!
无匹配项 共计114个匹配页面

接口使用方法

下文以I2C为例介绍GR551x接口使用,GR5526备份和恢复在Hal层实现,用户无需关注。

首先I2C模块初始化时,注册睡眠回调函数。

uint16_t app_i2c_init(app_i2c_params_t *p_params, app_i2c_evt_handler_t evt_handler)
{
  if(s_sleep_cb_registered_flag == false)// register sleep callback
    {
        s_sleep_cb_registered_flag = true;
        s_i2c_pwr_id = pwr_register_sleep_cb(&i2c_sleep_cb, APP_DRIVER_I2C_WAPEUP_
                                             PRIORITY);      /*注册睡眠回调函数*/
        if (s_i2c_pwr_id < 0)
        {
            return APP_DRV_ERR_INVALID_PARAM;
        }
    }
  }

回调函数实现:

static const app_sleep_callbacks_t i2c_sleep_cb =
{
    .app_prepare_for_sleep = i2c_prepare_for_sleep, /*进入睡眠,保存现场
                                   并配置i2c相关寄存器,进入低功耗模式*/
    .app_sleep_canceled    = i2c_sleep_canceled,  /*取消睡眠状态,恢复相关寄存器*/
    .app_wake_up_ind       = i2c_wake_up_ind  /*唤醒后,恢复i2c相关寄存器,激活
                                                i2c模块 */
};

扫描关注

打开微信,使用“扫一扫”即可关注。