打印

定时器从USB口接收数据

[复制链接]
558|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chuxh|  楼主 | 2019-10-13 18:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用定时器从USB口接收数据,接收到的数据在RichEdit中显示,定时器200ms启动一次,问题是:在开始接收数据时很好,速度也快,可是当RichEdit写满显示不开时,接收数据速度明显变慢

使用特权

评论回复
沙发
juventus9554| | 2019-10-13 18:17 | 只看该作者
然后呢?你是怎么应对这个的呢

使用特权

评论回复
板凳
chuxh|  楼主 | 2019-10-13 18:20 | 只看该作者
当清掉RichEdit的内容后速度又变快了

使用特权

评论回复
地板
juventus9554| | 2019-10-13 18:24 | 只看该作者

你显示的方法是什么?

使用特权

评论回复
5
chuxh|  楼主 | 2019-10-13 18:27 | 只看该作者
MainForm-> RichEdit1-> Text   =   MainForm-> RichEdit1-> Text   +   temp;

使用特权

评论回复
6
chuxh|  楼主 | 2019-10-13 18:30 | 只看该作者
temp   中是接收到的数据,我觉得用Text   =   Text   +   temp不太好

使用特权

评论回复
7
dingy| | 2019-10-13 18:37 | 只看该作者
MainForm-> RichEdit1-> Lines-> Add(temp);

使用特权

评论回复
8
chuxh|  楼主 | 2019-10-13 18:37 | 只看该作者
不知有什么好的方法

使用特权

评论回复
9
renyaq| | 2019-10-13 18:40 | 只看该作者

那你还要什么办法?MainForm-> RichEdit1-> Text这个是在内存当中,你的数据越多,占用内存越多,速度也就越慢

使用特权

评论回复
10
xxrs| | 2019-10-13 19:18 | 只看该作者
你只能减少显示的数据,才能加快显示速度。

使用特权

评论回复
11
chuxh|  楼主 | 2019-10-13 19:21 | 只看该作者
我也想到了这个问题,除了显示次数有没有其他方法

使用特权

评论回复
12
chuxh|  楼主 | 2019-10-13 19:24 | 只看该作者
我看到Cypress   的控制面板也用的是RichEdit没有出现我这样的问题哦

使用特权

评论回复
13
yinxiangh| | 2019-10-13 19:26 | 只看该作者

Cypress   也可能是利用线程来解决的。

使用特权

评论回复
14
chuxh|  楼主 | 2019-10-13 19:29 | 只看该作者

哦,谢谢各位的帮忙,我试了,用
MainForm-> RichEdit1-> Lines-> Add(temp);
就好多了。

使用特权

评论回复
15
morrisk| | 2019-10-13 19:32 | 只看该作者
RichEdit是做什么用的。

使用特权

评论回复
16
xxmmi| | 2019-10-13 19:39 | 只看该作者
在写eagleComm串口调试软件时也遇到这个问题。后来不记得咋解决的了。

使用特权

评论回复
17
zwll| | 2019-10-13 19:42 | 只看该作者
我感觉是缓冲区小的原因吧。

使用特权

评论回复
18
xxmmi| | 2019-10-13 19:45 | 只看该作者
把显示去掉,数据缓冲本地

使用特权

评论回复
19
stly| | 2019-10-13 19:48 | 只看该作者
或者是读USB的时间间隔长,如果改短一下会不会好些。

使用特权

评论回复
20
dingy| | 2019-10-13 19:55 | 只看该作者
VC的方法很多,真不知道哪个方法更好用啊,还有其他的显示方法吗?

使用特权

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

本版积分规则

936

主题

11296

帖子

2

粉丝