嗨,这里的伙计们。启用扩展休眠模式时,是否必须首先调用Periph_Init(),每次想要读取GPIO引脚状态?
嗨夏天,
是的,唤醒后应调用periph_init以初始化外围设备。是,如果Periph_init称为您的引脚,将再次通过配置过程,以便您必须保持牢记。
谢谢mt_dialog.
第一的在另一个帖子中,似乎当DA14580被BLE定时器唤醒时,Periph_Init已自动调用。第二,由于对Periph_init的定期呼叫(例如,广告间隔),这是否意味着我不能总是正确读取PIN状态?如果是这种情况,我该怎么做才能读取真正的引脚状态而不是默认的一个?
嗨Summer20100514,
当系统从BLE事件中唤醒时,当系统从外部事件(外部中断)唤醒时,系统会自动调用periph_init(),如果系统从外部事件(外部中断)唤醒,则必须从回调函数中调用periph_init()才能初始化外围设备。
因为每次(从BLE事件唤醒后),Periph_Init()称为您的引脚再次被初始化,以便读取引脚,我想你可以始终正确读取PIN状态。
感谢您的详细解释。
嗨夏天,
是的,唤醒后应调用periph_init以初始化外围设备。是,如果Periph_init称为您的引脚,将再次通过配置过程,以便您必须保持牢记。
谢谢mt_dialog.
第一的在另一个帖子中,似乎当DA14580被BLE定时器唤醒时,Periph_Init已自动调用。
第二,由于对Periph_init的定期呼叫(例如,广告间隔),这是否意味着我不能总是正确读取PIN状态?如果是这种情况,我该怎么做才能读取真正的引脚状态而不是默认的一个?
嗨Summer20100514,
当系统从BLE事件中唤醒时,当系统从外部事件(外部中断)唤醒时,系统会自动调用periph_init(),如果系统从外部事件(外部中断)唤醒,则必须从回调函数中调用periph_init()才能初始化外围设备。
因为每次(从BLE事件唤醒后),Periph_Init()称为您的引脚再次被初始化,以便读取引脚,我想你可以始终正确读取PIN状态。
谢谢mt_dialog.
感谢您的详细解释。