筆記:用ARDUINO IDE對WIFI模塊進行開發(2)

前兩天已經實現了網頁控制WIFI模塊上的LED,我的板子上還有一個Atmega328P的芯片,我給它燒寫了Arduino NANO的固件。WIFI模塊和Atmega328P之間如何交換數據呢?最簡單的方式就是串口通信了。

筆記:用ARDUINO IDE對WIFI模塊進行開發(2)

串口通信接線

既然使用ARDUINO IDE進行開發,那麼很多基本的ARDUINO函數庫就可以直接使用,比如串口通信的控制仍然只要使用Serial類就可以了。比如初始化串口代碼:Serial.begin(9600);和我們在其他Arduino板上的用法一模一樣。

接下來我要判斷網頁的點擊事件,然後通過串口發送數據給NANO,我自己定義了一個簡單的協議格式,下面代碼就是控制NANO的D13管腳輸出的電平高低,代碼很簡單:

筆記:用ARDUINO IDE對WIFI模塊進行開發(2)

ESP8266串口發送數據

而在NANO一側,只要接收串口數據,根據協議解析命令就可以了,串口控制仍然使用Serial類,基本思路是:判斷幀頭是否以“ABT”開頭,以‘#’結尾,具體代碼如下:

筆記:用ARDUINO IDE對WIFI模塊進行開發(2)

串口接收代碼

筆記:用ARDUINO IDE對WIFI模塊進行開發(2)

解析指令代碼

然後我們來看測試結果,點擊網頁上的文本,控制NANO的D13管腳,該引腳上接了一個LED燈,可以通過LED的亮和滅來判斷電平是否發生了變化:

筆記:用ARDUINO IDE對WIFI模塊進行開發(2)

LED熄滅

筆記:用ARDUINO IDE對WIFI模塊進行開發(2)

LED點亮

這個步驟完成後,就可以通過網頁監控或控制更多的傳感器了!

希望我的分享對大家有所幫助,歡迎大家多評論,多交流!


分享到:


相關文章: