我刚刚完成了一个用C编写的小项目,在那里我从串口读取数据流并解析传入的数据。 该软件是为POSIX系统编写的(使用termios),并遵循使用串行i / o的标准步骤
除了套接字部分,代码是直接ANSI C。
我的问题是,如何使代码在Windows平台上运行。 这个端口不是我写的,我只想告诉那些可能有兴趣移植它的人(即琐碎的,不是那么琐碎,扯掉眼睛引发的疯狂)。
如果有人使用Windows“Windows Services for UNIX”,他们是否可以在不修改代码的情况下使用该代码?
所以,如果有人有这方面的经验,请分享。
答案 0 :(得分:3)
应该很容易做到。名称非常不同,但调用和概念的顺序非常相似。
您正在寻找的是DCB结构,该结构应与SetComState()函数一起用于设置波特率,停止位等。然后使用SetCommTimeouts()并在COMMTIMEOUTS中设置超时值{3}}结构使后续的读取调用阻塞。
这是一张漂亮的PDF short introduction。 <子>(Backup。)子>