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通讯软体