找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 20372|回復(fù): 26
打印 上一主題 下一主題
收起左側(cè)

可用的E4A藍(lán)牙模塊與手機(jī)通訊APP源代碼及51單片機(jī)程序

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
在51hei論壇里看見有好幾個(gè)用E4A做藍(lán)牙模塊與手機(jī)通訊的,下載看看,連藍(lán)牙都搜索不到,為此某為此特意獻(xiàn)上一款可用的E4A源碼以及51單片機(jī)源碼,特以此供諸位檢查及參考,制作多有隨意,還請(qǐng)諸位君不要見怪為是!

小車做得有點(diǎn)隨意,諸位君可不要介意



前言:此款藍(lán)牙APP為自己在別人的基礎(chǔ)上改進(jìn)而來,主要特點(diǎn)是數(shù)據(jù)雙向傳輸,單片機(jī)端可實(shí)現(xiàn)手機(jī)控制PWM占空比大小,從而實(shí)現(xiàn)無極調(diào)速,前后左右等等操作,可以回傳單片機(jī)端的信號(hào)到手機(jī)上,只不過偶爾會(huì)丟字節(jié),會(huì)易安卓的可以多多琢磨。至于說單片機(jī)的硬件怎么連接這個(gè)就不再多說,可以參考代碼來實(shí)現(xiàn)硬件的連接!

藍(lán)牙設(shè)備顯示,搜索到自己的藍(lán)牙后,點(diǎn)擊即可連接。
有兩種模式切換,超聲波模式或藍(lán)牙模式,當(dāng)然無非就是單片機(jī)端怎么編程了!其實(shí)每一個(gè)按鈕都發(fā)送一串唯一的數(shù)據(jù),在此不累贅!
藍(lán)牙模塊可以回傳數(shù)據(jù)到App上,
只不過偶爾會(huì)丟字節(jié),這個(gè)不知為何,
若有大神,還請(qǐng)賜教!

//==========E4AAPK藍(lán)牙代===============================================================//
變量 分割數(shù)據(jù) 為 文本型
變量 啟動(dòng)時(shí)間 為 長整數(shù)型
    變量 模式 為 整數(shù)型
    變量 前燈 為 整數(shù)型
事件 按鈕6.被單擊()
        判斷 按鈕6.標(biāo)題
        分支 "搜索設(shè)備"
            列表框1.清空項(xiàng)目()
            藍(lán)牙1.搜索設(shè)備() '搜索設(shè)備
            彈出提示("正在搜索")   
        分支 "斷開連接"
        藍(lán)牙1.斷開連接() '退出處理,釋放資源,結(jié)束內(nèi)部處理線程
        豐富文本框1.內(nèi)容=""
        編輯框1.內(nèi)容=""
        編輯框2.內(nèi)容=""
        速度調(diào)節(jié).位置=50
        按鈕6.標(biāo)題="搜索設(shè)備"
    結(jié)束 判斷
        
結(jié)束 事件

事件 主窗口.按下某鍵(鍵代碼 為 整數(shù)型,傳址 屏蔽 為 邏輯型)
        如果 鍵代碼 = 返回鍵 則
        如果 取啟動(dòng)時(shí)間() - 啟動(dòng)時(shí)間 >2000 則
            彈出提示("再按一次退出程序")
            啟動(dòng)時(shí)間 = 取啟動(dòng)時(shí)間()
        否則
            結(jié)束程序()
        結(jié)束 如果
    結(jié)束 如果
結(jié)束 事件

事件 主窗口.創(chuàng)建完畢()
    列表框1.字體大小 = 6
    標(biāo)簽1.背景顏色=無色   
    列表框1.背景顏色=綠色
    模式=0   
    前燈=0
    藍(lán)牙1.是否存在()
    判斷 藍(lán)牙1.是否存在()
        分支 假
            彈出提示("沒有檢測(cè)到藍(lán)牙設(shè)備,程序?qū)㈥P(guān)閉")
            結(jié)束程序()
        分支 真
            判斷 藍(lán)牙1.是否已開啟()
                分支 假
                    藍(lán)牙1.開啟藍(lán)牙()
            結(jié)束 判斷
            
    結(jié)束 判斷
    保存窗口("主窗口",本對(duì)象) '本對(duì)象是當(dāng)前窗口
                    
    保存窗口("窗口1",創(chuàng)建 窗口1)   
