Arduino Oscillators: Configurations & Settings

게시자

Oscillators, as we've discussed, are devices that move in a repeating pattern, such as a clock's pendulum or even a tuning fork. Modern devices like computers require much faster oscillators to set their clock speeds, generally in the millions or even billions or hertz (MHz and GHz). And computers include microcontroller dev boards such as those made by Arduino.

Arduino Clock Speeds

Based on their setup, you can find dev boards with various speed settings. Here are a few examples:

- Arduino Uno: 16 MHz

- 'Classic' Arduino Nano: 16 MHz (with differing speeds for the new generation)

- MKR Wi-Fi 1010: 48 MHz

- Mega 2560: 16 MHz

- Due: 84 MHz

For most simple applicationslike flipping a "switch" based on a sensor inputany of these speeds will suffice. In some cases, you may actually prefer a lower clock speed to save power.

Arduino Uno Crystal Oscillator Configurations

Arduino boards use a variety of oscillator configurations. The Uno board features a very pronounced crystal oscillator next to the USB-B port. As shown in the image above, the "T16.000" marking indicates that the device oscillates at 16 MHz. Interestingly, this oscillator regulates the device's ATmega16 microcontroller—which performs USB-to-serial conversion when interfacing with a computer—not the ATmega328P microcontroller. The latter microcontroller handles the logic when you're using your board.

ATmega328P Oscillator Example

A ceramic resonator generates the ATmega328P's clock signal, though this oscillator features less precision than its crystal-based cousin. This tiny component resides directly under the letters "ITAL" in the Uno image above, and resonates at 16 MHz with a rated accuracy of ±.5%.

In our experience, these specs are sufficient for normal use, especially if your device or application won't suffer from a delay of one second every two minutes. However, the ATmega328P may not be ideal for precision timing applications or if you need to operate in longer periods.

Let's break this down further: a day has 86,400 seconds in it, so a .5 percent deviation would be 432 seconds, or 7.2 minutes. The crystal oscillator onboard has a roughly .003 percent deviation, which would be about 2.6 seconds per day (though you can't use this signal for program timing). If you need more accuracy than that, you'll need to explore a different solution.

Arduino with Built-in RTC Module

The ATmega328P's resonator does not boast precision accuracy, but this won't affect most normal situations. To its credit, the ATmega328P's design saves money in production because the load capacitors that keep it vibrating are built into the device. If your application requires timing accuracy over weeks or months, you'll want to implement a secondary timing device called a real-time clock module (RTC). Some boards come with this functionality built-in―like the MKR Wi-Fi 1010 we mentioned earlier―so consider your requirements before you choose a board.

If you've got your mind set on a board that doesn't include an RTC, adding one is relatively inexpensive. Adding an RTC also lets you choose a module that suits your needs without paying for functionality that isn't necessary. These boards come with a battery backup in case you lose power temporarily. You can also use a GPS module to keep track of time or use a network setup if you're connected to Wi-Fi.

 

Shop Popular Arduino Boards here

최신 뉴스

Sorry, your filter selection returned no results.

개인정보 보호정책이 업데이트되었습니다. 잠시 시간을 내어 변경사항을 검토하시기 바랍니다. 동의를 클릭하면 Arrow Electronics 개인정보 보호정책 및 이용 조건에 동의하는 것입니다.

당사의 웹사이트에서는 사용자의 경험 향상과 사이트 개선을 위해 사용자의 기기에 쿠키를 저장합니다. 당사에서 사용하는 쿠키 및 쿠키 비활성화 방법에 대해 자세히 알아보십시오. 쿠키와 추적 기술은 마케팅 목적으로 사용될 수 있습니다. '동의'를 클릭하면 기기에 쿠키를 배치하고 추적 기술을 사용하는 데 동의하는 것입니다. 쿠키 및 추적 기술을 해제하는 방법에 대한 자세한 내용과 지침을 알아보려면 아래의 '자세히 알아보기'를 클릭하십시오. 쿠키 및 추적 기술 수락은 사용자의 자발적 선택이지만, 웹사이트가 제대로 작동하지 않을 수 있으며 사용자와 관련이 적은 광고가 표시될 수 있습니다. Arrow는 사용자의 개인정보를 존중합니다. 여기에서 당사의 개인정보 보호정책을 읽을 수 있습니다.