RPI

De InfoXelec
Aller à la navigation Aller à la recherche

Le site officiel de la Raspberry Pi se trouve à l'adresse https://www.raspberrypi.com/

Systèmes d'exploitation

La carte Raspberry Pi accepte différents systèmes d'exploitation en fonction des besoins
L'installation de la carte SD se fait via le logiciel officiel rpi-imager.

Raspberry Pi OS pour la plupart des cas
MotionEyeOs pour transformer la RPI en système de vidéo surveillance
Retropie pour faire du Retro gaming
LibreElec pour un système multimedia
Volumio pour une radio numérique

I2C et Raspberry Pi

Afin de pouvoir communiquer avec des périphériques I2C depuis le Raspberry il y a plusieurs solution.

depuis le shell avec i2c-tools
depuis un script Python avec SMBus

Cependant il existe des limitations. Seule la plage 0x08 à 0x77 est accessible.

I2C-Tools

L'installation se fait avec la commande sudo apt install i2c-tools
Plusieurs outils seront alors disponibles.

i2cdetect : permet de lister les périphériques i2c ;
i2cget : permet de lire sur le bus I2C ;
i2cset : permet d'écrire sur le bus I2C ;
i2ctransfer : permet de lire ou écrire plusieurs blocs.

A noter que l'outil i2cdump n'est pas compatible avec les mémoires utilisant plus de 8 bits d'adresse pour les données. (> 256 octets)
Pour lire une mémoire nécessitant 2 octets d'adresse, il faut procéder comme suit : exemple avec l'adresse i2c 0x50 (24C16)
Positionner le pointeur de lecture : i2cset -y 1 0x50 0x00 0x42 soit i2cset -y busnumber deviceaddr MSB_memaddr LSB_memaddr
Lire le contenu et incrémenter le pointeur : i2cget -y 1 0x50 Renvoyer la commande pour chaque octet à lire.
Il est aussi possible de réaliser la lecture avec la commande i2ctransfer -y 1 r4@0x50 Il faut que le pointeur soit préalablement positionné.
Pour écrire dans la mémoire, il faut utiliser la commande i2cset -y 1 0x50 0x00 0x00 0xCA 0xFE i
ou avec i2ctransfer i2ctransfer -y 1 w4@0x50 0x00 0x42 0xca 0xfe
Ecriture de CAFE à l'adresse 0x0042 de la mémoire.