樹莓派安裝DS3231 RTC模塊

博主在寢室是使用樹莓派來開熱點的,但是晚上斷電后仍然可以用充電寶進行供電上網(wǎng),這種喪(xi)心(da)病(pu)狂(ben)的優(yōu)勢讓博主失去了心愛的睡眠時間。因此機智的博主想了一個辦法,寫了一個早睡腳本,只要檢測到時間大于11點20就強制關(guān)機,并且把腳本設(shè)置為開機自啟。但是第二天博主就發(fā)現(xiàn)樹莓派因為沒有CMOS時鐘,因此之后多長時間,時間都是大于11點20!也就是說我再也打不開樹莓派了!

為了應(yīng)對這種蛋疼的問題,博主只好花了十幾塊錢從某寶買了個DS3231模塊......

DS3231

DS3231模塊是一款適用于多種單片機的RTC模塊,通過DS3231,你可以為沒有內(nèi)置時鐘模塊的單片機提供精準(zhǔn)授時。

在樹莓派model 3B上,我們可以利用該模塊為樹莓派授時,使樹莓派無需連接網(wǎng)絡(luò)就能夠保證時鐘的同步。

  1. 開啟I2C

在樹莓派命令行下,輸入

$ sudo raspi-config

進入樹莓派配置界面,

raspi-config

選擇5 Interfacing Options進入

interfacing options

選擇I2C

i2c

確認(rèn)即可。完成后保存退出樹莓派配置頁面。

  1. 軟件配置

對源進行更新:

$ sudo apt-get update
$ sudo apt-get upgrade

編輯/etc/modules

$ sudo vim /etc/modules

此處采用vim編輯器,按下 i 鍵后進入編輯模式,加入i2c-bcm2835、i2c-dev、rtc-ds1307, 編輯后類似于:

snd-bcm2835
i2c-bcm2835
i2c-dev
rtc-ds1307

按下esc退出編輯模式,輸入英文冒號+wq退出。

3.硬件連線

DS3231

現(xiàn)在能用到的接口是SCL、SDA、VCC、和GND,

gpio接口

按照上圖,注意我們使用“Physical”這欄接口編號。
接線如下:
VCC接1,即3.3v,電源正極
SDA接3,即SDA.1
SCL接5,即SCL.1
GND接9,即0v,也就是電源負極

4.命令行連接
輸入以下命令檢測樹莓派i2c總線的情況:

sudo i2cdetect -y 1

不出意外的話,會出現(xiàn)以下圖片所示,不過其中的UU是68。(本人已配置成功,因此顯示UU)

sudo i2cdetect -y 1

編輯啟動文件:

$ sudo vim /etc/rc.local

按i鍵編輯,在exit 0前面添加:

echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
hwclock -s

最后文件類似于:

rc.local

按下esc鍵,輸入英文冒號,再輸入wq,回車即可保存。

配置完成后重啟設(shè)備:

$ sudo reboot

重啟后輸入之前的命令:

sudo i2cdetect -y 1

這次會出現(xiàn)類似如下圖片所示:

sudo i2cdetect -y 1

這下68已經(jīng)變成UU,說明安裝成功。

5.最后的收尾
剛才我們在rc.local文件中加了一句

hwclock -s

這句話的意思是將設(shè)備時間同步為系統(tǒng)時間。因此如果rtc模塊沒有使用過的話,輸入

$ date

查看時間,你會發(fā)現(xiàn)時間嚴(yán)重與現(xiàn)在時間不符合。

如果你現(xiàn)在連接到互聯(lián)網(wǎng)的話,稍等一會,樹莓派會自動與授時服務(wù)器進行同步時間。但是如果沒有連接到網(wǎng)絡(luò)的話可以輸入以下命令設(shè)置時間:

$ date -s "2017-05-20 12:03:00"

其中的時間按需修改。

時間設(shè)置完畢或者互聯(lián)網(wǎng)授時完畢后,輸入

$ sudo hwclock -w

來將系統(tǒng)時間寫入rtc模塊。

你也可以輸入

$ sudo hwclock -r

來查看是否寫入成功。


總而言之,之后操作的命令主要也就三個了:

  1. 將系統(tǒng)時間寫入RTC:
$ sudo hwclock -w
  1. 從RTC讀取時間,但也僅僅是“讀取”,并非寫入系統(tǒng)時間:
$ sudo hwclock -r
  1. 將系統(tǒng)時間設(shè)置為RTC模塊的時間:
$ sudo hwclock -s
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容