le signe degrés: ° ça passe pas avec lcd.print(°);
lcd.write(248); (question déja posé il y a quelques semaines ;))
zekill:
une case pleine: faut t'il forcement passer par la fonction createChar ?
createChar ou peut être (jamais essayé) lcd.write(219);
zekill:
et eventuellement des fléches, pareil, je ne sais pas si c'est possible.
Tu l'as dit à l'instant -> LiquidCrystal -> createChar -> LiquidCrystal - Arduino Reference
(Il existait un outil en ligne pour créer facilement des char custom mais il n'est plus dispo :~)
Le problème des afficheurs en règle génerale est qu'ils ne possèdent que les 128 premiers caractères de la table ASCII (par souci d'économie).
Le '°' va naturellement bien au dela du 128ème. Il va donc falloir le génerer, pas le choix.
Dans un sujet précedent, nous avions testé ceci : Serial.print((unsigned char)'°');
Même si je doute fortement que cela puisse fonctionner dans ton cas, un essai peut être fait :
lcd.print((unsigned char)'°');
@+
Zoroastre.
[EDIT1] Skywodd strike fast : Tu es sûr de ton lcd.write(248) (suis tout surpris)
... ya un tableau de char spécial pour les lcd ... hahaha je me fait ch*er depuis toujours à faire des createChar pour rien donc, c'est ballot
zoroastre:
[EDIT1] Skywodd strike fast : Tu es sûr de ton lcd.write(248) (suis tout surpris)
J'y suis allez à grand coup de table ascii ... mais normalement '°' c'est 248 en décimal et F8 en hexa ... maintenant vu la table cité plus haut ... j'ai comme un gros doute ...
Ben ouép, les afficheurs possèdent un espace mémoire appelé CGRAM qui permet d'insérer sa propre table de caractères si besoin. D'habitude çà se limite au 128 caractères courants...
zeric:
Page 17 : les codes pour la ROM A00
Page 18 :les codes pour la ROM A02
Devinez laquelle est installée...
La logique européen voudrais que ce soit la ROM A02 qui soit installé, la logique "made in china" serait plus pour la A00.
Mais comme dans ce monde tout est régit par la loi de murphy je suppose que c'est la A00 qui est installé (soit la version la moins complète).
zeric:
Et pour les autres, tapez le nom du "chip", dans le moteur de recherche "DuckDuckGo" (c'est le meilleur, il a pas de tracker :D)
Nan mais c'est quoi ce site x)
Tient ça c'est un vrai moteur de recherche : http://bit.ly/8VzvdY
(Oui je sais le troll était facile )
En cherchant la solution pour afficher via la fonction print des caractères que j'ai créé dans la CGRAM de mon LCD, je suis tombé sur ce topic et grâce à vous, j'ai trouvé !
J’ai en effet testé l’instruction lcd.print((char)xxx) ;
J’ai remarqué qu’en appelant les caractères de 0 à 7, on peut afficher les caractères créés avec la fonction createChar des librairies d’écran lcd.
Ainsi :
lcd.print((char)0); affiche le caractère précédemment créé à l’aide de
lcd.createChar(0, caractereperso);
Cela me permet de simplifier le code pour utiliser des caractères perso dans des String à afficher.