我的ESP32實做書籍:https://youyouyou.pixnet.net/blog/post/121105860
博客來網址:https://www.books.com.tw/products/0010901195


本篇新版文章請參閱:第十六篇 ESP32 藍芽BLE連線:即時通訊與語音指令

ESP32是個好東西(可參閱這篇文ESP32 Arduino開發環境架設),今天來說明一下如何用手機的藍芽進行簡單的通訊與控制

範例影片: https://www.youtube.com/watch?v=hUC-MHM_P04&feature=youtu.be&t=215

首先準備器材
1.ESP32:NodeMCU-ESP32s(露天搜尋: https://goods.ruten.com.tw/item/show?21848118800764
2. 2個繼電器
3. 一個USB風扇
4. 一個LED檯燈
5. Android手機,並安裝這個APP: Arduino Bluetooth Control(由於新版不相容,請下載我備份的舊版APP:https://t.ly/YRWpD) ,其他APP不是不行,而是這個APP有支援語音命令,真的很好玩。
alt text

在這裡還是要強調一下,ESP32個人推NodeMCU-ESP32s,為什麼?因為這顆有5V,其他大部分ESP32只有3.3V,這時你要推relay就推不動了。

很快的說明原理,透過藍芽傳送字元來控制腳位,例如手機透過藍芽傳送字元"1",ESP32收到以後就開啟GOIP4->HIGH,而這個動作就是透過繼電器將風扇開啟,其餘都是相同的方式,以下分成幾個步驟簡要說明如何做

手機藍芽指令 ESP32動作 動作結果
1 GPIO4->HIGH 開啟風扇
2 GPIO4->LOW 關閉風扇
3 GPIO16->HIGH 開啟電燈
4 GPIO16->LOW 關閉電燈

一、接線與架設
準備好ESP32以後,將繼電器接在GPIO16與GPIO4上(其他也可以,主要是配合我的程式碼),然後接風扇與檯燈分別接在兩個繼電器上。其架構如下圖,也就是將透過兩個繼電器來控制兩個電器。

alt text

二、撰寫程式碼

ESP32藍芽的程式碼撰寫非常簡單,比arduino+HC05簡單多了,首先少了接線,再來改名子也不用AT模式,也不用指定胞率,學過ESP32藍芽以後,你會覺得相認恨晚(應該沒那麼誇張)。

 

程式注意部份:
1. BluetoothSerial.h 為內建的函式庫,直接引入即可。
2. ESP32藍芽使用只需要2個步驟,宣告藍芽物件(行2),然後藍芽啟動(行7),就可以開始傳跟收藍芽資料,也不用找HC05來接線,真的簡單到超級無言。
2. 第19-22行中,如果你傳的是char的話,要用單引號「'」包覆字元,字串則是雙引號「"」。

 

 

 

 

arrow
arrow

    夜市 小霸王 發表在 痞客邦 留言(1) 人氣()