Progression du robot pour la Coupe 2013

dimanche 23 septembre 2012

Coupe 2013 : Du LCD dans nos robots !

Vous avez toujours eu envie d'un écran LCD sur votre robot mais vous n'avez jamais eu le courage de fabriquer votre carte et d’écrire le code ! Ce post est fait pour vous !

Afficheur LCD AXE133
Ecran LCD alphanumérique 2x16
Il est vrai que, même si c'est un grand classique, coder un écran LCD alphanumérique n'a rien de marrant. L'avoir vue et réalisé une fois à l'école est largement suffisant ( pour ma part, je me suis "tapé" ce code plusieurs fois en assembleur, C et basic ... ).



Mais vous souhaitez quand même pouvoir afficher des choses sur votre robot : la charge batterie, la valeur d'un capteur, un superbe et totalement original "Hello world !" ... Et, une fois n'est pas coutume, on va utiliser les Picaxes et une carte toute faite pour y parvenir !

Nous allons utiliser le kit Picaxe AXE133 disponible pour environ 15€ et qui comprend un écran LCD 2x16 et un kit de pilotage à base de Picaxe. Il va nous permettre de piloter un écran via une liaison série.
Dans un premier temps il va falloir monter son kit. A vos fer à souder ! Attention cependant : le kit livre des barrettes sécables mâles mais pas femelles. Je vous conseil donc de vous procurer des femelles que vous viendrez souder sur votre LCD. Ainsi, si vous souhaitez changer de LCD ( pour changer de taille ou de rétro-éclairage par exemple ), vous n'aurez pas à user de votre tresse à dessouder !
Pour ma part, ayant déjà un écran muni d'une nappe, j'ai utilisé ce dernier. C'est tous sauf beau et pratique mais ça fonctionne pour le moment. J'ai également équipé la carte d'un connecteur avec détrompeur pour être en accord avec tous les connecteurs de notre robot.

On n'a plus qu'à venir brancher notre câble sur une des E/S de notre carte principale et de démarrer notre logiciel de programmation.

Encore une fois, le travail est déjà fait et tout est prévu pour vous simplifier la vie. Voici par exemple le code pour afficher un message :
__________________________________________

#picaxe 20x2
#no_data
#no_table

pause 2000
'Effacement de l'écran
serout B.6,N2400,(254,1)
pause 2000

main:

serout B.6,N2400,(254,128) 'On se place sur la premiere ligne
serout B.6,N2400,("Hello world !") 'On affiche du texte

goto main

__________________________________________


Et voila ! De plus, il existe plusieurs commande spéciale que je ne détaillerais pas mais qui sont disponibles dans la doc du kit. Vous pouvez également reprogrammer le microcontroleur afin de changer le message d’accueil, les messages pré-définis ou même adapter le code pour qu'ils puisse utiliser d'autre types d'écrans. 3 E/S sont également directement disponibles sur la carte. On peut par exemple brancher un capteur directement dessus et afficher sa valeur sans utiliser une autre carte.

Le code est disponible sur le site Picaxe et il contient déjà des parties de programme non-activées pour certaines fonctions.

Un kit bien sympa que l'on utilise tous les jours maintenant et dont le code va très prochainement être adapté pour piloter un écran  20x4 ...

Robotiquement votre.

Edit 21/10/2012 :
Comme promis, Le même système sur un écran LCD 20x4 . La classe !