ATmega2560外部中断旋转编码器弹跳

时间:2016-09-10 20:25:49

标签: c avr uart atmega encoder

我试图从3个旋转编码器(KY-040)获取读数并通过UART发送值。

我正在使用Arduino-Mega 2560主板,但由于要求原因,我正在用C编程。

但是当我试图从编码器获取读数时,我会得到随机数。

它只适用于每个偶数个旋转,并且程序在奇数旋转时卡住。 (看起来有点奇怪)

任何人都可以建议我的代码有什么问题。

P.S。我是新工作的微控制器。

automatic_scaling:
min_idle_instances: 3
max_idle_instances: automatic 
max_pending_latency: 30ms
max_concurrent_requests: 20

1 个答案:

答案 0 :(得分:1)

MCUCR不用于您使用它的目的。实际上,它的大多数位都是只读的。

也许您打算使用EICRA和EICRB。这些寄存器用于设置上升沿和下降沿。