【应用场景说明】
在网络时代,各种智能设备层出不穷,设备之间的连接与数据交互也越来越频繁。因此产生了适合不同环境的通讯协议或接口。数据想在设备之间正确传输,必须要满足这些协议或接口的规定。
【开发案例介绍】
1、UDP协议
A 需求说明:
UDP是一个无连接的传输协议,在多媒体中被广泛应用。该案例的需求是从CD播放软件里获取音频数据包,实时把UDP值显示到界面中。获取UDP数据时,需要知道IP地址(本地机通常为127.0.0.1 )和端口号。除了UDP值外,还可以进一步把音频数据解析,能够获取歌曲的BPM节拍,拍子数、歌曲段落、高音值等。这些音频值的应用十分广泛,因跟本主题没有直接关系,这里不逐一说明。
B 开发语言:Clojure+Java
C 应用环境:Windows
2、 IEEE 802.11协议
A 需求说明:
IEEE 802.11是无线局域网通用的标准协议。该案例的需求包含三个功能,每个功能用一个函数实现。
1)通过程序解析802.11帧数据,解析内容包括源MAC、目的MAC、源IP、目的IP、目的端口。
2)通过程序构造802.11帧数据,指定源MAC、目的MAC、payload,并发送该帧。
3)通过程序根据WLAN网络中已知IP,返回其MAC。
B 开发语言:C++
C 应用环境:Windows
3、RS485接口
A 需求说明:
PLC与控制设备之间的通信基本上都是基于串行通信接口,RS485是其中的一种。该案例的需求是通过该协议从主机发送命令给从机,从机给出应答。
B 开发语言:C++
C 应用环境:Windows
4、Modbus协议
A 需求说明:
Modbus是一种国际标准的通讯协议,用于在不同的设备之间交换数据。该案例的需求是通过该协议采集数据,并对数据进行分析。程序运行在PC机上,PC机和数据采集设备之间用网线传输数据,执行的是Modbus协议。
B 开发语言:VC++
C 应用环境:Windows