結(jié)束 事件

事件 藍(lán)牙1.發(fā)現(xiàn)設(shè)備(設(shè)備名稱 為 文本型,設(shè)備地址 為 文本型,是否已配對(duì) 為 邏輯型)
    列表框1.添加項(xiàng)目(設(shè)備名稱 & "/" & 設(shè)備地址 & "/" & 是否已配對(duì))   
結(jié)束 事件

事件 列表框1.表項(xiàng)被單擊(項(xiàng)目索引 為 整數(shù)型)
    變量 設(shè)備信息 為 文本型
    變量 文本數(shù)組 為 文本型()
    變量 設(shè)備地址 為 文本型
    設(shè)備信息 = 列表框1.取項(xiàng)目內(nèi)容(項(xiàng)目索引)
    文本數(shù)組 = 分割文本(設(shè)備信息,"/")
    設(shè)備地址 = 文本數(shù)組(1)
    彈出提示(設(shè)備地址)
    藍(lán)牙1.連接設(shè)備(設(shè)備地址)         '連接設(shè)備 我看了有些例程是沒有的   
    彈出提示("正在連接")

    藍(lán)牙1.停止搜索()
   
結(jié)束 事件

事件 藍(lán)牙1.連接完畢(連接結(jié)果 為 邏輯型,設(shè)備名稱 為 文本型,設(shè)備地址 為 文本型,連接模式 為 整數(shù)型)
    變量 設(shè)備信息 為 文本型
    變量 文本數(shù)組 為 文本型()
    如果 連接結(jié)果 = 真 則
        標(biāo)簽1.標(biāo)題 = "已連接:" & 設(shè)備名稱 & "-" & 設(shè)備地址
        按鈕6.標(biāo)題="斷開連接"   
        彈出提示("連接成功")
    否則
        彈出提示("連接失敗")
        標(biāo)簽1.標(biāo)題 = "已斷開"
        按鈕6.標(biāo)題="搜索設(shè)備"
    結(jié)束 如果   
結(jié)束 事件

