树莓派4b设置RTC时钟模块DS3231

1 检查环境

由于在工程实现中,我发现树莓派的ip设置有问题,居然连不上外网。以及网络下载缓慢的问题,针对这两点,参考博客如下:
IP设置检查https://blog.csdn.net/taw19960426/article/details/106721491

树莓派更换下载源https://www.cnblogs.com/cheney-970918/p/13781381.html
在更换国内源的时候注意自己所使用的树莓派是不是buster版本的,这里只针对buster版本。

做完准备工作后输入一下命令,更新系统

sudo apt-get update

sudo apt-get upgrade

2 使能I2C

2.1 安装模块

把模块插到树莓派3B的GPIO1,3,,5,7,9脚;RTC模块插座已经对应好的,别插反了, 电池朝着CPU就对了。
在这里插入图片描述

2.2 开启I2C

sudo raspi-config  ->  Select “Advanced Options”  -> Select “I2C” -> Select “Yes” ->Select “Ok” ->Select “Finish”

2.3 安装实用程序

sudo apt-get install i2c-tools

执行命令查看i2c设备
sudo i2cdetect -y -a 1

显示的地址就是我们需要使用的,树莓派一般是68

3 升级hwclock

hwclock是一种访问硬件时钟的工具,可以显示当前时间,将硬件时钟设置为指定的时间,将硬件时钟设置为系统时间,以及从硬件时钟设置系统时间。您还可以定期运行hwlock以插入或删除硬件时钟中的时间,以补偿系统漂移(如果继续运行,则该时钟始终以一定的速率获得或丢失时间)。
升级的原因在于树莓派内核升级后,会导致hwclock 查询 /dev/rtc 出错,所以也要升级一下hwclock。
参考链接为http://blog.chinaunix.net/uid-20775448-id-3487747.html

sudo su 
mkdir ClockSynchronization
chmod -R 777 ClockSynchronization
cd ClockSynchronization

git clone https://github.com/taw19960426/util-linux-2.36.git
tar -xzvf util-linux-2.36.tar.gz
chmod -R 777 /home/pi/ClockSynchronization/
cd /home/pi/ClockSynchronization/util-linux-2.36/
./configure
make
mv /sbin/hwclock /sbin/hwclock.old
cp /home/pi/ClockSynchronization/util-linux-2.36/hwclock /sbin/
sudo hwclock --show

如果显示出时间,就表明安装好了,里面的路径可以根据自己的实际情况而定。

4 驱动下载及安装

下载DS3231模块的驱动

git clone https://github.com/taw19960426/pi-hats.git

cd pi-hats/CAN-HAT

安装驱动

sudo ./install.sh -u rtc_ds3231
sudo shutdown -h now

5 时间同步

添加i2c模块
sudo nano /etc/modules
添加以下两行内容:

i2c-bcm2708
i2c-dev

编辑启动文件
sudo nano /etc/rc.local
将以下内容加入“exit 0”行之前

sudo modprobe i2c-dev
sudo modprobe i2c-bcm2708
echo ds3231 0x68 | sudo tee  /sys/class/i2c-adapter/i2c-1/new_device
sudo hwclock -r
sudo hwclock -s

从当前系统时间设置硬件时钟

sudo hwclock -w

6 hwclock命令介绍

  • sudo hwclock -w #当前系统时间设置硬件时钟
  • sudo hwclock -r #查看硬件时钟
  • sudo hwclock -s #写时钟,使每次开机时读取RTC时间,并同步给系统时间
  • sudo hwclock --hctosys #将系统时钟调整为与目前的硬件时钟一致。
  • sudo hwclock --systohc #将硬件时钟调整为与目前的系统时钟一致。
  • sudo date --s=“2021-11-03 9:24:30” #强制设定时间
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

唐维康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值