ATmega128微处理器,测量定时器滴答距离时的错误问题?

时间:2014-10-25 00:06:52

标签: atmega

好的,所以地球上的激光撞击月球上的镜子并反弹回来。在ATmega128微处理器上,我们使用TIMER1捕获激光器射出时的时钟滴答,并在返回时捕获时钟滴答,减去并获得距离"在时钟滴答声。 (ATmega128上的16MHz时钟)。

因此,我们应该确定这个测量距离与实际距离的差异以及导致它的原因。以及在TIMER1的每个合法预分频器中计算最大误差。

在ATmega128数据表中查看TIMER1的寄存器和输入捕获信息,我在输入捕获中找不到任何类型的百分比错误。就像,这似乎是一个概念性的问题,但我们应该从空中汲取价值并计算一些东西?

我的问题是,如果有人知道ATmega128的任何内容,在确定读取距离与定时器滴答错误时会引用什么值?我唯一的猜测是当你使用越来越高的预分频器时会出现错误,因为当预分频器变大时你会失去精确度。但这又是一个概念性答案,并不了解我将如何计算任何东西。

1 个答案:

答案 0 :(得分:0)

可以假设计数器/预分子是完美的,不会导致任何分辨率损失。

您的原始时钟源将成为主要的错误来源。如果您使用带有晶体的外部时钟,这些通常可以达到50 ppm(百万分之一)或更高。如果使用内部时钟,则误差要高得多(对于某些微控制器,1%并非不合理)。

如果你还记得你的广义相对论(你有物理学博士学位吗?),整件事情会变得棘手。地球的旋转和重力随着光速和距离而发挥作用......