วันนี้ได้มีโอกาสใช้ Real Time Clock กับ Rpi เป็นครั้งแรก โดยใช้ชิปเบอร์ ds3231
มาถึงก็ต่อสายก่อนเลย
RTC RPi
VCC 1
GND 6
SCL 5
SDA 3
sudo apt-get update
sudo apt-get upgrade
sudo raspi-conifg
enable i2c
sudo reboot
sudo apt-get install python-smbus i2c-tools
sudo i2cdetect -y 1
จะเห็น address 68
sudo nano /boot/config.txt
เพิ่มบรรทัดนี้เข้าไปที่ด้านล่างสุดของไฟล์
dtoverlay=i2c-rtc,ds3231
ctrl+o, ctrl+x
sudo reboot
sudo apt-get -y remove fake-hwclock
sudo update-rc.d -f fake-hwclock remove
sudo nano /lib/udev/hwclock-set
มาหาบรรทัดนี้
if [ -e /run/systemd/system ] ; then
exit 0
fi
แล้ว comment out แบบนี้
#if [ -e /run/systemd/system ] ; then
# exit 0
#fi
ctrl+o, ctrl+x
เราสามารถอ่านเวลาจาก rtc ได้ด้วยคำสั่งนี้
sudo hwclock -D -r
ก่อนที่เราจะทำการ sync เวลาจาก rpi ของเราไปที่ rtc ต้องเช็คก่อนว่าเวลาที่ rpi เป็นเวลาที่ถูกต้อง ด้วยคำสั่ง
date
ถ้าเวลาไม่ตรงกับปัจจุบัน ให้เราต่อ rpi กับ internet เสียก่อน
ถ้าเวลาถูกต้องดีแล้ว ก็จะใช้คำสั่งนี้ในการเขียนข้อมูลเวลาไปที่ rtc
sudo hwclock -w
ให้เราลองอ่านเวลาจาก rtc ดู ด้วยคำสั่งนี้
sudo hwclock -r
เราก็จะได้มีเวลาเป็นของตัวเองสักที
จอบอ
https://www.nelisys.com/tutorials/raspberry-pi-rtc-ds3231
https://pimylifeup.com/raspberry-pi-rtc/
ไม่มีความคิดเห็น:
แสดงความคิดเห็น