你好,
一旦建立了BLE连接,我想打开一个LED。我在ble\u multi\u link演示中做过,它工作得非常完美。然而,如果我尝试在pxpreporter演示中执行同样的操作,我会看到一些意想不到的行为。
因此,我通过以下方式初始化main->periph\u init()中的输出:
硬件gpio配置引脚(硬件gpio端口3,硬件gpio引脚7,硬件gpio模式输出,硬件gpio功能gpio,false);
当连接出现间隙时,我打开主任务中的LED:
箱盖连接:
手柄\u evt \u gap \u connected((ble \u evt \u gap \u connected \u t*)hdr);
硬件gpio\设置\激活(硬件gpio\端口\ 3,硬件gpio\引脚\ 7);
中断;
因此,当我通过BLE连接时,LED会闪烁几毫秒,然后再次关闭-但我看不到代码中任何地方的Pin再次被拉低。你知道什么可以禁用输出引脚吗?
提前谢谢,
菲利普
设备:
嗨,德桑布,
当设备进入睡眠状态(在每个连接或广告间隔之间发生)时,它将保留管脚的状态,但当设备唤醒时,periph_init()函数将再次运行,并将管脚重新配置为其原始状态,以便在设备唤醒前将管脚保持在先前的状态,您必须在进入睡眠状态之前保留pin的值(通过一个保持pin状态的变量),并在periph_init()函数中将pin重新配置为以前的状态。
谢谢你的对话
非常感谢你的解释-解决了我的问题。:-)
问候语
菲利普