5个职位/0个新职位
最后一篇文章
树屋和天空
离线
最后一次见到:6年8个月前
已加入:2014-03-13 14:45
包含链出错

你好,

当我试图更改睡眠模式的挂钩时,我在include链中遇到了一个错误。

正如在睡眠模式手册中所描述的,我的中断设置了一个标志(event1#flag),我们在Hook#2中检查它,如果设置了另一个标志(event1ţflagţsync),则设置了另一个在Hookţ1中检查的标志(event1ţflagţsync)。

这两个标志都在app\u ourproject\u proj.h中声明(第二个标志在保留内存中使用了\uu RETAINED)。

当我们想要包含app\u ourproject\u proj.h时,include链中会出现一个错误,说明:
“包含链(gap.h)中出错:使用了未声明的标识符'SMPM\u ADDR\u TYPE\u STATIC'”

我们应该把旗放在别的地方吗?
有什么想法吗?

WT\U对话框
离线
最后一次见到:3年2个月前
工作人员
已加入:2013-12-05 14:43
你好,

你好,
你们是在应用程序中使用延长睡眠还是深度睡眠模式?

树屋和天空
离线
最后一次见到:6年8个月前
已加入:2014-03-13 14:45
如果国旗上写着

如果在Hook#2中设置了表示应用程序应进入睡眠的标志,则Hook#1将调用函数
“app\u set\u deep\u sleep()”和“app\u ble\u ext\u wakeup\u on()”

所以深度睡眠和睡眠直到中断发生的功能。

WT\U对话框
离线
最后一次见到:3年2个月前
工作人员
已加入:2013-12-05 14:43
你好,

你好,
编译错误在我看来很奇怪。SMPM\u ADDR\u TYPE\u STATIC似乎与您正在做的事情无关。
是否可以共享hook#1和hook#2中的代码?

树屋和天空
离线
最后一次见到:6年8个月前
已加入:2014-03-13 14:45
按下外部按钮

我们绕过了这个问题,给gap.h中的变量指定了smpm.h中设置的变量的精确值,而不是将它们设置为变量本身。

外部布尔按钮\u按下\u同步\u标志;
外部布尔按钮标志;
外部无效app_adv_stop();
extern void app_adv_start();
外部计数器;
外部布尔变换2;

吊钩#1
静态内联bool app\u asynch\u trm(void)
{
bool ret=假;
如果(更改为2)
{
如果(按钮\u按下\u同步\u标志)
{//naar睡眠模式
app_adv_stop();
app_set_deep_sleep();
//nog函数
app_ble_ext_wakeup_on();
//拉尔斯
按钮\u按下\u同步\u标志=假;
//app_adv_stop();
}
其他的
{//willen gaan睡眠模式
app_ble_ext_wakeup_off();
//nog函数
app_adv_start();
app_disable_sleep();

}
changedIn2=假;
ret=真;
}

返回ret;
}

吊钩#2
静态内联bool app\u asynch\u proc(void)
{
bool ret=假;

如果(按钮标志)
{
计数器++;
如果(计数器%2)
{
//gedrukt,maar false,dus zet hem处于睡眠模式
按钮\u按下\u同步\u标志=真;
//app_adv_stop();
changedIn2=真;
}
其他的
{
按钮\u按下\u同步\u标志=假;
//app_adv_start();
changedIn2=真;
}

ret=真;
ButtonFlag=假;
}

返回ret;

}

ButtonFlag、Button\u Pressed\u Sync\u Flag、changedIn2和counter都被保留(在我们的项目文件app\u filename\u proj中)。