Ameba Arduino: [RTL8722CSM] [RTL8722DM] 估算UDP數據發送延遲

材料準備
  • Ameba x 1
  • Windows電腦(需連入同樣的網絡)

範例說明

本例使用Ameba接收來自計算機的UDP數據包,併計算UDP數據包發送延遲。

打開“CalculateUdpSendDelay”示例:”File” -> “Examples” -> “AmebaWiFi” -> ” UDP_Calculation ” -> “CalculateUdpSendDelay”.

1

在示例代碼中,修改高亮的部分,輸入連接WiFi網絡所需的信息(ssid、密碼、密鑰索引)。

還需要更改服務器變量以匹配計算機的IP地址。您可以在終端窗口中使用“ipconfig”命令找到IP地址。

1

回到我們的電腦上,我們需要安裝Cygwin來編譯用來發送UDP數據包的代碼。 Cygwin可以從 https://www.cygwin.com/下載。

按照官網上的說明來安裝。接下來,從“CalculateUdpSendDelay”的Arduino示例中,將示例最下面的“#if 0”和“#endif”之間的代碼複製到一個新的文本文件中,將hostname更改為Ameba的IP地址,並將該文件重命名為“UdpSendDelay.cpp”。

1

接下來,打開Cygwin終端,將工作目錄更改為“UdpSendDelay.cpp”的位置,並使用 “g++ UdpSendDelay.cpp -o UdpDelay” 指令來編譯代碼。一個名為“UdpDelay.exe”的文件會在當前目錄中創建出來。

首先,在計算機上運行UdpDelay.exe文件,計算機將開始監聽來自Ameba的數據包。接下來,從Arduino IDE編譯並上傳代碼到Ameba,上傳完成後按reset按鈕。 Ameba將開始向計算機發送UDP數據包。

一旦接收到10000個數據包,計算機將計算出平均延遲並打印出結果。發送10000個包需要一些時間。

1

請先確認已安裝QQ通訊軟體