En référence au post de l'ami framboise314, je reviens sur l'utilisation de l'I2C avec la carte PYBStick ESP32-C3. Les dernières versions compilés de Micropython (V1.18, V1.19) nous invitent à déclarer un port i2c logiciel plutôt de matériel. Pourquoi ? Je ne saurait dire précisément mais bon. Suivons le conseil donné.
Cela se fait par exemple de la manière suivante :
Code: Select all
from machine import Pin, SoftI2C
mon_i2c = SoftI2C(scl=Pin(6), sda=Pin(7), freq=10000)
Attention également à ne pas utiliser la GPIO8 qui elle est utilisée pour piloter la led RGB présente sur la carte, afin de ne pas avoir de fonctionnement erratique de cette led. J'ai fait l'économie d'une résistance de tirage sur cette sortie et il arrive parfois que, à la mise sous tension, la led s'allume généralement en blanc. Un peu de code pour initialiser en noir la led permet d'éviter l'aléatoire :
Code: Select all
from machine import Pin
from apa106 import APA106
rvb_led = Pin(8, Pin.OUT)
ap = APA106(rvb_led, 1)
ap[0] = (0, 0, 0) # toute noire
ap.write()