上一篇寫了嘗鮮1.6元的藍(lán)牙芯片KT6368A,還沒完,今天的主題是實(shí)現(xiàn)手機(jī)端的測試軟件。手機(jī)端大家通常會(huì)用LightBlue或者Nordic的nRF Connect軟件做測試,但是作為干嵌入式的攻城獅,我相信肯定有不少人會(huì)有興趣想自己弄一個(gè)可以修改的軟件,難不成今天要介紹安卓編程了嗎?不,因?yàn)槲也粫?huì)!我覺得也沒必要專門為了這個(gè)去學(xué)安卓,畢竟我們也不是專門從事安卓開發(fā)的。有一種方法可以搞定,那就是使用QT,大家知道QT可以跨平臺(tái)運(yùn)行,并且用的也是嵌入式工程師熟悉的C++語言,所以可以用QT整一個(gè)在安卓系統(tǒng)里運(yùn)行的藍(lán)牙軟件。
下面介紹實(shí)現(xiàn)方法:
第一步:QT安卓開發(fā)環(huán)境搭建
我用的QT 5.13,具體環(huán)境搭建大家可以參考:
https://blog.csdn.net/tanglei1224/article/details/104820485
搭建完安卓環(huán)境,如果想編譯安卓平臺(tái)的程序,編譯的時(shí)候只選擇如下Kit就可以,其它都不用變
如果手機(jī)通過USB連接電腦的話,點(diǎn)擊運(yùn)行,手機(jī)端就會(huì)提示你安裝應(yīng)用程序。當(dāng)然也可以把編譯后生成的apk放到手機(jī)里安裝,編譯生成的apk在如下目錄:
第二步:找QT 安卓BLE程序
我喜歡用前人造好的輪子,在網(wǎng)上找到了這篇文章:
https://blog.csdn.net/rsd102/article/details/112453131?,恰巧還認(rèn)識(shí)該作者小哈哥,我把他的公眾號(hào)原文也放到這里:Qt編程實(shí)例:基于Android的BLE通信軟件,文中有代碼的解釋,感謝小哈哥的分享,讓我很快實(shí)現(xiàn)了自己的想法。
為了證明我也干了一點(diǎn)事情,我實(shí)際上做了幾處小小的改動(dòng):
1.??修改UUID。因?yàn)樵髡哂玫?a class="article-link" target="_blank" href="/baike/493684.html">藍(lán)牙模塊和我不一樣,不改動(dòng)是沒法正常使用的。
static?const?QLatin1String?serviceUuid("{00010203-0405-0607-0809-0a0b0c0d1910}");
改為:
static?const?quint16?serviceUuid?=?(quint16)0xfff0;
KTA6368A默認(rèn)是16位UUID 0xFFF0,這個(gè)在芯片的使用手冊里有說明
增加了發(fā)送區(qū),可以發(fā)送自己手動(dòng)輸入的內(nèi)容。原來例程是點(diǎn)擊發(fā)送,發(fā)送一個(gè)Hello World。
增加了接收區(qū),將接收區(qū)和日志輸出區(qū)分開了。原來例程是一起的。
把原作者的廣告信息換成了新的廣告信息,這個(gè)是重點(diǎn)
關(guān)注公眾號(hào),掃碼加入嵌入式交流群: