打印

有关串口通信

[复制链接]
986|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
maxingyu|  楼主 | 2015-12-22 21:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这两天在写一个win32程序读串口数据并绘图。新手,有几点疑惑想请教大家。
1.readfile函数,BOOL ReadFile(
    HANDLE hFile,  LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead,   LPOVERLAPPED lpOverlapped );    第二个参数,应该是一个可以为任意类型的指针吧。不是一定要是字节指针吧。也就是说如果我开辟了一个16位字数组,那这个指针就可以写成字指针吗?
2.串口接收是按字节接收的,可是我发送的数据是16位的,那怎么才能接收到正确的16位?按之前网上说的,设置数据包的格式,首先传送包头,包头匹配再继续发送。我按照这个写了程序测试,发现他数据刚开始是16位正确的,过了几个就又错了。这是为什么啊!!
3.关于串口缓存区,输入缓存区满后再有数据输入,是就输入不进来了吗还是覆盖?
4.还有关于串口通信的,我发送端每隔一定时间发送数据,PC端是可以直接读取的吧,不要握手吧
刚开始学,觉得很困惑,也做了一些简单地实验,希望有人可以解答。谢谢!

相关帖子

沙发
maxingyu|  楼主 | 2015-12-23 09:36 | 只看该作者
顶一下~

使用特权

评论回复
板凳
zaianda| | 2016-1-12 11:44 | 只看该作者
我是直接用.NET里面的Serial类,程序很简单的。无需握手,但是每次收发后要注意对串口缓冲进行清除。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

121

帖子

1

粉丝