![]() |
Librairie "lib_1306_rot" |
Février 2021 |
Documentation "lib_1306_rot" |
Dans cette deuxième possibilité d'utilisation de la librairie, le schéma du montage est un peu plus simple car l'encodeur est simplement directement raccordé sur les gpios de l'ESP. C'est donc 5 ports du processeur qui sont utilisés ! L'avantage c'est que le montage consommera un peu moins car il n'y a plus d'interface I/O I2C. Mais nous perdons des gpios sur l'ESP et nous perdons également les ports supplémentaires qui étaient disponibles sur le PCF85741. |
Sur cette version il vous reste moins de gpio pour votre projet !
Ici sur ce schéma je n'utilise plus le PCF85741, c'est donc le processeur (arduino ou ESP8266-12 ou ESP32) qui doit disposer des 5 gpios qui sont necessaires
(l'ESP8266-1 ne dispose pas de sufisament de port pour utiliser ce câblage !).
Pour la déclaration de l'objet la syntaxe va etre de la forme :
util_1306 Uoled(0, encod_clk, encod_dt, encod_sw, display);
adr_i2c_io => Adresse à 0 la librairie compredra alors que les signaux de l'encodeur sont des numéros de gpio.
encod_clk, encod_dt, encod_sw => Chaque signal de l'encodeur est associé à un numéro de port du processeur
display => correspont à l'objet qui a été créé pour l'écran OLED.
L'encodeur rotatif est disponible en brut ou sur plaquette qui doit inclure 3 résistances de rappel au + (positif).
Différents Encodeurs rotatifs sont supportés mais l'objet a été créée avec un KY-040 30 pas.
Cette librairie a été développée avec un encodeur qui comporte bien une résistance de rappel au positif sur les trois signaux. Il existe cependant sur le marché des
encodeurs sur plaquette ou la résistance sur le signal "SW" n'a pas été installée. Cette librairie prend donc en charge ce cas et les trois entrées de l'encodeur sont déclarée en PULLUP dans le cas
ou vous n'utilisez pas de PCF85741 (param adresse à 0). L'utilisation de résistances n'est donc plus nécessaire. Quelques explications supplémentaires sur l'encodeur et le PULLUP sont disponibles
ici en bas de page.