📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
| 190行目: | 190行目: | ||
|} | |} | ||
<br> | <br> | ||
<u>Timerを使用する関数やサードパーティ製ライブラリを使用する場合は、以下に示す事柄に注意する必要がある。</u><br> | |||
* delay関数、millis関数、micros関数等を使用する場合、Timer0およびDピン、D6ピンをPWMに使用するとデューティ比が高めになる。 | |||
* ServoライブラリはTimer1を使用するため、D9ピンおよびD10ピンでPWMが使用できない。 | |||
* ToneライブラリはTimer2を使用するため、D3ピンおよびD11ピンでPWMが使用できない。 | |||
* SPIを使用する場合は、D11ピンでPWMが使用できない。 | |||
<br><br> | |||
== RTC == | |||
リアルタイムクロック (RTC) は、時刻を計測するために使用される。<br> | |||
これは、時刻追跡アプリケーション等に使用することが多い。<br> | |||
<br> | |||
Arduino UNO R4 WiFiにはVRTCピンがあり、電源が遮断されてもオンボードRTCを動作させ続けることができる。<br> | |||
これを使用するには、VRTCピンに1.6~3.6[V]の範囲の電圧を印加する必要がある。<br> | |||
<br> | |||
以下の例では、RTCから日付と時刻を取得している。<br> | |||
<syntaxhighlight lang="c++"> | |||
#include "RTC.h" | |||
void setup() | |||
{ | |||
Serial.begin(9600); | |||
RTC.begin(); | |||
RTCTime mytime(30, Month::JUNE, 2023, 13, 37, 00, DayOfWeek::WEDNESDAY, SaveLight::SAVING_TIME_ACTIVE); | |||
RTC.setTime(mytime); | |||
} | |||
void loop() | |||
{ | |||
RTCTime currenttime; | |||
// RTCを使用して現在時刻を取得 | |||
RTC.getTime(currenttime); | |||
// DD/MM//YYYY形式で出力する場合 | |||
Serial.print(currenttime.getDayOfMonth()); | |||
Serial.print("/"); | |||
Serial.print(Month2int(currenttime.getMonth())); | |||
Serial.print("/"); | |||
Serial.print(currenttime.getYear()); | |||
Serial.print(" - "); | |||
// HH/MM/SS形式で出力する場合 | |||
Serial.print(currenttime.getHour()); | |||
Serial.print(":"); | |||
Serial.print(currenttime.getMinutes()); | |||
Serial.print(":"); | |||
Serial.println(currenttime.getSeconds()); | |||
delay(1000); | |||
} | |||
</syntaxhighlight> | |||
<br> | |||
Arduinio UNO R4 WiFiのRTC機能の詳細を知りたい場合は、[https://docs.arduino.cc/tutorials/uno-r4-wifi/rtc 公式ドキュメント]を参照すること。<br> | |||
<br><br> | <br><br> | ||