Real Time Clock(RTC)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
*[[Real Time Clock(RTC)]] [#g463c150]
**はじめに [#o8c4826e]
>
>Raspberry Pi 3にRTCを接続します。
<
**使用デバイス [#e311fea4]
***概要 [#t748e177]
>
>使用したデバイスはMaximのDS3231です。I2Cインタフェースの...
>特徴をデータシートから引用すると
<
>
>>
-Real-Time Clock Counts Seconds, Minutes, Hours, Date of ...
-Accuracy ±2ppm from 0°C to +40°C
-Accuracy ±3.5ppm from -40°C to +85°C
-Digital Temp Sensor Output: ±3°C Accuracy
-Register for Aging Trim&bull; RST Output/Pushbutton ...
-Two Time-of-Day Alarms
-Programmable Square-Wave Output Signal
-Simple Serial Interface Connects to Most Microcontrollers
-Fast (400kHz) I2C Interface
-Battery-Backup Input for Continuous Timekeeping
-Low Power Operation Extends Battery-Backup Run Time
-3.3V Operation
-Operating Temperature Ranges: Commercial (0°C to +70°C) ...
-Underwriters Laboratories&reg; (UL) Recognized
<<
<
>
>3.3V~5Vで動作する、I2Cインタフェースの高精度なRTCといっ...
<
***リファレンス回路 [#p61c4b70]
>
>データシートからリファレンス回路を引用します。
>&ref(rtc-ds3231.JPG,,DS3231);
<
***購入先 [#r065d2e3]
>
>Amazonでモジュールを購入しました。
>2個 ¥430 です。
<
**ハードウェア構成 [#cde9feb9]
***購入したモジュールの構成 [#x35bc8a9]
>
>実際に購入したモジュールは
>>
-バックアップ電池
-電源用パスコン
-SCK、SDAのプルアップ(4.7KΩ)
<<
>のみ実装されていました。プルアップ抵抗は、今後のモジュー...
<
***実装方法 [#c6fbb882]
>
>秋月電子で購入した「Raspberry Pi Model B プロトタイプ基...
>今後、LCDモジュール等を増設予定で、3.3Vバスの各種モジュ...
>&ref(rtc-universal-pcb.jpg,,RTC-Unversal Board);
<
**ソフトウェア [#pf37f415]
>
>では、実際にCentOSから使用できるようにしましょう。
<
***アドレス [#udad94f6]
>
>まず、どこにRTCがマップされているかを確認します。
>>
[root@akari ~]# /opt/i2cdetect/bin/i2cdetect
0x03 : 0x06 : Unknown device
0x68 : 0xD0 : Unknown device
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
[root@akari ~]#
<<
<
>
>0x68にマップされています。DataSheetの通りですね。
>&ref(ds3231-address.jpg);
<
***ドライバの有効化 [#rb5eaa6d]
>
>I2Cインタフェースのドライバの有効化とDS3231ドライバを有...
<
>
-/boot/config.txt
<
>
>>
#
dtparam=i2c_arm=on
dtparam=i2c1=on
dtoverlay=i2c-rtc,ds3231
<<
<
>
>モジュールがロードされているか確認します。
>>
[root@akari ~]# lsmod
Module Size Used by
dm_mirror 15332 0
dm_region_hash 13392 1 dm_mirror
dm_log 11207 2 dm_mirror,dm_region_hash
dm_mod 115340 2 dm_mirror,dm_log
rtc_ds1307 13844 0
hwmon 10552 1 rtc_ds1307
brcmfmac 289093 0
brcmutil 9863 1 brcmfmac
cfg80211 543000 1 brcmfmac
rfkill 20896 1 cfg80211
i2c_bcm2835 7103 0
bcm2835_gpiomem 3940 0
fixed 3285 0
uio_pdrv_genirq 3923 0
uio 10268 1 uio_pdrv_genirq
i2c_dev 6913 0
i2c_bcm2708 5994 0
ip_tables 13161 0
x_tables 20830 1 ip_tables
ipv6 418247 33
crc_ccitt 1771 1 ipv6
[root@akari ~]#
<<
>rtc_ds1307がロードされています。ds3231じゃないんですね
<
***確認 [#n07ac47a]
>
>リブートしてから確認
>>
[root@akari ~]# hwclock -r
2001年01月01日 00時00分15秒 -0.476564 秒
[root@akari ~]# hwclock --systohc
[root@akari ~]# hwclock -r
2020年06月13日 14時35分23秒 -0.543832 秒
[root@akari ~]# timedatectl
Local time: 土 2020-06-13 14:35:26 JST
Universal time: 土 2020-06-13 05:35:26 UTC
RTC time: 土 2020-06-13 05:35:26
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: no
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
[root@akari ~]#
<<
<
>
>ちなみに、通常NW接続ではNTP同期です。
>>
[root@akari ~]# timedatectl
Local time: 土 2020-06-13 14:38:51 JST
Universal time: 土 2020-06-13 05:38:51 UTC
RTC time: 土 2020-06-13 05:38:51
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
[root@akari ~]# ntpq -p
remote refid st t when poll reach ...
========================================================...
*192.168.0.xxx 219.164.211.137 5 u 28 64 1 ...
[root@akari ~]#
<<
<
>
>>
>>頑固にntpdを使用してます。
<<
<
お疲れ様でした。
終了行:
*[[Real Time Clock(RTC)]] [#g463c150]
**はじめに [#o8c4826e]
>
>Raspberry Pi 3にRTCを接続します。
<
**使用デバイス [#e311fea4]
***概要 [#t748e177]
>
>使用したデバイスはMaximのDS3231です。I2Cインタフェースの...
>特徴をデータシートから引用すると
<
>
>>
-Real-Time Clock Counts Seconds, Minutes, Hours, Date of ...
-Accuracy ±2ppm from 0°C to +40°C
-Accuracy ±3.5ppm from -40°C to +85°C
-Digital Temp Sensor Output: ±3°C Accuracy
-Register for Aging Trim&bull; RST Output/Pushbutton ...
-Two Time-of-Day Alarms
-Programmable Square-Wave Output Signal
-Simple Serial Interface Connects to Most Microcontrollers
-Fast (400kHz) I2C Interface
-Battery-Backup Input for Continuous Timekeeping
-Low Power Operation Extends Battery-Backup Run Time
-3.3V Operation
-Operating Temperature Ranges: Commercial (0°C to +70°C) ...
-Underwriters Laboratories&reg; (UL) Recognized
<<
<
>
>3.3V~5Vで動作する、I2Cインタフェースの高精度なRTCといっ...
<
***リファレンス回路 [#p61c4b70]
>
>データシートからリファレンス回路を引用します。
>&ref(rtc-ds3231.JPG,,DS3231);
<
***購入先 [#r065d2e3]
>
>Amazonでモジュールを購入しました。
>2個 ¥430 です。
<
**ハードウェア構成 [#cde9feb9]
***購入したモジュールの構成 [#x35bc8a9]
>
>実際に購入したモジュールは
>>
-バックアップ電池
-電源用パスコン
-SCK、SDAのプルアップ(4.7KΩ)
<<
>のみ実装されていました。プルアップ抵抗は、今後のモジュー...
<
***実装方法 [#c6fbb882]
>
>秋月電子で購入した「Raspberry Pi Model B プロトタイプ基...
>今後、LCDモジュール等を増設予定で、3.3Vバスの各種モジュ...
>&ref(rtc-universal-pcb.jpg,,RTC-Unversal Board);
<
**ソフトウェア [#pf37f415]
>
>では、実際にCentOSから使用できるようにしましょう。
<
***アドレス [#udad94f6]
>
>まず、どこにRTCがマップされているかを確認します。
>>
[root@akari ~]# /opt/i2cdetect/bin/i2cdetect
0x03 : 0x06 : Unknown device
0x68 : 0xD0 : Unknown device
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
[root@akari ~]#
<<
<
>
>0x68にマップされています。DataSheetの通りですね。
>&ref(ds3231-address.jpg);
<
***ドライバの有効化 [#rb5eaa6d]
>
>I2Cインタフェースのドライバの有効化とDS3231ドライバを有...
<
>
-/boot/config.txt
<
>
>>
#
dtparam=i2c_arm=on
dtparam=i2c1=on
dtoverlay=i2c-rtc,ds3231
<<
<
>
>モジュールがロードされているか確認します。
>>
[root@akari ~]# lsmod
Module Size Used by
dm_mirror 15332 0
dm_region_hash 13392 1 dm_mirror
dm_log 11207 2 dm_mirror,dm_region_hash
dm_mod 115340 2 dm_mirror,dm_log
rtc_ds1307 13844 0
hwmon 10552 1 rtc_ds1307
brcmfmac 289093 0
brcmutil 9863 1 brcmfmac
cfg80211 543000 1 brcmfmac
rfkill 20896 1 cfg80211
i2c_bcm2835 7103 0
bcm2835_gpiomem 3940 0
fixed 3285 0
uio_pdrv_genirq 3923 0
uio 10268 1 uio_pdrv_genirq
i2c_dev 6913 0
i2c_bcm2708 5994 0
ip_tables 13161 0
x_tables 20830 1 ip_tables
ipv6 418247 33
crc_ccitt 1771 1 ipv6
[root@akari ~]#
<<
>rtc_ds1307がロードされています。ds3231じゃないんですね
<
***確認 [#n07ac47a]
>
>リブートしてから確認
>>
[root@akari ~]# hwclock -r
2001年01月01日 00時00分15秒 -0.476564 秒
[root@akari ~]# hwclock --systohc
[root@akari ~]# hwclock -r
2020年06月13日 14時35分23秒 -0.543832 秒
[root@akari ~]# timedatectl
Local time: 土 2020-06-13 14:35:26 JST
Universal time: 土 2020-06-13 05:35:26 UTC
RTC time: 土 2020-06-13 05:35:26
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: no
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
[root@akari ~]#
<<
<
>
>ちなみに、通常NW接続ではNTP同期です。
>>
[root@akari ~]# timedatectl
Local time: 土 2020-06-13 14:38:51 JST
Universal time: 土 2020-06-13 05:38:51 UTC
RTC time: 土 2020-06-13 05:38:51
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
[root@akari ~]# ntpq -p
remote refid st t when poll reach ...
========================================================...
*192.168.0.xxx 219.164.211.137 5 u 28 64 1 ...
[root@akari ~]#
<<
<
>
>>
>>頑固にntpdを使用してます。
<<
<
お疲れ様でした。
ページ名: