Étape 5: Lorsque vous sont terminés, vous devez convertir en une chaîne pour les commandes I2C
Conversion en chaîne est assez simple avec la commande de sprintf. Avec l’ajout de la commande de l’uc au format peuvent tous être majuscule et les résultats semblent plus propres
$read_value = uc(sprintf("%x\n",%read_value)) ;
Cela serait d’imprimer quelque chose comme 24, en utilisant les exemples précédents, et si c’était une valeur comme 0xED, cela serait d’imprimer ED
Ce n’est pas toujours l’air correct cependant qu’il manque le x 0 que nous devons écrire comme préfixe pour l’I2C commande
donc changer cela être 2 caractères large avec le préfixe 0 x et nous avons
$read_value = uc(sprintf("0x%02x\n",$read_value)) ;
La chaîne $read_value contient maintenant, pour l’exemple « ED » 0xED
Maintenant lorsque vous utilisez avec la commande "write" I2C lors de l’impression de servir de $read_value est
$command = "i2cset -y 1". % i2c_address. » «. $i2c_port. » ". $read_value. » \n";