99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>Arduino 101 BLE漫游者遙控器

Arduino 101 BLE漫游者遙控器

2022-12-22 | zip | 0.26 MB | 次下載 | 免費

資料介紹

描述

?

?
poYBAGOibvGAKV5EAACq-oq9nJg578.jpg
?

我購買了一個 Arduino 101 用于 Arduino 兼容性以及內(nèi)置藍牙低功耗和 6 軸加速度計/陀螺儀等額外功能。我想用我的 Arduino 101 構(gòu)建一個基于 Arduino 的遠程控制流動站,但很難找到示例代碼。我發(fā)現(xiàn)了許多使用藍牙的 RC 漫游者示例,但沒有一個使用藍牙 LE。

通信問題分解成小塊,我需要:

  • 了解如何將一個字節(jié)從我的智能手機或平板電腦傳輸?shù)?Arduino 101
  • 確定如何創(chuàng)建一個可行的遠程控制以將這些字節(jié)發(fā)送到流動站的狀態(tài)機。

我確實解決了這兩個問題。我很快發(fā)現(xiàn)我可以修改 CurieBLE 庫中包含的 LED 和 CallbackLED 示例,以將一個字節(jié)傳輸?shù)?Arduino 101,但很難找到可靠、易于使用的遙控器。經(jīng)過大量的互聯(lián)網(wǎng)搜索和一些工作后,我找到了一個新穎的解決方案,在此介紹。

第 1 步:通過 BLE 向 Arduino 101 發(fā)送字節(jié)

?
?
?
?
poYBAGOibvaAfuQjAABsXTEQgT4706.jpg
?
1 / 3
?

我在 Arduino 論壇上找到了這個基本通信挑戰(zhàn)的答案:Arduino 論壇 > 產(chǎn)品 > Arduino 101。這是解釋。

在名為 CallbackLED 的 Arduino 101 CurieBLE 示例中 - 定義了一個事件處理程序,以便在寫入開關(guān)特性時調(diào)用。函數(shù)中的代碼setup()如下所示:

// assign event handlers for characteristic  
switchChar.setEventHandler(BLEWritten, switchCharacteristicWritten);

switchCharacteristicWritten事件處理函數(shù)中,代碼檢查寫入的值是零 (0x00) 還是其他值。如果非零,它將“打開”LED,如果為零,它將“關(guān)閉”LED。代碼如下所示:

if (switchChar.value()) {
? ? Serial.println("LED on");    digitalWrite(ledPin, HIGH);
else {
? ? Serial.println("LED off");    digitalWrite(ledPin, LOW);   }

要捕獲寫入的字節(jié),只需將其保存到一個變量中,然后在串口監(jiān)視器上打印出來,代碼如下所示:

if (switchChar.value()) { 
? ? Serial.println("LED on"); 
? ? digitalWrite(ledPin, HIGH); 
? ? char state = ? ? switchChar.value(); 
? ? Serial.print("new value written: "); 
? ? Serial.println(state);  }
else {
? ? Serial.println("LED off"); 
? ? digitalWrite(ledPin, LOW);   }

我通過 Nordic Semiconductor 的 nRF Connect 應(yīng)用程序編寫角色來驗證此功能是否有效,該應(yīng)用程序在 Play Store 和 App Store 中均可用。

以下是安裝應(yīng)用程序后的詳細步驟:

1.運行nRF Connect應(yīng)用

2. 按右上角的“掃描”運行掃描儀 - 它通常會自動運行

3. 選擇您的命名服務(wù)(在示例中它被命名為“LEDCB”)。

4. 按右側(cè)的“連接”。

5. 選擇未知服務(wù)(服務(wù)列表中的最后一個)。

6. 按右邊的向上箭頭。這會彈出一個寫入值對話框。

7. 按“新值”,輸入一個十六進制字節(jié)值,如 61 - 這是 ASCII 文本中的“a”。

8. 按右下角的“發(fā)送”,您的字節(jié)就被發(fā)送了。

按照這些步驟,我們成功地通過藍牙 LE 將字節(jié)寫入 Arduino 101。

第 2 步:創(chuàng)建藍牙 LE 遙控器

?
?
?
?
poYBAGOifWmAOGTNAABsTxPXnVQ228.jpg
?
1 / 4
?

我喜歡 nRF Connect 應(yīng)用程序,但我找不到制作可用遙控器的方法。通過 nRF Connect 應(yīng)用程序手動輸入字節(jié)不會讓我有效地控制流動站。為了試用其他 Arduino 101 示例,我下載了另一個名為 nRF 工具箱的 nRF 應(yīng)用程序。在工具箱中,最后一個應(yīng)用程序的名稱為“UART”。UART 應(yīng)用程序有九個用戶可定義的按鈕,可以配置為在按下按鈕時發(fā)送命令。按右上角的“編輯”會使所有按鈕變?yōu)槌壬?/font>觸摸按鈕會彈出一個對話框,將圖標與按鈕相關(guān)聯(lián),并定義按下時要發(fā)送的命令。

我有一部 Android 手機,可用圖標與我的遙控器完美匹配。IOS 設(shè)備上,圖標不太適合這種用法,但請選擇您能記住的圖標。我的流動站的運動控制基于使用以下配置的簡單單字節(jié)代碼(我使用了 Deba168 教程中用于“智能手機控制的 Arduino 流動站”的控制序列)。這是命令列表和相應(yīng)的字符:

一個 - 向前

b - 左

c - 停止

d - 右

e - 反轉(zhuǎn)

1 - 25% 的電機功率

2 - 50% 的電機功率

3 - 75% 的電機功率

4 - 100% 電機功率

當(dāng)我第一次創(chuàng)建遙控器時,我輸入了字符的 ASCII 值 - 這沒有用。正確的命令是字母/數(shù)字本身,而不是它的 ASCII 值。當(dāng)我輸入所有九個圖標和命令時,我按下“完成”。我完成的遙控器看起來像圖片。

簡單吧?還好沒那么快。當(dāng)我嘗試將具有 CallbackLED 開關(guān)特性的 Arduino 101 BLE 服務(wù)連接到 UART 應(yīng)用程序時,它會抱怨“該設(shè)備沒有所需的服務(wù)”。我在 Nordic 和 UART 上進行了互聯(lián)網(wǎng)搜索。我發(fā)現(xiàn) UART 應(yīng)用程序希望看到非常具體的服務(wù) UUID 和特征。使用以下信息https://www.nordicsemi.com/eng/Products/Nordic-mob ...。我將正確的服務(wù)名稱、UUID 以及 Tx 和 Rx 特征集成到我的 Arduino 草圖中,然后我進行了一些調(diào)整以解決該服務(wù)可以傳輸多個字符并因此提供指向第一個元素的指針這一事實一個數(shù)組并且它有效。

第 3 步:測試遙控器

?
pYYBAGOifWyALdPQAAB_zO7sqeM774.jpg
?

Sketch 會將傳輸?shù)淖止?jié)發(fā)送到串行監(jiān)視器,以驗證 UART 應(yīng)用程序上的每個按鈕是否發(fā)送了所需的字節(jié)。

要使用遙控器,請按照下列步驟操作:

1.打開nRF工具箱

2. 選擇串口應(yīng)用

3. 按“連接”按鈕,然后選擇您的 BLE 服務(wù)的名稱 - “BLE_ROV”。

該按鈕現(xiàn)在應(yīng)顯示為“斷開連接”。您現(xiàn)在已連接,每次按下按鈕都會傳輸該按鈕的命令。

注意:在使用舊 IOS 手機測試此草圖時,我發(fā)現(xiàn)我宣傳的本地名稱“BLE_ROV”沒有出現(xiàn)在要連接的列表中。相反,我看到類似“Arduino 101-xxxx”的內(nèi)容,其中 xxxx 是 BLE 芯片 Mac 地址的最后 4 個十六進制數(shù)字 - 顯示在 Arduino 101 板背面的小標簽上。只需選擇要連接的名稱,一切都會正常。

這是我能找到的最簡單的解決方案。當(dāng)您按下遙控器上的每個鍵然后斷開連接時,包含可供下載的 Arduino 草圖以及串行監(jiān)視器的圖像。

我希望這是有用的。我將在稍后提供我建造的漫游者的完整說明。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費