Étape 3: Code :
Le code java pour PCA9536 peut être téléchargé depuis notre dépôt github-ControlEverythingCommunity
Voici le lien pour la même chose :
https://github.com/ControlEverythingCommunity/PCA9...
Le datasheet du PCA9536 peut être trouvé ici :
https://S3.amazonaws.com/controleverything.Media/c...
Nous avons utilisé pi4j bibliothèque de code java, les étapes pour installer pi4j sur pi framboise est décrit ici :
Vous pouvez également copier le code d’ici, il est affecté comme suit :
Distribué avec une licence libre-arbitre.
Utilisez-le toute façon vous voulez, Profitez ou libre, autant il s’intègre dans les licences de ses ouvrages connexes.
PCA9536
Copiez le code suivant est conçu pour fonctionner avec le Module PCA9536_I2CIO I2C Mini, disponible de ControlEverything.com.
https://www.controleverything.com/content/Digital...
import com.pi4j.io.i2c.I2CBus ;
import com.pi4j.io.i2c.I2CDevice ;
import com.pi4j.io.i2c.I2CFactory ;
import java.io.IOException ;
public class PCA9536
{
Public Shared Sub main (chaîne args[]) lève Exception
{
Créer le bus I2C
I2CBus Bus = I2CFactory.getInstance(I2CBus.BUS_1) ;
Obtenez le périphérique I2C, I2C PCA9536 adresse est 0x41(65)
Dispositif de I2CDevice = Bus.getDevice(0x41) ;
Sélectionnez configuration de Registre
Toutes les broches configurées comme entrées
Device.Write (0 x 03, (byte) 0xFF) ;
Sortie à l’écran
System.out.printf ("tous les Pins État sont haut %n") ;
Thread.Sleep(500) ;
Lu 1 octet de données
données de Byte [] = new ubyte [1] ;
Data [0] = (byte)device.read(0x00) ;
Convertissez les données en 4 bits
int data1 = (data [0] & 0x0F) ;
pour (int i = 0; i < 4; i ++)
{
Si ((data1 & ((int)Math.pow (2, i))) == 0)
{
System.out.printf (« I/o Pin %d État est faible %n », i) ;
}
d’autre
{
System.out.printf (« I/o Pin %d État est élevé %n », i) ;
Thread.Sleep(500) ;
}
}
}
}