您好我是一名电气工程专业的学生,我正在设计一种记录数值的设备,然后将其作为简单的8位数据发送到LAN端口。我必须使用时间戳检索此数据并将其显示在GUI中。
发送的数据将采用以下格式:
(MSB) (LSB)
[start bit | 3 | 4 | 2 | 7 | 2 | 4 | 6 | stop bit]
并将在GUI中显示为:
[Computer Time] 34.2 Volts 7.2 Amperes 46 degrees
请指导我如何使用C#或VB.Net从LAN端口访问信息,如果可能请发布套接字编程,因为作为电气工程师,编程并不是我的强项。谢谢。
答案 0 :(得分:1)
根据经验,我在C#中为我的大学论文写了一个数据包分析引擎。您将面临的问题是Managed .NET不允许您捕获低于IP级别的数据,但是您可以使用一些非托管API来访问较低级别的数据包数据。例如,SharpPCap将允许您在数据层(OSI模型中的第2层)捕获数据包。我在.NET中什么都不知道,它允许你直接读/写字节到LAN适配器,即使你可以,任何PC都可能把它丢弃为错误的位/字节。
我给你的建议是:
了解OSI模型以及数据包封装的工作原理。
了解MAC和IP寻址的工作原理
考虑您可以传输数据的级别,以及如何将其从代码序列化为可传输的内容。 (反之亦然)。
恕我直言,这看起来更像是串口,甚至是USB的工作,你可以更好地控制发送/接收的数据。基于LAN的系统是基于标准的,因此为了使您的数据可以接受,您需要在某种程度上学习标准,或者使用现成的实现。