Une interface graphique pour Arduino sans prise de tête…

Cela faisait longtemps que je n’avais pas parlé de projets Arduino sur ce blog…

Il était donc temps de rattraper ça 🙂

Dans le cadre d’un projet perso (et encore secret 😉 ), j’avais besoin de réaliser rapidement et simplement une interface graphique pour piloter un Arduino Uno. Ce projet n’ayant ni bluetooth, ni wifi, et n’étant de toutes façons pas très motivée pour développer un protocole de communication, je recherchais une solution « clé en main ».

C’est à ce moment là que je suis tombée sur le projet Azande : https://zeijlonsystems.se/products/azande/index.html

L’idée ici est de coder l’interface graphique directement dans le code Arduino. A l’aide de structures simples, on définit ainsi des boutons, des compteurs…

Mais comme un exemple vaut mieux qu’un long discourt, en voici un : faire varier l’intensité lumineuse d’une led grâce à différents boutons Azande.

Voici le code :

Et l’interface générée :

En somme, les éléments d’interface se définissent dans « define_int_event », « define_int_commande » et « define_enum_command ».

La fonction loop() se borme ensuite à écouter sur le port série un flux, et, lorsque la commande « cmdLum » est reçue, à exécuter la fonction SetLum, qui change la luminosité de la led,et à envoyer une mise à jour à « eventLum » pour mettre à jour le compteur.

Côté code, difficile de faire plus simple !

Et voici le résultat :

Je suis toujours épatée par les possibilités de création offertes par ces petites cartes ! De vraies machines à générer du bonheur !

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.