社区
VCL组件使用和开发
帖子详情
C++ Builder 中的定时器问题
dddsmile
2008-08-05 03:27:22
在C++builder中用Timer控件定时,1s向仪表送一个命令要求返回当前仪表显示值,
但是观察读取来的数据,不能保证刚好每一秒一个数据,有时同一秒有两条数据,
有时又空掉一秒。
在一台电脑只运行着一个程序时不是太明显,当同时另一个买来的实时数据采集绘图程序时,
这个缺陷就变得很明显。
这是否和Timer的优先级比较低,有关系呢。
有没有别的实现定时器的方法?
谢谢了!
...全文
332
11
打赏
收藏
C++ Builder 中的定时器问题
在C++builder中用Timer控件定时,1s向仪表送一个命令要求返回当前仪表显示值, 但是观察读取来的数据,不能保证刚好每一秒一个数据,有时同一秒有两条数据, 有时又空掉一秒。 在一台电脑只运行着一个程序时不是太明显,当同时另一个买来的实时数据采集绘图程序时, 这个缺陷就变得很明显。 这是否和Timer的优先级比较低,有关系呢。 有没有别的实现定时器的方法? 谢谢了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Allen841125
2008-08-27
打赏
举报
回复
再想一想!不大好办!
dddsmile
2008-08-06
打赏
举报
回复
那位好心人,有数据采集线程的程序,发给我一份,谢谢了。
djlsmile@hotmail.com
dddsmile
2008-08-06
打赏
举报
回复
我也想用线程的,主要是本人太菜,还不知道如何写线程,一直觉得线程太复杂,
hemiya
2008-08-06
打赏
举报
回复
sleep只是sleep相关的线程,别的不管。
lz要是采集数据还不如整个线程,专门用于采集数据。
[Quote=引用 6 楼 dddsmile 的回复:]
谢谢大家了,准备试试多媒体定时器
顺便在问一个问题,好像有点不道德啊。
这个程序用于控制几个仪表及数据采集,
有一个电子天平,向它发送命令之后,很长时间才能稳定,因此需要延时。
我现在用的是Sleep(),
刚才在网上看Sleep()用于长时间延时(15s/10s/5s)的时候,会像死机一样,无法响应其他消息,
但是从我的程序的运行结果来看,在一个子程序延时等待的时候,定时器仍然能够间隔一秒采集数据,
不知是我理…
[/Quote]
我来看看CB
2008-08-06
打赏
举报
回复
这个很难。。。。。。。。。。
dddsmile
2008-08-06
打赏
举报
回复
谢谢大家了,准备试试多媒体定时器
顺便在问一个问题,好像有点不道德啊。
这个程序用于控制几个仪表及数据采集,
有一个电子天平,向它发送命令之后,很长时间才能稳定,因此需要延时。
我现在用的是Sleep(),
刚才在网上看Sleep()用于长时间延时(15s/10s/5s)的时候,会像死机一样,无法响应其他消息,
但是从我的程序的运行结果来看,在一个子程序延时等待的时候,定时器仍然能够间隔一秒采集数据,
不知是我理解错了,还是怎么的?
我有没有必要将Sleep()换成其他的延时方法呢?
yuanreid
2008-08-05
打赏
举报
回复
需要使用多媒体定时器,普通定时消息是低优先级的,无法保证准确。
leeicescri
2008-08-05
打赏
举报
回复
Timer优先级很低的,比如你按住最大化、最小化按钮不放,你会发现根本就没有Timer事件响应了。
用什么定时器得看你自己的精度要求了。
看看这篇文章吧:
http://2363155.blog2.cnool.net/Article/2008/03/27/244760.html
sunyuchuan86
2008-08-05
打赏
举报
回复
建议用线程完成,这样也许更精确点。
Stanny
2008-08-05
打赏
举报
回复
间隔设置小一些,不要刚好1s,可以1s里面刷2-3次试试看
unsignedme
2008-08-05
打赏
举报
回复
使用多媒体字时器
MMSytem API timeSetEvent/timeKillEvent
C++
builder
定时器
程序开发实验步骤[归纳].pdf
C++
Builder
定时器
程序开发实验步骤是软件开发领域
中
的一种实验项目,旨在让学生掌握
定时器
控件、工具条、单选按钮控件、多选按钮控件和菜单控件的使用方法。实验分为两个部分,第一个部分是利用
定时器
进行倒计时...
利用
C++
Builder
进行精确计时.txt
在Windows环境下,
C++
Builder
利用Win32 API
中
的多媒体
定时器
来实现精确计时。这些多媒体
定时器
可以设置为不同分辨率的时间间隔,并且能够在指定的时间间隔后触发回调函数执行特定任务。这样就能够实现对程序运行...
俄罗斯方块 游戏制作
C++
Builder
在本文
中
,我们将深入探讨如何使用
C++
Builder
来制作经典的“俄罗斯方块”游戏。
C++
Builder
是一款强大的集成开发环境(IDE),它提供了
C++
语言的编译器和丰富的组件库,非常适合创建桌面应用程序,包括游戏。 首先,...
OpenGL的glut库(
C++
Builder
6.0使用)
总的来说,GLUT为
C++
Builder
6.0的OpenGL开发提供了极大的便利,通过本文介绍的步骤和方法,你可以轻松地在
C++
Builder
环境
中
创建功能丰富的3D图形应用。记得在实际开发
中
,根据自己的需求选择合适的GLUT函数,并...
C++
Builder
不规则图像透明贴图(位图的透明显示)三种方法及简单动画CB10.2 v1.5(资源嵌入)项目源代码
4. **简单动画**:在
C++
Builder
中
实现动画通常涉及到
定时器
组件和绘图操作的结合。通过
定时器
定期更新图像的位置、大小或旋转角度,可以创造出动态效果。此外,
C++
Builder
的FireMonkey框架还提供了更丰富的动画...
VCL组件使用和开发
604
社区成员
13,456
社区内容
发帖
与我相关
我的任务
VCL组件使用和开发
C++ Builder VCL组件使用和开发
复制链接
扫一扫
分享
社区描述
C++ Builder VCL组件使用和开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章