Mon Arduino n’a pas 40(15+21+3) sorties et 3 entrées, donc j’ai besoin non plus d’abandonner les fonctionnalités (qui ne ressemble pas à l’amusement chose à faire), acheter une Arduino Mega (où est le plaisir que) ou j’ai besoin de trouver une façon intelligente de faire le travail. Alors que je suis habituellement paresseux, faire l’impossible semble faire beaucoup plus de plaisir (Ok, l’improbable alors...)
J’ai déjà réussi à crochet 5 boutons à une entrée analogique et documenté qui ici :
En utilisant Charlieplexing, vous pouvez y brancher n*(n-1) LED s aux broches du microcontrôleur n. Je vais passer par la théorie à l’étape suivante, mais de cela, vous pouvez voir que je peux raccorder 20 LED sur 5 broches ou 12 LED sur 4 broches, ce qui seraient un bon début pour ce qui en fait tous les travaux sur 1 Arduino.
Si vous recherchez Instructables (et Google d’ailleurs), vous trouverez beaucoup d’explications théoriques du fonctionnement des Charlieplexing, et vous trouverez même des exemples de Charlieplexed LED fonctionnant sur de l’Arduino. Le problème est que le code sur ces exemples ne sont généralement pas explique très bien et sont généralement très étroitement liés à la configuration de matériel exact que l’auteur a utilisé. Il est donc un exercice de futilité et de la frustration d’essayer de faire fonctionner sur vos propres projets.
Je vais vous montrer exactement comment cela fonctionne, comment mettre en place avec comme beaucoup de LED que vous voudriez dans aussi indolore que possible (même si c’est horriblement compliqué si vous allez à plus de 30 LED), comment coder il si cela fonctionne pour vous, et quels problèmes j’ai eu à surmonter dans le processus.