π
<-
Chat plein-écran
[^]

img2calc: convertis tes images à afficher sur micro:bit

img2calc: convertis tes images à afficher sur micro:bit

Message non lude critor » 27 Mai 2021, 10:40

13917Nous revenons aujourd'hui sur img2calc, notre service universel de conversion d'images pour calculatrices graphiques.

Depuis peu, img2calc gère la production de scripts Python incluant de quoi afficher l'image convertie sur l'écran de ta calculatrice.

Grande nouveauté aujourd'hui, tu peux maintenant convertir tes images en scripts Python permettant à ta calculatrice de les afficher sur une carte BBC Micro:bit ! :bj:

En effet la BBC Micro:bit dispose d'un afficheur muni de 5×5 LEDs rouges.

Une option disponible pour les modèles gérant cette carte, soit à ce jour les TI-Nspire CX II ainsi que les éditions Python des TI-83 Premium CE et TI-84 Plus CE.

Nous prendrons comme exemple l'image ci-contre faisant déjà 5×5 pixels en niveaux de gris.

img2calc t'offre ici la possibilité de générer ton script pour 2 modules Python différents au choix :
  • soit microbit
  • soit ti_innovator (micro:bit) pour les TI-Nspire CX II ou ti_hub (micro:bit) pour la plateforme CE
La différence est très simple. Les modules microbit sont à installer sur ta calculatrice, liens de téléchargements disponibles en fin d'article. Sans ces modules, le script généré ne fonctionnera pas.

Si par contre tu choisis ti_innovator (micro:bit) ou ti_hub (micro:bit), ici tu n'as rien à installer puisque ces modules sont directement intégrés à la calculatrice ! :bj:
L'astuce mise en œuvre est d'utiliser leur méthode send() afin de définir notre propre fonction permettant d'envoyer directement à la carte micro:bit le code Python que l'on souhaite lui faire exécuter :
Code: Tout sélectionner
def send_microbit(cmd):
  send("\x04")
  send(cmd)
  send("\x05")


L'afficheur de la micro:bit étant constitué de LEDs rouges, lors de la conversion img2calc ne prend ici en compte que les niveaux de gris et les transforme en niveaux de rouge comme illustré ci-contre.

Mais quel format adopter pour l'image au sein du script Python ?

On peut certes imaginer une boucle allumant les diodes une par une à coups d'appels display.set_pixel(x,y,brillance), la brillance étant codée de 0 à 9, ce qui nous laisse toute liberté sur le format de stockage des données de l'image.

Cette méthode a toutefois le défaut d'être lente, puisque concernant ici un afficheur externe. En effet pour 5×5=25 diodes, les délais dus au protocole de communication seront multipliés par 25. Cela donnera de plus un affichage de l'image non pas instantané mais progressif, et pas du meilleur effet, bien embêtant de plus si tu souhaites afficher plusieurs images à la suite pour donner un effet d'animation. :'(

Sachant qu'avec le projet img2calc nous visons en priorité les performances, il nous faut trouver autre chose. Et bien cela tombe bien, car la carte BBC micro:bit gère son propre format d'image :
Code: Tout sélectionner
#your image data
#5x5 10-shades of gray pixels
image = "33445:20005:21006:00006:98877"

1392913930L'image est alors directement affichable sur la micro:bit en lui faisant exécuter d'une façon ou d'une autre display.show(Image(...)) ! :bj:

Tu peux maintenant dessiner absolument tout ce que tu veux, de préférence en niveaux de gris sur 5×5 pixels, et obtenir rapidement le script l'affichant sur ta micro:bit ! :D

Tu restes libre bien sûr de fournir des images couleurs ou plus grandes, elles seront si besoin redimensionnées et passées en niveaux de gris. Mais avec ici sur la micro:bit un afficheur munis de pixels peu nombreux et assez "gros", il vaut mieux garder le contrôle de ce que ça donnera pixel par pixel, en fournissant une image au plus proche du format d'affichage.

Liens img2calc :

Modules micro:bit :
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.4%
 
Messages: 41497
Images: 14640
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: img2calc: convertis tes images à afficher sur micro:bit

Message non lude Dubs » 27 Mai 2021, 12:12

Génial, on va bientôt voir débarquer Bad Apple sur microbit !
Avatar de l’utilisateur
DubsVIP++
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 37.9%
 
Messages: 125
Inscription: 06 Jan 2016, 13:44
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: img2calc: convertis tes images à afficher sur micro:bit

Message non lude critor » 27 Mai 2021, 20:22

Et bien j'ai hâte de voir ce que va donner Bad Apple sur micro:bit. :D

Surtout qu'avec la micro:bit v2 il y aura le son en prime. ;)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.4%
 
Messages: 41497
Images: 14640
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor


Retourner vers News Divers

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 71 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1166 utilisateurs:
>1113 invités
>47 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)