使用modinfo rtc-ds1307 查看rtc-ds1307的驱动信息
可以看到DS3231 也是使用rtc-ds1307的驱动信息
1 配置方式1
插入ds3231,例如当前插入i2c-1接口
(1)使用sudo raspi-config启用i2c 接口
此时使用i2cdetect -y 1 查看i2c 1设备
(2)修改 /boot/config.txt 末尾添加
dtoverlay=i2c-rtc,ds3231
从其后再=使用i2cdetect -y 1 查看ic设备68位置变成UU 表示系统驱动使 用了这个位置
(3)给树莓派联网获得正确的时间
sudo hwclock -w 向时钟模块写入当前的正确时间
sudo hwclock -w //设置(设置进RTC的是UTC时间,不是本地时间,如果要把本地时间设置进去,需要使用sudo hwclock -w --localtime)
测试:hwclock -D -r可以读取RTC的当前时间
(4)编辑启动文件 /etc/rc.local
sudo nano /etc/rc.local
将以下内容加入“exit 0”行之前 ,从用户空间创建设备
echo ds3231 0x68 | sudo tee /sys/class/i2c-adapter/i2c-1/new_device
sudo hwclock -s #同步系统时钟和物理时钟
重新启动
配置之后
使用i2cdetect -y 1 看到68地址位置也是显示UU
如果插入i2c 0 接口那么
(1) 修改/boot/config.txt
添加 dtparam=i2c_vc=on 表示启用i2c 0
/etc/rc.local 中的i2c-1 修改为 i2c-0
echo ds3231 0x68 | sudo tee /sys/class/i2c-adapter/i2c-1/new_device
使用i2cdetect y 0 看到68地址位置也是显示UU