wince蓝牙(顶贴有分,大家来讨论一下)
蓝牙驱动应经做好,系统也加了OBEX组件,相关注册表配置也添加好了。
现在蓝牙扫描设备,收发文件都可以。
但是我们终端现在要过3C认证,所以要对蓝牙模块进行测试。
需要让蓝牙进入test模式。
在蓝牙规范中,对应内容是:
现在问题是,在wince的应用层或者驱动部分,如何才能发送这些指令或者调用相应函数,
让蓝牙模块进入test mode呢?
我对蓝牙不是很熟悉,希望做过蓝牙的朋友们支支招。谢谢。
Your responces are greatly appreciated!
[解决办法]
问代理商呢...直接高效
[解决办法]
没做过windows下的驱动,路过
[解决办法]
问代理商是好方法, 又不是什么有难度问题, 别太浪费时间
[解决办法]
这种事,肯定是掏钱的啦
[解决办法]
你看蓝牙寄存器地址都映射到得位置
[解决办法]
没有做过这个验证,帮顶一下。LZ,看看是不是直接发送那个指令到驱动,然后会进入到那个模式
[解决办法]
路过支持下楼主,虽然一点都不懂,但是感觉很强大的
[解决办法]
关注一下,期待怎么解决的。
[解决办法]
好像wince只支持集中蓝牙模块,本来这个暑假我们要做android的蓝牙驱动的,后来因为android技术原因没做了,哎,有点遗憾,呵呵,感觉也有点难度,
[解决办法]
楼主你能自己写驱动吗?本人求教
[解决办法]
看起来楼主很牛b啊,蓝牙驱动都是自己写的,小弟求教啊
[解决办法]
顶一下,希望更多人来出点子
[解决办法]
虽然不是太懂这方面,但还是为LZ的精神所感动,支持下
[解决办法]
我是鉴玄子
有个其他方法供你参考,不知好不好用,你可以先把蓝牙停掉
HANDLE hDev = CreateFile (L"BTD0:", GENERIC_READ | GENERIC_WRITE,FILE_SHARE_READ | FILE_SHARE_WRITE,NULL, OPEN_EXISTING, 0, NULL);
int iErr = DeviceIoControl (hDev, IOCTL_SERVICE_STOP, NULL, 0, NULL, NULL, NULL, NULL);
这样蓝牙串口会被释放
直接打开这个串口,把你要发的命令自己组个包发过去
[解决办法]
不懂这个,帮你顶吧
楼主加油吧
[解决办法]
哇,关注中
[解决办法]
我也只是做到收发文件而已,至于你说的测试,没做过。
所以只能友情帮顶了。
[解决办法]
友情帮顶一下,呵呵。
[解决办法]
蓝牙的没搞过,友情支持一下吧!
[解决办法]
顶贴有分
[解决办法]
我是编写蓝牙程序的,用的是CSR的芯片。
一般我们进测试模式有两种办法:
一种是使用CSR给的工具,由PC端通过串口或者并口发送命令给芯片。这个工具跑在XP下面,可以在CSR的官网上面下载它的源码。
另外一种是在蓝牙程序里面先写好,有IO口触发,当IO口有变化时进入测试模式。
我觉得你应该跟厂家沟通,看是否能修改芯片里面跑的程序,如果能做成IO口触发的话,对你来说应该是最方便的。
另外还有一种办法就是自己写程序有PC端发送命令了,流程如下:
1.Opening the device
调用系统的CreateFile()函数,得到一个文件的句柄
handle=CreateFile(device_name,GENERIC_READ|GENERIC_WRITE,0,0,OPEN_EXISTING,FILE_FLAG_OVERLAPPED,0);
2.Sending an HCI Command
To send an HCI command to CSR BC USB device,first open the device,then use win32’s function DeviceIoControl().This takes a buffer and the length of data to send to the device.This can will return the actual number of bytes written.
Status=DeviceIoControl(Handle,IOCTL_CSRBC01_SEND_HCI_COMMAND,0,0,Buffer,length,&written,&overlapped)
3.Read HCI Event
To read HCI event,call DeviceIoControl(),This takes a buffer and a length.
Status=DeviceIoControl(Handle,IOCTL_CSRBC01_GET_HCI_EVENT,0,0,Buffer,length,&written,&overlapped)
4.Close the Device
CloseHandle(handle);
[解决办法]