Firefly开源社区

标题: 距离超出死机 [打印本页]

作者: thong    时间: 2015-5-25 13:41
标题: 距离超出死机
最近发现蓝牙距离超出时发现有的设备会死机,不知道哪里的问题,是不是什么栈的设置太小影响的?
作者: FireBLE_blue    时间: 2015-5-25 14:36
跑飞或者死机的表现是什么?调整堆栈 大小后有没有改善,或者说之前对代码改动是是不是有些地方内存没有回收。
作者: thong    时间: 2015-5-25 14:39
FireBLE_blue 发表于 2015-5-25 14:36
跑飞或者死机的表现是什么?调整堆栈 大小后有没有改善,或者说之前对代码改动是是不是有些地方内存没有回 ...

在哪里调整,我没试过?
作者: thong    时间: 2015-5-25 14:40
FireBLE_blue 发表于 2015-5-25 14:36
跑飞或者死机的表现是什么?调整堆栈 大小后有没有改善,或者说之前对代码改动是是不是有些地方内存没有回 ...

在哪里调整,我没试过?
作者: FireBLE_blue    时间: 2015-5-25 14:51
调整栈的大小在startup.s 下
  1. Stack_Size      EQU     0x00000250
复制代码

作者: thong    时间: 2015-5-25 17:44
FireBLE_blue 发表于 2015-5-25 14:51
调整栈的大小在startup.s 下

这个地方最大可以调到多少?
作者: FireBLE_blue    时间: 2015-5-25 17:49
如果没有递归函数,一般都是够用的。
理论上你设多大都行,只要链接能通过都可以。
但,默认0x200,如果你觉得有问题可以加到到一倍,0x400
作者: xiaolong_ba    时间: 2015-5-26 09:51
FireBLE_blue 发表于 2015-5-25 17:49
如果没有递归函数,一般都是够用的。
理论上你设多大都行,只要链接能通过都可以。
但,默认0x200,如果 ...

这个超出距离会死机跟这个堆栈的大小有关系吗?
作者: FireBLE_blue    时间: 2015-5-26 09:58
;P 我也觉得关系不大,跟栈应该关系不大,要死早死了,堆就难说了,具体不知道他代码都干了些啥,哈哈
作者: thong    时间: 2015-5-26 10:31
FireBLE_blue 发表于 2015-5-26 09:58
我也觉得关系不大,跟栈应该关系不大,要死早死了,堆就难说了,具体不知道他代码都干了些啥,哈哈

我改成了0x400,效果会好狠多,但别的手机连接多个时还是会有个别死机的情况,还与什么地方有关呢?
作者: FireBLE_blue    时间: 2015-5-26 10:35
thong 发表于 2015-5-26 10:31
我改成了0x400,效果会好狠多,但别的手机连接多个时还是会有个别死机的情况,还与什么地方有关呢?

描述一下死机的情况?有什么表现不?我目前为止还未遇到死机的,你程序有很大的局部变量不?比如一个很大的数组之类的,一般而言,栈溢出比较少见。
作者: thong    时间: 2015-5-26 11:03
FireBLE_blue 发表于 2015-5-26 10:35
描述一下死机的情况?有什么表现不?我目前为止还未遇到死机的,你程序有很大的局部变量不?比如一个很大 ...

其实也不是死机,当超出距离后连接自动断开并不广播
作者: FireBLE_blue    时间: 2015-5-26 11:35
:sleepy:    那应该和堆栈关系不大。。。
作者: xiaolong_ba    时间: 2015-5-26 17:13
thong 发表于 2015-5-26 11:03
其实也不是死机,当超出距离后连接自动断开并不广播

应该不会的啊,QPPS中你断开之后,还是会再次发起广播的啊:)
作者: FireBLE_blue    时间: 2015-5-27 09:22
xiaolong_ba 发表于 2015-5-26 17:13
应该不会的啊,QPPS中你断开之后,还是会再次发起广播的啊

是的,但要保证断开之后,再次发起广播的函数得到调用,像他说的,有时不能再起发起广播,就得详细的总体查查了,光说没用,还得对着代码分析为什么不能。
作者: sirbai    时间: 2015-7-20 17:13
ios 1.3.6改进了没这问题了
作者: yun8970756    时间: 2015-11-16 15:52
sirbai 发表于 2015-7-20 17:13
ios 1.3.6改进了没这问题了

麻烦问下 这个问题是怎么解决的 是IOS手机端做的修改么?
作者: sirbai    时间: 2015-11-17 17:44
下位机固件更新就行了




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1