你好,
我这边需要CH573向外部芯片的FIFO送数据。外部芯片数据用得差不多就会通过中断引脚向CH573请求数据。请求数据的过程消耗3.3ms,connInterval是12。按照“TMOS使用说明”说,中断不要超过连接间隔一半时长,应该没有问题。但测试中确实还是在某些情况下可反复重现0x08连接超时断开的问题。由于TMOS底层代码不公开,也没有办法去调试到底是为什么会打断蓝牙连接。
之后我就尝试去掉中断,开了一个EVENT每毫秒查询一次IO,向FIFO发送数据,就没有问题。这样效率显然很低。
“TMOS使用说明”里也提到不能在中断里调度TMOS函数。我看到http://www.wch.cn/bbs/thread-71899-1.html 也有人问过中断的问题。我的疑惑是,如果外部中断是电平中断,在处理前不会消失的话,通过主循环中转时候还有必要使用GPIO中断?主程序的区别无非是在每个循环检查内存标识位,或者是检查IO寄存器。
热门产品 :
CH32L103: 32位PDUSB低功耗单片机