It turns out that my crystal is 0.011% faster than 16 MHz, while my ceramic resonator is 0.077% slower than 16 MHz. Let's just hope that my Arduinos are somewhere in the typical range.Įach component has its own small frequency mismatch. It is possible, for example, that my crystal is much more accurate than most crystals.Ī proper experiment would measure multiple boards from different batches, but I don't have time for such games. This is a serious limitation which makes it hard to draw general conclusions. Note that I measured only one crystal and only one ceramic resonator. This has been solved by removing measurements with less than 4 satellites from the dataset before analysis. The GPS receiver needs at least 4 satellites to make an accurate time calculation, otherwise its PPS signal slowly drifts away from the exact time. There are periods where fewer than 4 satellites are visible. Unfortunately, GPS reception through my window is not very good. In addition, the internal temperature sensor of the ATmega is read once per second. The input capture feature of the ATmega328 is used to read the value of 16 MHz counters on both Arduinos exactly once per second. The GPS shield is installed on the Duemilanove, with the PPS (pulse per second) output of the GPS receiver connected to input pins on both Arduinos. Arduino Pro Mini 5V with ATmega328 and 16 MHz ceramic resonator.Arduino Duemilanove with ATmega328 and 16 MHz crystal resonator.The short story is that the crystal is indeed much more accurate than the ceramic resonator, although the accuracy of the ceramic resonator is sufficient for most applications including serial communication. I measured the frequency of an Arduino Duemilanove with crystal resonator and the frequency of an Arduino Pro Mini with ceramic resonator. Perhaps a measurement will shine some light on the situation. ![]() Some people even warn that ceramic resonators cause problems with high-speed serial communication, but others dispute that. There seems to be general agreement that ceramic resonators are not as good as crystals. Most Arduinos use a quartz crystal to generate the clock signal, but some models have a ceramic resonator instead. Every Arduino has an on-board clock source, typically running at 8 MHz or 16 MHz.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |