wince串口蓝牙
今天終于搞好串口藍牙了,對于有經驗的人來說三五分鐘的事情就OK了,我搞了多少天我都不記得了
唉,現在搞驅動啊,主要還是得靠技術支持,所以后來的XDJM要記住了,一個人打拼非常難的!
不多說了,直入正題:
第一步,如果你是一個剛開始搞藍牙的人,那么,就先用wince自帶的 bthcsr 驅動來測試是否正常與主機通信(也測試BT是否是好的)
在注冊表加入(這些內容在一份bchs-srn-004_wpp_bcsp_release_notes.pdf的文檔有說明)
[HKEY_LOCAL_MACHINE\Software\Microsoft\Bluetooth\Transports\BuiltIn\1]
?? "driver"="bthcsr.dll"
?? "Name"="COM2:"
?? "baud"=dword:E100 ;57600bps
?? "FlashChip"=dword:0
?? "flags"=dword:4
?? "resetdelay"=dword:1388
然后飛線過去和藍牙模組啟動試下,當然串口要對啊,如果是正常啟動的話那么恭喜你,第一步已通過,否則檢測下串口是否有效,BT是否好的!
第二步,PSKEY 一早就聽說過這個了,但沒一點印像,到底這東西有多大,是什么樣的,其實只是一些數據而已,官方的配置里有N項,但其實我們只用到幾個就行了
//PSKEY start
// PSKEY_BDADDR
&0001 = 0000 a5a5 005b 0002 //藍牙地址,這個不用管
// PSKEY_HOSTIO_MAP_SCO_PCM?? //PCM這個也不用
&01ab = 0000// False
// PSKEY_HOSTIO_MAP_SCO_CODEC //這個也不用
&01b0 = 0000// False
// PSKEY_PCM_CONFIG32??? //默認值這個也不用
&01b3 = 0080 0000
// PSKEY_PCM_FORMAT????? //這個也不用
&01b6 = 006c
// PSKEY_UART_BAUDRATE
&01be = 00EC// 請查表,可以找到對應的波特率,00Ec是 57600
// PSKEY_ANA_FTRIM
&01f6 = 0022?????? //這個也不用
// PSKEY_HOST_INTERFACE
&01f9 = 0001// USB link?? //0001 代表串口藍牙
// PSKEY_ANA_FREQ??? //這個也不用
&01fe = 3e80
//pskey end
總結,就兩個地方,一個是波特率,一個是接口方式
注,我調試的是 BC04-ROM 的芯片,如果是 -flash 相應改下注冊表還有驅動
第三,用官方的驅動,這個網上難找,如PSKEY,最好問支持能力強的供應商要
bchs-srn-004_wpp_bcsp_release_notes.pdf 說這個驅動叫 WPP-BCSP,那么就叫 WPP-BCSP吧,把它扔到BSP驅動程序的目錄,編譯它,如果通不過提示有錯(error C2220: warning treated as error - no object file generated
),那就降低編譯警告級別(在驅動里的屬性修改)
最后一步
[HKEY_LOCAL_MACHINE\Software\Microsoft\Bluetooth\Transports\BuiltIn\1]
?? "driver"="Bthbcsp.dll"
?? "Name"="COM2:"
?? "baud"=dword:E100
?? "FlashChip"=dword:0
?? "flags"=dword:4
?? "resetdelay"=dword:1388
(當然要把 PSconfig.Psr打進windows目錄,因為驅動會根據這個文件來配置)
OK最后就掃描下附近的藍牙吧
?
轉載自: http://hi.baidu.com/lzycome/blog/item/70590d82175254ba6c8119fc.html/cmtid/ed5a32ccf0db2e1d01e928fc
總結
- 上一篇: 蓝牙PSKEY的调整
- 下一篇: 添加蓝牙通讯功能