PIN激活状态????

4个职位/0个新职位
最后一篇文章
乔治
离线
最后一次见到:4年5个月前
已加入:2016-01-25 14:20
PIN激活状态????

你好。

我有点新的这种蓝牙,我试图设置一个引脚低时,其连接和断开时,它设置在高,所以我想它这样做,要求国家机器,我怎么做呢?

这是我所拥有的,但不起作用。
int状态;
int状态2;

状态=keu state\u get(APP\u CONNECTED);

while(state==true)
{
GPIO\ U配置引脚(GPIO\ U端口\ U 0,GPIO\ U引脚\ U 6,输出,PID\ GPIO,真);
GPIO\ U SetInactive(GPIO\ U端口\ U 0,GPIO\ U引脚\ U 6);

}
state2=ke\u state\u get(应用程序可连接);
while(state2==true)
{

GPIO\ U配置引脚(GPIO\ U端口\ U 0,GPIO\ U引脚\ U 6,输出,PID\ GPIO,false);
GPIO\ U设置激活(GPIO\ U端口\ U 0,GPIO\ U引脚\ U 6);
}

}

泰恩。

设备:
斯拉瓦语
离线
最后一次见到:3年8个月前
已加入:2015-04-28 10:35
如果你5岁,你需要

如果sdk为5,则需要将gpio初始化放到user\u periph\u setup.c中的function set\u pad\u functions中。
然后查看user\u callback\u config.h中的user\u app\u callbacks结构。

静态常量结构app\u回调用户app\u回调={
.app\u on \u connection=默认的\u app\u on \u连接,
.app\u on \u disconnect=默认的\u app\u on \u disconnect,
.app\u on\u update\u params\u rejected=NULL,
.app\u on\u update\u params\u complete=空,
.app \u on \u set \u dev \u config \u complete=默认的\u app \u on \u set \u dev \u config \u complete,
.app\u on\u adv\u undirect\u complete=应用程序广告\u complete,
.app\u on\u adv\u direct\u complete=空,
.app \u on \u db \u init \u complete=默认的\u app \u on \u db \u init \u complete,
.app\u on\u scanning\u completed=空,
.app\u on\u adv\u report\u ind=空,
.app \u on \u pairing \u request=默认的\u app \u on \u pairing \u请求,
.app \u on \u tk \u exch \u nomitm=默认值\u app \u on \u tk \u exch \u nomitm,
.app\u on\u irk\u exch=空,
.app\u on \u csrk \u exch=默认的\u app\u on \u csrk \u exch,
.app\u on \u ltk \u exch=默认的\u app\u on \u ltk \u exch,
.app\u on\u pairing\u succeeded=空,
.app\u on\u encrypt\u ind=空,
.app\u on\u mitm\u passcode\u req=空,
.app \u on \u encrypt \u req \u ind=默认的\u app \u on \u encrypt \u req \u ind,
};

连接上的默认应用程序和断开连接上的默认应用程序是您所需要的。

将GPIO\ U SetInactive(GPIO\ U PORT\ U 0,GPIO\ U PIN\ U 6)添加到默认的\应用程序\ on\ U连接中
和GPIO\ U SetActive(GPIO\ U端口\ U 0,GPIO\ U插脚\ U 6)在默认的\应用程序\上\断开连接

MT\u对话框
离线
最后一次见到:4个月2周前
工作人员
已加入:2015-06-08 11:34
你好,乔治,

你好,乔治,

keu state获取一个任务作为参数(task\u APP)并返回任务状态(APP\u CONNECTED、APP\u SECURITY等),您可以在user\u periph\u setup.c中配置pin的功能,并仅使用GPIO\u SetActive和Inactive来配置pin的输出。一个快速的应用程序可以做您想要做的事情,就是用下面的代码片段替换由\u ble\u支持的空回调上的app\u:

枚举arch\u main\u loop\u callback\u ret user\u on \u ble\u powered(void)
{
if(ke\u state\u get(TASK\u APP)==APP\u CONNECTABLE)
GPIO\ U设置激活(GPIO\ U端口\ U 1,GPIO\ U引脚\ U 0);
其他的
GPIO\ U SetInactive(GPIO\ U端口\ U 1,GPIO\ U引脚\ U 0);

回到睡眠状态;
}

即使设备在睡眠模式下运行,它也能工作,因为它总是检查应用程序的状态并打开LED。如果您处于睡眠模式,并且您打开了一个管脚,那么管脚将在处于睡眠状态时保持其状态,但在唤醒时,外围设备将从periphƏu init()函数重新初始化到其原始状态,因此在任何其他实现(如斯拉瓦善意地建议)中,您必须记住管脚状态,并在唤醒时将其重置为该状态在periph\u init()函数中。

谢谢你的对话

乔治
离线
最后一次见到:4年5个月前
已加入:2016-01-25 14:20
谢谢大家,对不起

多谢各位,抱歉没早点回复。