QEC-M 系列包含一個內置的 10/100Mbps LAN 接口,可以通過 Ethernet 函式庫控制。不不需使用 Arduino Ethernet Shield 即可連接網際網路。該 Ethernet 函式庫可以實做以下兩種功能,接收客戶端連線要求以及送出連線請求給伺服端。在 86Duino Coding 101 中,該函式庫最多同時支援 4 個連線(包含接收請求、送出請求及混合以上兩種);在之後的版本將把上限從 4 提高為 128。
Ethernet 類別
Ethernet 類別初始化 Ethernet 函式庫和網路設定。
IPAddress 類別
IPAddress 類別用以操作本地和遠端 IP 位址。
Server 類別
Server 類別用以創建伺服端與客戶端連接,透過網路傳送與接收資料。
Client 類別
Client 類別用以創建客戶端與伺服端連接,透過網路傳送與接收資訊。
- EthernetClient()
- if (EthernetClient)
- connected()
- connect()
- write()
- print()
- println()
- available()
- read()
- flush()
- stop()
EthernetUDP 類別
UDP 類別實作 UDP 協定建立連線,並傳送與接收資料。
- begin()
- read()
- write()
- beginPacket()
- endPacket()
- parsePacket()
- available()
- stop()
- remoteIP()
- remotePort()
範例
以下 Ethernet 函式庫的範例,是從 Arduino 課程 而來。可以在 86Duino 上運行。(注意:以下範例在 86Duino 上運行時不需要 Arduino Ethernet Shield):
- ChatServer:創建簡單的聊天伺服器。
- WebClient:製作 HTTP 請求。
- WebClientRepeating:重複製作 HTTP 請求。
- WebServer:在 HTML 網頁上顯示類比感測器的值。
- BarometricPressureWebServer:在網頁上顯示氣壓感測器輸出的值。
- UDPSendReceiveString:透過 UDP 傳送和接收文字訊息。
- UdpNtpClient:過 UDP 送出 NTP 請求。
- DnsWebClient:DNS 和 DHCP 為基礎的 Web 的客戶端。
- DhcpChatServer:簡單的 DHCP 聊天伺服器。
- DhcpAddressPrinter:透過 DHCP 取得 IP 位址,並且印出 IP 位址。
- TelnetClient:簡單的 Telnet 客戶端。
Hack
我們使用 Software Systems 的 Software Systems 實作 86Duino 的 Ethernet 函式庫。如果想要在 86Duino 上直接使用 SwsSock ,可以參考 the Web page of SwsSock 取得相關資訊。
函式庫參考主頁面
86Duino 參考的文本是根據 Creative Commons Attribution-ShareAlike 3.0 License,部分文本是從 the Arduino reference 修改的。 參考中的代碼示例已發佈到公共領域。