WiFi - 設置伺服器進行通訊

材料準備

  • AmebaD [AMB21 / AMB22 / AMB23 / BW16] x 1

  • Laptop(可與Ameba連到相同網域,並安裝TCP工具)

範例説明

這個範例裡,我們使用 Ameba 連上WiFi,作為服務器,與連接過來的客戶端進行對話。

First, we make sure the correct Ameba development board is set in “Tools” → “Board”

Then, open the Simple WiFi Server example in “File” “Examples” “WiFi” “SimpleServerWiFi”

1

將WiFi 連線的相關訊息進行修改,將下圖中黃色標註的地方進行對應的修改。

2

上傳程式碼之後,按下Ameba 的Reset 按鈕, 這時會看到WiFi 連線後的信息。

在laptop 上的socket 工具上(本示例中使用的工具為“sokit” )通過獲取的IP地址以及範例中設定的port 5000 來進行連線。

3

選取Client 模式,填寫Server IP 和port 信息,點擊 “TCP Connect”

連接成功後會顯示”A client connected to this Server”,以及Client的IP和port訊息。

從 Client 發送一個字串過來,Ameba收到後,會將這個字串再發給Client。

4

客戶端會顯示收到這個字串。

程式碼說明

在連線WiFi時會使用到WiFi.begin();
連線成功後會讀取WiFi的信息:
顯示WiFi的名稱WiFi.SSID()
顯示WiFi的訊號強度WiFi.RSSI()
顯示Ameba的IP信息WiFi.localIP()
創建服務器並傳輸數據:
設定服務器的端口號WiFiServer server(5000)
開始服務器的監聽server.begin();
判斷是否有客戶端連線server.available()
從Server讀取數據client.read()
對Server發送數據client.write()
與Server斷開連線client.stop();