3697|9

64

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于蓝牙传输不稳定 [复制链接]

  我用的是CSR的BC6的蓝牙芯片,平台是S3C2440+WIN CE的,上了CSR的驱动。BC6是用串口与主机通信,现在跑文件传输跑300K以下的来是没问题,跑300K以上的就老传到一半就没反应了,会不会是驱动问题,听给我们提供芯片的公司说微软的芯片只支持BC4的?还是因为串口的速度太慢而导致传到一半就挂了?还是用微软自带的BLUETOOTH MANAGER有问题呢?还是我的硬件不稳定呢?

蓝牙的驱动是08年5月份的那个蓝牙补丁。

高手们快快出现吧!!!!

最新回复

我的是内存没有调够大~~~而且,传的东西都放在内存里~~~~所以传比较大的文件或传到一定文件量的时候蓝牙就挂掉了~~~ 后来把蓝牙接收的地址改到SD卡里面就不会出现这种问题了。。。  详情 回复 发表于 2010-2-22 10:03
点赞 关注

回复
举报

67

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
貌似要设置什么pskey的。这个可以设置缓冲区什么的。
我还是直接AT命令,不懂怎么刷成BCSP的固件,郁闷。
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
MARK, 学习下,帮顶下!
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

4
 
我们的蓝牙没有E2PROM,每次开机的时候都要重新写一次PSKEY
// UART BAUD RATE
&01be = 01d8
// UART BAUD RATE
&0204 = 01d8
// ANA FREQ
&01fe = 6590
// PSKEY_HOST_INTERFACE
&01f9 = 0001
// PSKEY_BDADDR
&0001 = 0010 05fd 006e 0006
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

5
 
会不会是我PSKEY没设好呢?
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

6
 
我用DEBUG打错蓝牙关闭时好像是串口被断开了:
for ( ; ; ) {
                DWORD dwEvent = 0;
                if (! WaitCommEvent (hFile, &dwEvent, NULL)) {

                        if (hFile != INVALID_HANDLE_VALUE) {
                                g_fSerialError = TRUE;
                                IFDBG(DebugOut (DEBUG_ERROR, L"[BCSP] Error waiting on COM port: GetLastError = 0x%08x (%d)\n", GetLastError (), GetLastError ()));
                        }
                        SetEvent (g_hPacketReady);
                        return FALSE;
                }

我用DEBUG去打印:[ERR] [BCSP] Error waiting on COM port: GetLastError = 0x00000006 (6)

等待串口出错了,难道是串口没设好?
这个是CE自带的rfcomm\portemu.cxx里的串口设置。
PORTEMU_CONTEXT (void) {
        memset (this, 0, sizeof(*this));
        fLocal                  = TRUE;

        local_dcb               = TRUE;

        dcb.DCBlength           = sizeof(DCB);
        dcb.BaudRate            = CBR_115200;
        dcb.fBinary             = TRUE;
        dcb.fParity             = FALSE;
        dcb.fOutxCtsFlow        = FALSE;
        dcb.fOutxDsrFlow        = FALSE;
        dcb.fDtrControl         = DTR_CONTROL_DISABLE;
        dcb.fDsrSensitivity     = FALSE;
        dcb.fTXContinueOnXoff   = TRUE;
        dcb.fOutX                   = FALSE;
        dcb.fInX                = FALSE;
        dcb.fErrorChar          = FALSE;
        dcb.fNull               = FALSE;
        dcb.fRtsControl         = RTS_CONTROL_DISABLE;
        dcb.fAbortOnError       = TRUE;
        dcb.XonLim              = PORTEMU_XONLIM;
        dcb.XoffLim             = PORTEMU_XOFFLIM;
        dcb.ByteSize            = 8;
        dcb.Parity              = NOPARITY;
        dcb.StopBits            = ONESTOPBIT;

        ct.ReadIntervalTimeout          = -1;
        ct.ReadTotalTimeoutConstant     = PORTEMU_RTO;
        ct.ReadTotalTimeoutMultiplier   = 0;
        ct.WriteTotalTimeoutConstant    = PORTEMU_WTO;
        ct.WriteTotalTimeoutMultiplier  = 10;
    }

期待高手的出现!!!
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

7
 
帮顶。。。。。。。。。
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

8
 
帮顶!!
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(中级)

9
 
Lz,问下你问题原因找到没?

我碰到过与你类似的情况,平台不同,但也是传文件过程中没反应,我查过,貌似是host和host-controller之间没法通信了,芯片由于无法收到正确的响应而出现过重启。
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

10
 
我的是内存没有调够大~~~而且,传的东西都放在内存里~~~~所以传比较大的文件或传到一定文件量的时候蓝牙就挂掉了~~~
后来把蓝牙接收的地址改到SD卡里面就不会出现这种问题了。。。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表