打印

我还是**能实现的观点

[复制链接]
7315|45
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yanfeng163|  楼主 | 2007-10-6 18:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
etual| | 2007-10-6 19:06 | 只看该作者

当然不能

当然不能

使用特权

评论回复
板凳
computer00| | 2007-10-6 19:09 | 只看该作者

能。

使用特权

评论回复
地板
yanfeng163|  楼主 | 2007-10-6 19:52 | 只看该作者

到底能不能啊?

准备做一个DDS信号源,DDS部分准备用软件实现,因为对时钟信号稳定度要求比较高,不知道单片机定时器能不能满足要求?比如最后频率稳定度要求百万分之一,用一个稳定度百万分之一的晶振,定时器输出信号的稳定度最差能查到什么程度?因为实验室没有测频的设备,做实验了也看不出来,希望高手赐教

使用特权

评论回复
5
5880527| | 2007-10-6 20:40 | 只看该作者

能,只有晶振的误差,软件无误差

使用特权

评论回复
6
yanfeng163|  楼主 | 2007-10-6 20:48 | 只看该作者

谢谢各位!

如题

使用特权

评论回复
7
5880527| | 2007-10-6 21:16 | 只看该作者

只是分辨率估计达不到LZ的要求

  

使用特权

评论回复
8
谈的元| | 2007-10-7 03:03 | 只看该作者

与指令周期有关

与指令周期有关,要是指令周期不同,频率在理论上有小的飘移

比如你定时的是200US,可能实际为201US,假如指令周期有几种(NOP,JMP)

使用特权

评论回复
9
NE5532| | 2007-10-7 09:45 | 只看该作者

别关中断就是了,不过还是有微小抖动。

使用特权

评论回复
10
yanfeng163|  楼主 | 2007-10-7 10:04 | 只看该作者

如果每次定时中断以后指令都一样

应该不会有抖动了吧?

使用特权

评论回复
11
fsaok| | 2007-10-7 10:28 | 只看该作者

应用睡眠方式

处理器应用睡眠方式,然后等待定时器中断,这样就不会有抖动

使用特权

评论回复
12
5880527| | 2007-10-7 11:14 | 只看该作者

所有中断打开都能保证脉冲无误差的

比那个做电子钟的难度高很多,要对定时器中断的每次响应的不一致进行修正,个人观点是只有汇编才能实现此功能

使用特权

评论回复
13
ayb_ice| | 2007-10-8 08:11 | 只看该作者

软件肯定有抖动,主要是中断的原因。。。

使用特权

评论回复
14
5880527| | 2007-10-8 08:49 | 只看该作者

13楼的大师怎么就这么肯定软件方面一定会因为中断产生抖动

  

使用特权

评论回复
15
xwj| | 2007-10-8 09:02 | 只看该作者

频率可以补偿,但相位肯定有抖动

对于指令周期数全部相等的,误差在一个周期内;
对于指令周期数不相等的,误差在0~最长指令的周期数内

使用特权

评论回复
16
ayb_ice| | 2007-10-8 09:08 | 只看该作者

哪怕只有一个中断,响应中断时间还取决于当前指令

软件还要处理PWM(很难做到每次处理花同样时间),实际应用中还有其它中断(中断嵌套),其它任务等。。。

使用特权

评论回复
17
5880527| | 2007-10-8 09:14 | 只看该作者

我还是**能实现的观点

如果有更高或是同等级别的中断是肯定不能实现,这个就不要讨论了,但如果发脉冲那定时器的中断级别最高,那软件肯定能解决,仔细去看看我发的关于定时器无误差的那个程序,用JMP指令跳过不同的NOP来消耗掉不同的响应时间,这样后面的指令就完全在同一时刻执行了,所以LZ所提的要求一定能达到

使用特权

评论回复
18
xwj| | 2007-10-8 09:19 | 只看该作者

说了:只可以做到无累积误差,不可能做到无相位抖动

 ayb_ice 发表于 2007-10-8 09:08 侃单片机 ←返回版面    

16楼: 哪怕只有一个中断,响应中断时间还取决于当前指令 

使用特权

评论回复
19
农民讲习所| | 2007-10-8 09:20 | 只看该作者

ls.ls想的不对

电子钟就是用查询中断标志方式也可以。因为保证的是长时间的时间误差,不是绝对时间间隔误差。

使用特权

评论回复
20
5880527| | 2007-10-8 09:31 | 只看该作者

相位不一致的问题能解决

15楼所提的相位抖动在我那个程序里面肯定能解决,虽然中断响应不一致,但通过JMP @A+DPTR来吃掉了中断的不一致,中断响应快的跳得近,执行的NOP就多,中断响应慢的A大,跳得就远,执行的NOP就少,这样不管响应快慢但执行不同的NOP后大家都站在同一起跑线上了,所以后面的程序就可以完全在同一时刻执行,保证每一脉冲的间距一致。
   16楼所提的问题和15楼的实质是一样的,虽然有计算脉冲周期等问题,但只要在那个输出(我那程序的CPL P1.0处)后的时间里计算就没关系的

使用特权

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

本版积分规则

25

主题

46

帖子

0

粉丝