树莓派 | 利用RTC硬件时钟实现系统时间同步,并且设置时间同步操作开机自启动

1、首先使能IIC接口。

下面的方法是在树莓派图形界面中找到"首选项",点击"Raspberry Pi Configuration"。

在"Interfaces"中找到IIC,使其activate。OK之后重启树莓派,即sudo reboot。

2、将RTC插入树莓派后,如下打开配置文件。

sudo nano /boot/firmware/config.txt

(1)在配置文件的最后一行中添加 dtoverlay=i2c-rtc,ds1307

dtoverlay=i2c-rtc,ds1307

注:本人使用的是RTC ds1307,所以填写1307。请根据自己RTC时钟的型号进行修改。

(2)如下图,在文件中间找到 # Enable audio,注释掉dtparam=audio=on,并添加下面四行内容。

3、配置完文件后,重启树莓派。

重启之后输入lsmod命令查看设备信息,发现有了rtc_ds1307。

lsmod

4、打开/etc/modules,添加i2c-bcm2708。

sudo nano /etc/modules

i2c-bcm2708

5、利用show命令,显示当前时间。

sudo hwclock --show

证明此时RTC时钟正常。

6、读取RTC时钟和系统时钟

sudo hwclock -r;date

此时RTC时间是正确的,但是系统时间与RTC时间并不统一,因此将RTC时间更新成系统时间。

7、更新RTC时间到系统

sudo hwclock -s

更新时间之后,再查询一下时间,可以发现RTC时间和系统时间一致。

8、设置开机自启动

(1)配置rc.local文件

sudo nano /etc/rc.local

如下图,在exit 0 之前添加如下一行内容:

sudo hwclock --hctosys

表示将hardware clock 同步到(to)system clock。

(2)设置文件权限

sudo chmod 777 /etc/rc.local

9、最后使用sudo date检查时间,系统时间是正确的时间。

并且用下面的命令将时间调错:

sudo date --set="2024-08-22 07:34:34"

重启后可以发现系统时间自动变成了正确的,证明成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值