过早客
  • 首页
  • 节点
  • 成员
  • 广告投放
  • 登录
  • 注册

定时器的实现原理

IT技术 • ForTheMe • 发表于 6 年前 • 最后回复来自 ForTheMe • 6 年前

本人近期有接触过 vxworks实时系统、ni实时系统和rtx实时系统,但感觉各个定时器都有差别,即使两个都是rtx定时器也会有细微差别,请问下这个定时器实现是基于什么的?和系统的cpu主频有关系吗? (本人不怎么懂硬件这一块)

加入收藏 新浪微博 分享到微信 ❤赞 1949 次点击 0 人赞 0 人收藏

打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

共收到8条回复
linuxwww 6 年前 #1 赞 0

分频出来的

ForTheMe 楼主 6 年前 #2 赞 0

@linuxwww 网上搜了一下“分频”的概念:受外部周期信号激励的震荡,其频率恰为激励信号频率的纯分数,都叫做分频。是这个意思吗?
也就是有个外部的周期信号激励?那么这个周期信号是哪个产生的呢? cpu吗?

woyouzui 6 年前 #3 赞 0

不说软的定时器,硬件的定时器都是计数器,驱动时钟一般是cpu主频分频的低频时钟驱动,向上或者向下的计数,符合条件就触发中断或者事件。所谓的区别,无非是寄存器和计数器的运行差别吧。

ForTheMe 楼主 6 年前 #4 赞 0

@woyouzui 现在这边两个系统(简称A系统、B系统,A和B之间有一个公共区域)之间都是实时系统(定时器分辨率ns级别的),A定时1ms往公共区域写一次数据并自加一,B定时1ms从公共区域读一次数据,时间长了,B会读到两个连续一样的数据,个人感觉是两个定时器一长一短,我不知道这个是不是和这些系统的主频有关。

woyouzui 6 年前 #5 赞 0

很正常啊,时钟不是同频的,有累积误差,当误差大于一个周期的时候,就会错一个周期。

ForTheMe 楼主 6 年前 #6 赞 0

@woyouzui 嗯 就是说最好用主频相同的cpu才能避免这个时间累积误差问题吧

woyouzui 6 年前 #7 赞 0

和主频相同没关系,世界上不存在完全一样的两个晶振,你这个属于异步的通信,但是使用的同步的方式。

ForTheMe 楼主 6 年前 #8 赞 0

@woyouzui 嗯是的,两个系统是独立的,A系统会1ms内解算出数据,并定时发送数据,B系统也是1ms在解算,工作,AB是两个不同厂家,不同的开发环境,还没想到好法子解决。

请绑定手机号后,再发言,点击此处
Guozaoke.com—源自武汉的高端交流分享社区
相关主题
想买个平板,日常工作和娱乐使用,预算3000,有啥推荐码
【已送】中了个盒马椰子 送给有缘人(地址附近需要有盒马门店)
华为新出的电脑2W7,这电脑买着当挂件吗?
开发了一个管理 Linux 服务器的桌面可视化管理工具,求蹂躏
618打算攒一套mac mini,有没有入手过的童鞋,说说体验
阿里巴巴华中总部今天正式入驻阿里中心·武汉
服务器可视化采用纯前端渲染,这个技术实现难度如何
想配一个台式机,求推荐
最近时间少了, 隔了这么久, 才做了一个网站
做了一款摸鱼软件,有人要试用吗?

过早客微信公众号:guozaoke • 过早客新浪微博:@过早客 • 广告投放合作微信:fullygroup50 鄂ICP备2021016276号-2 • 鄂公网安备42018502001446号