Manette analogique pour arduino
ta daaaaa! Voici mon "arduino's analog joystick":
Electronique:
(je déteste les logiciels de création de PCB) Pour faire simple [1], la loi d'ohm fait qu'en mettant une résistance différente au cul de chaque bouton poussoir, la valeur lue dans A0 sera unique en fonction du bouton activé.
Code
Il donne quelque chose comme ça:
int joystickPin = A0; int getPushedButton(int joystickPin){ int val=analogRead(joystickPin); if(val > 1000){ return 0; }else if (val > 650){ return 4; }else if(val > 450){ return 6; }else if(val > 120){ return 5; }else if(val > 45){ return 3; }else if(val > 15){ return 1; }else{ return 2; } }
Adaptez les valeurs en fonction des résistances que vous mettez. On peut aussi gérer les combinaisons de boutons.
Box
Le dessin 3D du carter de la manette peut être téléchargé sur ce dépot github.
Cette manette s’intègre dans mon projet de cube led. Cet article est assez léger techniquement. Mais s'il peut donner des idées à des bidouilleurs arduino, c'est cool.
Note
[1] Comme il est minuit passé au moment où je rédige ces lignes... Je n'ai pas envie de poser des équations