事件 藍(lán)牙1.藍(lán)牙設(shè)置完畢(設(shè)置結(jié)果 為 整數(shù)型)
    判斷 設(shè)置結(jié)果
        分支 1 '開啟藍(lán)牙
            彈出提示("藍(lán)牙已開啟")
            藍(lán)牙1.置可被發(fā)現(xiàn)() '置可被發(fā)現(xiàn)
        分支 2    '不開啟藍(lán)牙
            信息框("信息","藍(lán)牙未被開啟,程序?qū)⑼顺觯?quot;,"確定")
            結(jié)束程序()
        分支 3    '置可被發(fā)現(xiàn)
            彈出提示("藍(lán)牙已設(shè)置為可被發(fā)現(xiàn)")
            藍(lán)牙1.置工作模式(2) '藍(lán)牙聊天模式
        分支 4    '不置可被發(fā)現(xiàn)
            信息框("信息","藍(lán)牙未被設(shè)置為可被發(fā)現(xiàn),程序?qū)⑼顺觯?quot;,"確定")
            結(jié)束程序()
    結(jié)束 判斷   
結(jié)束 事件

事件 按鈕1.被按下(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
        藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@lefth","GBK"))
結(jié)束 事件
事件 按鈕1.被彈起(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
    藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@stoph","GBK"))
結(jié)束 事件

事件 按鈕2.被按下(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
        藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@ahead","GBK"))
結(jié)束 事件
事件 按鈕2.被彈起(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
    藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@stoph","GBK"))
結(jié)束 事件

事件 按鈕3.被按下(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
        藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@right","GBK"))
結(jié)束 事件
事件 按鈕3.被彈起(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
    藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@stoph","GBK"))
結(jié)束 事件

事件 按鈕4.被按下(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
        藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@backh","GBK"))
結(jié)束 事件
事件 按鈕4.被彈起(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
    藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@stoph","GBK"))
結(jié)束 事件

事件 按鈕5.被單擊()
        藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@stoph","GBK"))
結(jié)束 事件


事件 按鈕7.被單擊()
     藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@sgetd","GBK"))
     
結(jié)束 事件
事件 按鈕9.被單擊()
    判斷 前燈
        分支 0
            前燈=1
            藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@ligh1","GBK"))
            按鈕9.標(biāo)題="前燈開"
        分支 1
            前燈=0
            藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@ligh0","GBK"))
            按鈕9.標(biāo)題="前燈關(guān)"
    結(jié)束 判斷   
   
結(jié)束 事件
事件 按鈕10.被按下(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
    藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@load0","GBK"))
結(jié)束 事件
事件 按鈕10.被彈起(橫坐標(biāo) 為 整數(shù)型,縱坐標(biāo) 為 整數(shù)型)
    藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@load1","GBK"))
結(jié)束 事件
事件 按鈕8.被單擊()
   
    判斷 模式
        分支 0
            按鈕8.標(biāo)題="藍(lán)牙模式"
            藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@mosh1","GBK"))
            模式=1
        分支 1
            按鈕8.標(biāo)題="超聲波模式"
            藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@mosh0","GBK"))
            模式=0
    結(jié)束 判斷
結(jié)束 事件

事件 速度調(diào)節(jié).位置被改變(位置 為 整數(shù)型)
    如果 位置>9 且 位置<100 則  
    藍(lán)牙1.發(fā)送數(shù)據(jù)(文本到字節(jié)("@spe"&整數(shù)到文本(位置),"GBK"))
    結(jié)束 如果
結(jié)束 事件
事件 藍(lán)牙1.收到數(shù)據(jù)(數(shù)據(jù) 為 字節(jié)型(),設(shè)備名稱 為 文本型,設(shè)備地址 為 文本型)
    變量 收到數(shù)據(jù) 為 文本型
   
    分割數(shù)據(jù)=字節(jié)到文本(數(shù)據(jù),"GBK")
   
    豐富文本框1.內(nèi)容 =豐富文本框1.內(nèi)容 & "\r\n " & 字節(jié)到文本(數(shù)據(jù),"GBK")
    豐富文本框1.置光標(biāo)位置(取文本長度(豐富文本框1.內(nèi)容))
   
     如果 尋找文本(分割數(shù)據(jù),"rp",0) >0 則
'    標(biāo)簽2.標(biāo)題=取文本中間(分割數(shù)據(jù),2 ,4) &"m/s"
'    結(jié)束 如果
'    如果 尋找文本(分割數(shù)據(jù),"dt",0) >= 0 則
'    標(biāo)簽3.標(biāo)題=取文本中間(分割數(shù)據(jù),2 ,4) &"cm"
          如果 尋找文本(分割數(shù)據(jù),"dt",0) >0 則
          編輯框1.內(nèi)容=取指定文本2(分割數(shù)據(jù),"dt","cm")
          結(jié)束 如果
          如果 尋找文本(分割數(shù)據(jù),"sp",0) >0 則
        編輯框2.內(nèi)容=取指定文本2(分割數(shù)據(jù),"sp","ms")
        結(jié)束 如果
     '標(biāo)簽2.標(biāo)題="速度:"&分割數(shù)據(jù) &"m/s"
'    否則如果 尋找文本(分割數(shù)據(jù),"dt",0) >= 0 則
'     分割數(shù)據(jù)= 取文本右邊(分割數(shù)據(jù),3)
'    標(biāo)簽3.標(biāo)題="距離:"&分割數(shù)據(jù) &"cm"
    結(jié)束 如果
   
'=====================以下是接收單片機(jī)發(fā)送過來的16進(jìn)制HEX數(shù)據(jù)的方法=======================   
'    變量 計(jì)次 為 整數(shù)型
'    判斷循環(huán)首 計(jì)次 < 取數(shù)組成員數(shù)(數(shù)據(jù))
'        編輯框1.內(nèi)容 = 編輯框1.內(nèi)容 & "  " & 到十六進(jìn)制(數(shù)據(jù)(計(jì)次))
'        計(jì)次 = 計(jì)次 + 1
'    判斷循環(huán)尾   
結(jié)束 事件

'事件 編輯框1.內(nèi)容被改變(新內(nèi)容 為 文本型)
'   
'結(jié)束 事件

事件 豐富文本框1.內(nèi)容被改變(新內(nèi)容 為 文本型)
   
結(jié)束 事件

事件 標(biāo)簽1.被單擊()
   
結(jié)束 事件

事件 標(biāo)簽2.被單擊()
   
結(jié)束 事件


事件 按鈕11.被單擊()
    如果 讀取窗口("窗口1")=空 則
        保存窗口("窗口1",創(chuàng)建 窗口1)
    結(jié)束 如果
    切換窗口(讀取窗口("窗口1"))
結(jié)束 事件


全部資料51hei下載地址:
藍(lán)牙小車apk、51單片機(jī)源代碼.rar (1.24 MB, 下載次數(shù): 568)

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏16 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:577423 發(fā)表于 2019-7-31 10:08 | 只看該作者
終于看到中文編程的了,希望看到更多中文編程出現(xiàn)。為初學(xué)者(不懂英文)服務(wù)
回復(fù)

使用道具 舉報(bào)

板凳
ID:156494 發(fā)表于 2019-7-31 11:32 來自手機(jī) | 只看該作者
越南超級(jí)人類 發(fā)表于 2019-7-31 10:08
終于看到中文編程的了,希望看到更多中文編程出現(xiàn)。為初學(xué)者(不懂英文)服務(wù)

確實(shí),感謝創(chuàng)造中文編程的大神,支持!
回復(fù)

使用道具 舉報(bào)

地板
ID:5993 發(fā)表于 2019-8-5 18:39 | 只看該作者
終于看到中文編程的了,希望看到更多中文編程出現(xiàn)。為初學(xué)者(不懂英文)服務(wù)
回復(fù)

使用道具 舉報(bào)

5#
ID:608128 發(fā)表于 2019-9-7 11:01 | 只看該作者
很完整,值得下載學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

6#
ID:637146 發(fā)表于 2019-12-8 10:59 | 只看該作者
謝謝共享。。。。。。。。。
回復(fù)

使用道具 舉報(bào)

7#
ID:191376 發(fā)表于 2020-2-29 22:48 | 只看該作者
學(xué)習(xí)了 正感興趣
回復(fù)

使用道具 舉報(bào)

8#
ID:250820 發(fā)表于 2020-3-4 16:10 | 只看該作者

終于看到中文編程的了,希望看到更多中文編程出現(xiàn)。為初學(xué)者(不懂英文)服務(wù)
回復(fù)

使用道具 舉報(bào)

9#
ID:527324 發(fā)表于 2020-4-4 00:37 來自手機(jī) | 只看該作者
好東西,正在到處找,不過也要掙點(diǎn)黑幣啊
回復(fù)

使用道具 舉報(bào)

10#
ID:709238 發(fā)表于 2020-4-9 17:53 | 只看該作者
值得下載學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

11#
ID:364328 發(fā)表于 2020-4-13 21:33 | 只看該作者
請(qǐng)問UP有沒有E4A,我的說是免費(fèi)版,提示那個(gè),可有償請(qǐng)教您,我也是要實(shí)現(xiàn)PWM調(diào)速,
回復(fù)

使用道具 舉報(bào)

12#
ID:738502 發(fā)表于 2020-5-26 12:22 | 只看該作者
我的HC05模塊連接手機(jī)藍(lán)牙失敗,請(qǐng)問您知道原因嗎?
回復(fù)

使用道具 舉報(bào)

13#
ID:104994 發(fā)表于 2020-7-2 10:22 | 只看該作者
非常感謝大佬分享,非常有用!
回復(fù)

使用道具 舉報(bào)

14#
ID:396065 發(fā)表于 2020-9-15 20:54 | 只看該作者
藍(lán)牙小車apk、51單片機(jī)源代碼.rar (1.24 MB, 下載次數(shù): 230)
回復(fù)

使用道具 舉報(bào)

15#
ID:65956 發(fā)表于 2020-9-18 08:32 | 只看該作者
看似不錯(cuò),下載下來學(xué)習(xí)一下,謝謝分享
回復(fù)

使用道具 舉報(bào)

16#
ID:834441 發(fā)表于 2020-10-30 11:03 | 只看該作者
中文編程厲害了,膜拜
回復(fù)

使用道具 舉報(bào)

17#
ID:859420 發(fā)表于 2020-12-13 11:41 | 只看該作者
gaojiaxin123 發(fā)表于 2020-5-26 12:22
我的HC05模塊連接手機(jī)藍(lán)牙失敗,請(qǐng)問您知道原因嗎?

請(qǐng)問您連接不上藍(lán)牙模塊問題解決了嗎
回復(fù)

使用道具 舉報(bào)

18#
ID:156494 發(fā)表于 2021-3-29 22:33 | 只看該作者
qwthh 發(fā)表于 2020-4-13 21:33
請(qǐng)問UP有沒有E4A,我的說是免費(fèi)版,提示那個(gè),可有償請(qǐng)教您,我也是要實(shí)現(xiàn)PWM調(diào)速,

E4A可以免費(fèi)使用,但是功能和服務(wù)肯定沒有購買版權(quán)的好
回復(fù)

使用道具 舉報(bào)

19#
ID:156494 發(fā)表于 2021-3-29 22:36 | 只看該作者
gaojiaxin123 發(fā)表于 2020-5-26 12:22
我的HC05模塊連接手機(jī)藍(lán)牙失敗,請(qǐng)問您知道原因嗎?

用手機(jī)鏈接藍(lán)牙模塊,你的藍(lán)牙模塊先和手機(jī)進(jìn)行配對(duì)好才能連,你要知道藍(lán)牙的初始密碼
回復(fù)

使用道具 舉報(bào)

20#
ID:156494 發(fā)表于 2021-3-29 22:37 | 只看該作者
DK.mo 發(fā)表于 2020-12-13 11:41
請(qǐng)問您連接不上藍(lán)牙模塊問題解決了嗎

你也鏈接不上嗎
回復(fù)

使用道具 舉報(bào)

21#
ID:405261 發(fā)表于 2021-4-20 13:18 | 只看該作者
APP寫的非常好
回復(fù)

使用道具 舉報(bào)

22#
ID:581038 發(fā)表于 2022-2-18 10:12 | 只看該作者
這東西好,有學(xué)習(xí)價(jià)值,某一個(gè)寶上好像要花錢買的。
回復(fù)

使用道具 舉報(bào)

23#
ID:1003226 發(fā)表于 2022-2-22 13:26 | 只看該作者
很完整,值得下載學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

24#
ID:258676 發(fā)表于 2022-3-11 09:50 | 只看該作者
你好 能不能用這個(gè)藍(lán)牙
回復(fù)

使用道具 舉報(bào)

25#
ID:577622 發(fā)表于 2022-3-25 10:29 | 只看該作者
這個(gè)中文編程牛啊。
回復(fù)

使用道具 舉報(bào)

26#
ID:1115148 發(fā)表于 2024-4-2 15:04 | 只看該作者
終于看到中文編程的了,希望看到更多中文編程出現(xiàn),厲害了
回復(fù)

使用道具 舉報(bào)

27#
ID:816542 發(fā)表于 2024-6-5 10:07 | 只看該作者

你好 能不能用這個(gè)藍(lán)牙
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表