具体来说,传感器每2ms采集一次(采集时会产生一个中断用以进行数据的处理),一次2个字节,然后集够20个字节(时间约为20ms)后会设置一个标志以便通知下次connect event发生时可以将该数组中数据发送出去。蓝牙发面,我将最大和最小连接间隔都设置成了20ms。以上是我程序思路,结果出现漏发的现象,有些数据就没有被Notify出去。
我自己分析原因:
1.采集数据时产生的硬件中断可能会影响数据Notfy(协议栈任务)的进行,优先级问题。
2.中断处理函数中对数据的处理的时间太长,但我将处理函数最简化后,仍有漏发现象,所以貌似不是这里有问题。
所以在这里想问一问大家,数据采集和数据的Notify可不可以同步进行?或者大家有什么思路或想法可以保证,将采集到的数据无漏的发送出去?
万分感谢!