257

帖子

0

TA的资源

一粒金砂(高级)

21
 

回复 楼主 leang521 的帖子

想了下,也有碰到这样问题,可解决的方法就是上面说的 ,LZ还有什么方法呢!说出来呀!
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

22
 

回复 20楼 xu__changhua 的帖子

拉出去,打50大板
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

23
 

回复 21楼 viphotman 的帖子

我们是提问活动,如果我直接说出了答案还有什么意思呢
 
 
 

回复

2771

帖子

0

TA的资源

裸片初长成(中级)

24
 
通精度的电阻,5%

用紧密电阻:1%的
 
 
 

回复

2771

帖子

0

TA的资源

裸片初长成(中级)

25
 
“软件延时,系统每次轮训时间都不一样”

可以取个小的时间片,比如1个要DELAY10MS,
另一个要DELAY35MS,

可以做一个定时DELAY5MS的时间,
再用2个计数器A和B
A记到2开始动作.
B记到7开始动作.

有点没看懂题目的要求,也不知道我理解的对不对?
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

26
 

原帖由 jxb01033016 于 2011-5-6 11:52 发表 通精度的电阻,5% 用紧密电阻:1%的

呃,我好想说过了。为了成本。只能用5%的电阻。

我问的所有东西都是软件解决,说白了就是软件替代硬件。

 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

27
 

原帖由 jxb01033016 于 2011-5-6 12:06 发表 “软件延时,系统每次轮训时间都不一样” 可以取个小的时间片,比如1个要DELAY10MS, 另一个要DELAY35MS, 可以做一个定时DELAY5MS的时间, 再用2个计数器A和B A记到2开始动作. B记到7开始动作. 有点没看 ...

不是的,我问的不是这个,是如何精确软件定时。我再说一遍吧;

我们做一个设备,这个设备里面有个功能就是设定加热时间,精确到秒,最长工作时间10天,要保证在十天内计时器误差不超过10秒

 
 
 

回复

1634

帖子

0

TA的资源

裸片初长成(高级)

28
 
原帖由 leang521 于 2011-5-6 12:56 发表 不是的,我问的不是这个,是如何精确软件定时。我再说一遍吧;我们做一个设备,这个设备里面有个功能就是设定加热时间,精确到秒,最长工作时间10天,要保证在十天内计时器误差不超过10秒
怎么和一楼的要求又不同了呢?对你提的问题,只能沉默。
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

29
 
一样的,一楼说的每天误差1S,十天不就是10S了。当然只是让大家尽量,这个是个很复杂很细节的东西,需要注意很多细节。如果你真正做过类似的项目才会明白。
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

30
 
给大家一个礼拜时间吧,下个礼拜五我公布答案
 
 
 

回复

167

帖子

0

TA的资源

纯净的硅(高级)

31
 

原帖由 leang521 于 2011-5-6 12:56 发表 不是的,我问的不是这个,是如何精确软件定时。我再说一遍吧;我们做一个设备,这个设备里面有个功能就是设定加热时间,精确到秒,最长工作时间10天,要保证在十天内计时器误差不超过10秒

 

呵呵,这个精度,差点的晶振都保证不了。

 

不知道陶瓷谐振器的频率稳定性如何,如果稳定度较高的话我会选择定时校准,然后写入误差进行软件补偿。

 

至于你说的中断的问题,我还不太清楚你说的是什么,防止冲突,是不是可以设置优先级,将这个中断的优先级设置为最高。

赞赏

1

查看全部赞赏

 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

32
 
恩,校准也是其中一部分,但怎么校是个学问,再好好想想
 
 
 

回复

5979

帖子

8

TA的资源

版主

33
 
当属原子钟
个人签名生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

34
 

原帖由 chenzhufly 于 2011-5-11 23:33 发表 当属原子钟

这个,,,价格。。。

 
 
 

回复

140

帖子

0

TA的资源

一粒金砂(高级)

35
 
楼主现在该给答案了吧 想到一个比较笨的校准方法:用一个精确的时钟和它比较,过一段时间(比如1天)看相差多少秒,再修正定时器初值,做到每隔一天就对定时器初值修正一次。
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

36
 
前两天有点事,今天公布吧

其实很简单,吧前面很多观点综合起来就是了

首先要大量使用状态机,保证每个任务占用时间最短,如果使用操作系统,状态机可以保证冲突可能性最小,如果裸奔,则状态机避免了轮训时间过长。

其次要处理各个任务之间的关系,有些任务需关中断,就尽量往前放,如果是在操作系统中,就要保证使用这类任务只能由操作系统调用,由任务自己休眠,任务自身也要保证在规定时间内休眠。

然后就要尽量避免使用中断,这里说的是尽量避免使用突发性中断,最好是不使用中断。

可能大家要问了,不使用中断如何保证定时呢,其实这就是第四点,尽量使用查询,避免使用定时器中断和自动重装载。在裸奔的情况下,要在大循环中最后一个任务中放置一个空循环,用于查询定时器,而且系统不能使用WHILE一类的循环,要由最后一个任务定时循环,也就是保证每次循环用的时间都为固定长度。如果有操作系统当然就好很多,因为如果你做到前面几点一般操作系统都能及时响应定时器中断。

最后一点就非常,非常的关键,及矫正,前面说过,各类器件都有误差,这是不可避免的,晶振也有,那么在器件出场前就必须要做矫正,当然有人可能认为很麻烦,其实很简单,如果你搞过可变波特率就明白了,这点有些(不做广告)单片机里也有这样的做法,对单片机烧写时反馈的数据就有晶振振荡频率,精确到个位,比如这样

Chinese:正在尝试与 MCU/单片机 握手连接 ...
MCU Type is: ——————
MCU Firmware Version: ————
Chinese:MCU 固件版本号: ————
下次冷启动后使用外部晶体或时钟
RESET pin 仍为 RESET
上电复位增加额外的复位延时
振荡器放大增益:                   High gain
下次下载用户应用程序时将数据Flash区擦除: NO
P4.6/RESET2 用作 P4.6
启动内部看门狗后禁止改看门狗分频数       NO
下次上电自动用有关参数启动内部看门狗     NO
Idle(空闲)状态时内部看门狗停止计数      YES
冷启动后内部看门狗预分频数(未启动):     256
MCU Clock:8.016818MHz./时钟频率:8.016818M.

这个时间很快,你校准然后把数据写入芯片前后不到1S,同时你也可以对设备上的其它元件校准,比如电阻。
当然光这样也是不行的,因为晶振都有温飘,你也要把晶振的温飘作为参数表写在代码中,经常矫正。

如上,你的设备精度就能有足够的保障。我之前说的DS18B20也是这样矫正的,不过那个东西矫正比较繁琐,就不详细解释了。如果感兴趣可以去查查相关文献。
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(中级)

37
 

没有怎么看明白

 

 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

38
 
很正常,我给我同事讲了一天他才明白,不过做过很多项目的人应该看一眼就明白的
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表