Raspberry Pi n’inclut pas une horloge matérielle à bord. Il utilise un accès internet pour régler l’heure à l’aide de serveurs NTP. Utilisation d’une horloge matérielle en temps réel (RTC) permet la Pi framboise à servir sans accès à internet et de toujours offrir des services qui utilisent les horodatages. DS1307 est un I2C couramment disponibles CCF IC. En utilisant le protocole I2C pris en charge par le Raspberry Pi, soutien d’horloge temps réel peut être facilement ajouté avec un coût d’environ $2-3.
Installation du matériel :
1. obtenir une planche DS1307 ou faites vous-même (c’est très simple).
2. veiller à ce que les lignes I2C données et horloge (SDA et SCL) n’a pas les résistances de pull-up. Si n’importe quel pull-ups existent, supprimez-les.
3. Brancher une batterie (la plupart des conseils utilisent des piles au Lithium CR2032) pour le DS1307.
4. effectuer les branchements de la Raspberry Pi. Voir ici pour la liste des broches GPIO en-tête. 5V, GND, SDA et SCL a besoin d’être connecté.
Configuration du logiciel :
1. activez i2c sur la Pi de la framboise.
Exécutez sudo nano /etc/modprobe.d/raspi-blacklist.conf
Localisez la ligne liste noire i2c-bcm2708
Commentez-le en tapant un « # » devant. c'est-à-dire #blacklist i2c-bcm2708
2. Chargez les modules requis au démarrage.
Exécutez sudo nano/etc/modules
Ajoutez la ligne suivante à la fin
i2c-bcm2708
I2C-dev
CCF-ds1307
3. Installez i2c-tools
Exécutez sudo apt-get installer i2c-tools
4. reboot (exécuter sudo reboot)
Remarque: les commandes suivantes requièrent des privilèges root pour exécuter. Il est plus facile d’exécutez-les à partir d’une invite de racine.
Une invite de racine peut être lancée en exécutant sudo bash.
5. Recherchez la connectivité I2C à DS1307
Exécuter i2cdetect -y 0 sur modèle A
Exécuter i2cdetect -y 1 sur modèle B
L’adresse 0x68 doit figurer si le module est correctement connecté.
6. instancier le DS1307
Exécutez écho ds1307 0x68 > /sys/class/i2c-adapter/i2c-0/new_device sur le modèle A
Exécutez l’écho ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device sur le modèle B
7. veiller à ce que l’heure du système est définie.
8. initialiser l’horloge machine
Exécutez hwclock--systohc -D--noadjfile--utc
Celle-ci définira le temps sur le DS1307.
9. vérifier l’horloge machine
Exécutez hwclock-r
Si tout est correctement configuré, l’heure et la date s’affiche.
10. configurer l’horloge machine pour synchroniser au démarrage.
Exécutez nano /etc/rc.local
Insérez les lignes suivantes avant la ligne 'exit 0'
écho ds1307 0x68 > /sys/class/i2c-adapter/i2c-0/new_device sur le modèle A
écho ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device sur le modèle B
hwclock de sudo -s
C’est tout. Vous êtes tous ensemble.