亲爱的Dialog_Support,
1.我的要求是短按按钮时开始做广告长按按钮时停止做广告有可能实现吗?如果是,那么如何实现?
2.我想要存储一些数据永久到flash,也修改每当需要的数据修改,然后如何实现这一点?实现这个需要哪些步骤?我需要擦除扇区每次我写入到flash?多少max写和擦除周期是可用的DA14583板?
先谢谢你。
与问候,
前腿帕特尔
关键词:
设备:
嗨,前腿帕特尔
为了实现短按钮和长按钮,您应该在注册到wkupct_register_callback()中的回调函数中添加一个计时器。当计时器结束时,您应该检查按钮的状态。如果没有按下,这意味着是短按,但如果仍然按下,这意味着是长按。因此,如果您检测到一个短的按下按钮,设备没有广告,您应该调用user_app_adv_start(),如果您检测到一个长按下按钮,设备正在广告,您应该使用user_app_adv_stop()停止广告。这个函数没有在SDK中实现,所以您应该实现自己的函数来停止广告,方法是在user_app_adv_stop()中调用app_easy_gap_advertise_stop()。此外,你可以查看一些以前的线程在论坛:
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-da1458x-bt42-%E2%80%93-software/button-long-press-detection
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-42-%E2%80%93-software/button-press-time
关于您的第二个问题,我建议您查看一下Smart Tag应用程序项目,并检查绑定数据是如何存储在SPI Flash中的。内部的SPI闪存的DA14583 SoC,支持100,000擦除/程序周期至少。
谢谢,PM_Dialog