我正在用 C# 开发一个应用程序来控制我的 KNX 家庭系统。因此,我使用了 ETS3Demo 软件,使用软件 Wireshark 可以“看到”ETS3 发送到 KNX/IP 接口的 IP 数据报。
我已经成功使用“Connection_Request”、“ConnectionState_Request”和“Disconnect_Request”,即我发送请求数据报并且 KNX/IP 接口响应。
唯一让我头疼的请求是“Tunnelling_Request”。我发送信息的方式与发送以前的数据报完全相同,但这个似乎不起作用。
我“逐字节”发送数据报,您可以在以下代码中看到:
byte[] byteToSend1 = { 06, 16, 04, 32, 00, 21, 04 };
string communicationChannel = ComunicationChannelNum.Text;
byte bytesnew = Convert.ToByte(communicationChannel);
byte[] byteToSend2 = { 00, 00, 17, 00, 188, 224, 00, 00, 09, 01, 01, 00, 129 };
writer.WriteBytes(byteToSend1);
writer.WriteByte(bytesnew);
writer.WriteBytes(byteToSend2);
我已经将与源地址和组地址对应的字节更改为“int”变量,但仍然不起作用。
有人可以给我一个建议或我可能做错的事情。
谢谢