首页 文章

配对的Atmega168以稍微不同的时钟速度运行

提问于
浏览
0

我有四个来自Seeedstudio的RFBEE .

我已经能够用相同的代码重新编程它们 . 但其中一个似乎以稍微不同的速度运行 .

在 Build 串行连接以改变波特率时,我首先注意到了这一点 . 无论我使用9600,19200还是38400,其中一个设备的每个响应的结束都被扰乱了,所以不是“1 ok”而是“1 o€”或者什么 .

每个设备都有一个心跳LED,我注意到故障的设备以不同的速度运行,它似乎每十分钟丢失大约1秒钟 .

有没有人有任何想法是什么问题?除了3v3 GND Tx和RX引脚之外,我已经断开了RFBEES的所有连接 . 我正在使用Arduino Mega与他们交流 .

是否有可能为其中一个设备设置不同的保险丝?

在循环()中调用Serial.println(F_CPU)的结果是:

对于功能正常的设备

8000000
8000000
8000000
8000000
8000000

对于发生故障的人

80000Cá800Cá8000j
80000
á800
á800Cá80j
800Cá80j
800j
800
á80000Cá800
á8000j
80000
á80j
8000Cá80000
á8000j

1 回答

  • 0

    首先要检查的是Arduino故障是使用内部RC振荡器还是外部晶振 . 内部RC比晶体慢,精度也差,并且肯定会导致您看到的各种定时误差 .

    您可以检查芯片的reading the fuse bits正在使用哪个振荡器 .

    如果使用外部晶振,则故障设备可能存在硬件问题 .

相关问题