打印

请教一个有关串口的问题!!!

[复制链接]
650|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
  串口通信 我调试的时候是直接用串口助手发送的 一连串数据 这个时候只会进一次VB串口中断而且会把 全部数据存下来  但是我用单片机发送数据  每一个单独的数据 就会触发vb串口中断一次 我不太明白是怎么回事!!




到在vb 中断中 cmds 数组把我发送的内容全部读取出来了!!

但是用单片机发送的时候  可以看到 在prtues的虚拟端口中有数据
但是上位机这边 数组里面却只有一个值


我感觉是 单片机发一个数据触发了这边中断一次  但是用串口发这么多数据只触发了一次!!!


相关帖子

沙发
乄iao鬼|  楼主 | 2016-6-3 08:57 | 只看该作者
我尝试下 一秒去 读一次vb里面的缓存  这样里面的数据应该不只一个数据了

使用特权

评论回复
板凳
fzyuan| | 2016-6-3 09:07 | 只看该作者
用示波器看一下两者的区别。

使用特权

评论回复
地板
乄iao鬼|  楼主 | 2016-6-3 11:20 | 只看该作者
fzyuan 发表于 2016-6-3 09:07
用示波器看一下两者的区别。

是我vb 上面设置有问题  我vb设置的一个数据产生一个com事件    后面我改成了11个数据进com事件 解决了这个问题  至于开始那种  我感觉是因为我是一次性读出的缓冲区数据   打成一串  在vb表示收到一个数据的事件发生的时候 缓冲区里面已经有大量数据了 所以才会有这样情况  而单片机相当于一个一个发 触发的时候 刚好缓冲区里面数据 只有一个  修改方法 要么修改成11个数据触发一次  要么每次只从缓冲区读一个数据出来!!!!!



还是要感谢你的回答 !! 谢谢

使用特权

评论回复
5
NE5532| | 2016-6-3 13:06 | 只看该作者
其实根源是你单片机发慢了,两个字节之间拉开了。不过你还是算解决了问题,值得高兴。

使用特权

评论回复
6
乄iao鬼|  楼主 | 2016-6-6 13:57 | 只看该作者
NE5532 发表于 2016-6-3 13:06
其实根源是你单片机发慢了,两个字节之间拉开了。不过你还是算解决了问题,值得高兴。 ...

   遇到版主 以后有问题就找你了 哈哈哈哈哈!!!!!!!

使用特权

评论回复
7
jimsboy| | 2016-6-7 13:09 | 只看该作者
VB的串口是可以设置收到多少数据触发一次中断的。
如果你设为1个数据就触发,那就是你见到的这样
如果你设为很多个数据才触发,结果就是万一这次的数据量不到这么多它就没有响应了。
我都是用触发加定时器。否则还没想到好办法

使用特权

评论回复
8
乄iao鬼|  楼主 | 2016-6-14 07:59 | 只看该作者
jimsboy 发表于 2016-6-7 13:09
VB的串口是可以设置收到多少数据触发一次中断的。
如果你设为1个数据就触发,那就是你见到的这样
如果你设 ...

触发加定时怎么做   就是 选择多少个数据触发     然后在用定时器  每隔一段时间去 查询缓存中的数据吗?

使用特权

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

本版积分规则

4

主题

28

帖子

0

粉丝