π
<-
Chat plein-écran
[^]

News 2024
Avril (1)

News 2023
Août (2)
Juin (3)
Mai (7)
Avril (2)
Mars (3)

News 2022
Août (3)
Juin (4)
Mai (1)
Avril (6)
Mars (4)
Janvier (12)

News 2021
Août (8)
Juillet (28)
Juin (20)
Mai (19)
Avril (25)
Mars (15)

News 2020
Août (16)
Juillet (13)
Juin (17)
Mai (38)
Avril (21)
Mars (17)

News 2019
Août (10)
Juin (4)
Mai (11)
Avril (8)
Mars (18)
Janvier (14)

News 2018
Août (5)
Juin (9)
Mai (10)
Avril (2)
Mars (14)
Janvier (12)

News 2017
Août (10)
Juillet (14)
Juin (14)
Mai (11)
Avril (9)
Mars (12)
Janvier (11)

News 2016
Octobre (10)
Août (8)
Juin (8)
Mai (14)
Avril (9)
Mars (13)
Janvier (11)

News 2015
Octobre (15)
Août (11)
Juin (7)
Mai (12)
Avril (6)
Mars (11)

News 2014
Août (2)
Juin (2)
Mai (5)
Avril (4)
Mars (5)

News 2013
Août (6)
Juin (8)
Mai (14)
Avril (24)
Mars (16)
Janvier (10)

News 2012
Octobre (11)
Août (6)
Juin (8)
Mai (16)
Avril (16)
Mars (6)

News 2011
Août (4)
Juin (11)
Mai (5)
Avril (2)
Mars (6)

News 2010
Juin (1)
Mai (2)
Avril (1)

News 2009
Août (2)
Avril (1)

Tes propres QR-Codes 1046 caractères sur TI-83 Premium CE

Nouveau messagede critor » 27 Juin 2016, 17:48

6008Dans un article précédent, nous te sortions ZQRCODE, un programme d'affichage de QR Code pour ta TI-83 Premium CE.
Cet utilitaire ne permettait pas de saisir directement sur la calculatrice les données à coder, et travaillait sur une liste de nombres entiers lui étant fournie, et que tu pouvais générer gratuitement en ligne à partir du message de ton choix. :)

En mai dernier, nous te sortions même le tout premier programme TI-83 Premium CE à contenu enrichi par QR-Codes, un jeu de 1000 bornes dont les règles en français et en anglais étaient très facilement consultables par flashage du QR-Code affiché sur demande par la calculatrice ! :bj:

L'outil d'affichage de QR-Code gérait une liste de nombres d'au plus 10 chiffres chacun, car codés sur 32-bits.
Les tailles valides de QR-Codes se comptant de 4 en 4 à partir de 21, nous étions limités à des QR-Codes de taille 29x29, ne permettant de stocker que 77 caractères alphanumériques.

Or la calculatrice TI-83 Premium CE permet bien mieux que cela, car travaillant sur des nombres d'au plus 13-chiffres significatifs, dont la génération nécessiterait donc au moins 44-bits.
Et voilà le problème, le compilateur de notre IDE C en ligne pour TI-83 Premium CE a le défaut, contrairement à d'autres, de ne pas gérer les calculs sur 64-bits. :mj:

Qu'à cela ne tienne - à tout problème il y a une solution. ;)
Nous avons donc intégré au programme une bibliothèque de calcul 64-bits directement codée bit à bit en C, de quoi donc largement gérer des nombres 44-bits. :bj:
Nous avons ensuite eu l'idée d'utiliser également le signe des nombres générés en tant qu'indicateur de la valeur d'un 45ème bit. :)
Nous avons alors eu l'idée de gérer également des listes de nombres complexes, qui pour la calculatrice TI-83 Premium CE sont tout simplement des paires de nombres réels, ce qui nous amène finalement à 90-bits ! :#tritop#:

Version
ZQRCODE
format géré
taille
format
dimension max.
QR-Code
taille max. message
(alphanumérique)
v1
entier non signé
32-bits
29-bits
77
v2
(privée)
entier non signé
44-bits
41-bits
195
v3
(privée)
entier signé
45-bits
45-bits
224
v4
2 entiers signés
(nombre complexe)
90-bits
89-bits
1046

7146Ce qui nous amène aujourd'hui à la version 4 de l'outil, avec une gestion des QR-Codes jusqu'à une taille de 89x89, tu peux maintenant coder et afficher des message d'au plus 1046 caractères alphanumériques ! :D
Elle reste bien évidemment compatible avec toutes les listes générées antérieurement, puisque c'est une extension du format géré et non un changement de format. :)
De quoi stocker de longues adresses Internet dans tes programmes sans plus aucun besoin de passer par un service de raccourcissement d'adresses ! :bj:
Ou encore de quoi stocker des messages secrets destinés à tes camarades, sans plus aucun besoin de faire dans le concis ! :bj:

Notons que dans la mémoire de la TI-83 Premium CE, les nombres réels sont représentés par les trois éléments de leur écriture scientifique
$mathjax$(signe)mantisse\times 10^{exposant}$mathjax$
:
  • un bit de signe
  • une mantisse à 13 chiffres comprise entre 1 et 10 (7 octets)
  • un exposant (1 octet)
Le format actuel utilise donc désormais l'intégralité des 13 chiffres de mantisse et du bit de signe pour coder l'information.
Il y a peut-être moyen d'aller plus loin et de gérer des QR-Codes encore plus grands que 89x89, en codant les bits d'information supplémentaires dans l'exposant... A bientôt ! ;)


Téléchargement : archives_voir.php?id=324393 (afficheur)
Lien : https://tiplanet.org/scripts/qrcode/ (générateur)
Code source : https://tiplanet.org/pb/?id=2043_1459247330_6565740c92
Lien vers le sujet sur le forum: Tes propres QR-Codes 1046 caractères sur TI-83 Premium CE (Commentaires: 3)

Découvre la programmation TI-Innovator sur 83 Premium CE 5.2

Nouveau messagede critor » 28 Juin 2016, 18:19

70137038Mercredi 8 juin dernier, Adriweb et moi-même étions présents au salon de l'Orme 2.16 à Marseille entre autres sur le stand Texas Instruments.
Nous te présentions dans un article précédent la prochaine mise à jour 5.2 pour TI-83 Premium CE qui était installée sur les machines du stand.

6976Mais une autre grande nouveauté de la rentrée 2016 était également en démonstration sur le stand, l'interface TI-Innovator déjà annoncée par Adriweb lors de sa couverture de la conférence internationale T3 2016, puis présentée plus en détails.
Prévu pour TI-83 Premium CE et TI-Nspire CX, nous découvrons maintenant le nom final de ce périphérique : TI-Innovator Hub, avec un sous-titre with TI LaunchPad Technology.
En effet comme déjà découvert, la partie visible sous la coque transparente du périphérique est une carte de développement TI LaunchPad MSP-EXP432P401R.

Il s'agit d'une véritable prise de conscience et révolution de la part du constructeur Texas Instruments. :bj:
En effet, la calculatrice graphique, descendante de l'ordinateur de poche des années 80, a en 35 ans énormément perdu en connectivité.
Les possibilités d'utilisation de périphériques officiels ou non se sont réduites comme peau de chagrin tous constructeurs confondus, ces derniers ayant peut-être privilégié une vision d'économies à court terme. :'(
Une évolution qui allait justement à l'encontre des programmes scolaires pronant de plus en plus, particulièrement dans leur dernière version pour la rentrée 2016 en collège, une ouverture sur le monde. :#non#:
Nous ne pouvons qu'être heureux que le constructeur Texas Instruments ait enfin fini par réagir dans le bon sens, et espérons que les autres suivront. :bj:


6582La carte de développement TI-LaunchPad du TI-Innovator offre nombre de choses intégrées (interrupteurs, connecteurs...) qui ne seront pas utilisables ici à moins de tout démonter.
Ce qui reste par contre utilisable grâce à la coque transparente, ce sont les diodes :
  • LED1 : diode rouge
  • LED2 : diode rouge-vert-bleu
De nombreux programmes étaient disponibles à des fins de test de ce nouveau périphérique sur les TI-83 Premium CE du stand.
Le programme BLINK par exemple nous faisait clignoter la diode LED1 :
70097010
Code: Tout sélectionner
For(A,1,10)
   Send("SET LIGHT  ON "
   Wait 1
   Send("SET LIGHT  OFF "
   Wait 1
End

Nous découvrons donc ici le format des commandes TI-Innovator à envoyer avec l'instruction Send( déjà existante, ainsi que la nouvelle instruction Wait du prochain OS TI-83 Premium CE 5.2.

6632La diode LED2 quant à elle constituée de 3 diodes rouge vert et bleu juxtaposées et donc bien plus grosse comme visible ci-contre, permet par synthèse additive de reproduire une large gamme de couleur. :bj:

Plusieurs programmes nous en démontraient là encore les possibilités :
  • RBFADE qui nous réalise une transition de la couleur rouge à la couleur bleue :
    703370347030
    Code: Tout sélectionner
    255→R
    0→G
    0→B
    10→S
    While R>0
       Send("SET COLOR.RED eval(R)")
       Send("SET COLOR.BLUE eval(B)")
       Wait .1
       R-S→R
       B+S→B
    End
    Wait 2
    Send("SET COLOR 0 0 0")

    On note donc ici la nouvelle intstruction eval( permettant comme son nom l'indique d'évaluer une chaîne de caractères, et qui est même utilisable directement dans une telle chaîne !
  • MAKECOLR qui nous permettait de choisir notre propre couleur en spécifiant les trois composantes rouge-vert-bleu sur une échelle de 0 à 255 :
    703170327029
    Code: Tout sélectionner
    EffÉcran
    Disp "R=0 ends program"
    Repeat R=0
       Prompt R,G,B
       Send("SET COLOR eval(R) eval(G) eval(B)")
    End
    Send("SET COLOR 0 0 0")


    6772Mais le TI-Innovator complète également la connectivité de la carte TI LaunchPad, à travers ce que nous supposons être une carte d'extension dissimulée dans sa base opaque.

    70197020Cette base offre en effet pas moins de 7 connecteurs Grove :
    • 3 connecteurs d'entrée pour des capteurs à gauche
    • 3 connecteurs de sortie pour des actionneurs à droite
    • 1 connecteur dédié à la norme I2C en bas
    Malheureusement, rien n'était disponible sur le stand pour les tester.
    70217018Notons que la calculatrice se connecte via la prise mini-USB basse apporté par la base, et non directement sur la prise micro-USB de la carte TI LaunchPad en haut.
    Peut-être ces deux prises sont-elles tout simplement reliées électriquement, ce qui permet d'utiliser le périphérique directement avec le câble mini-USB fourni avec les calculatrices neuves.
    Sous cette hypothèse, il y aurait possiblement dans cette base un filtre de protection, au cas où l'on branche les deux connecteurs d'alimentation USB.

    Le haut présente aussi un connecteur Bread Board 2x10 broches, et le bas un capteur de lumière (LIGHT SENSOR).

    Des programmes étaient également disponibles pour démontrer les capacités de ce dernier capteur :
    • Le programme BRIGHT affiche et rafraîchit en permanence la valeur de luminosité mesurée :
      70167015
      Code: Tout sélectionner
      EffÉcran
      Disp "TO STOP/BREAK PROGRAM"
      Disp "APP [ON] REPEATEDLY"
      Wait 3
      While L≥0
         Send("READ BRIGHTNESS ")
         Get(L)
         Output(5,13,L)
      End

      Nous observons ici dans quel contexte utiliser l'instruction Get( déjà existante pour récupérer une valeur sur le TI-Innovator.
    • Le programme BRGHTDAT permet d'enregristrer dans une liste les valeurs de luminosité mesurées au cours d'une expérience, à des fins d'étude ultérieure avec un tableau de valeurs ou un graphique :
      7011
      Code: Tout sélectionner
      0→dim(L₁)
      0→dim(L₂)
      For(N,1,100)
         Send("READ BRIGHTNESS ")
         Get(B)
         N→L₁(dim(L₁)+1)
         B→L₂(dim(L₂)+1)
         Disp N,B
         Wait .1
      End


    • Enfin le programme CONTROL hélas ici incomplet, permet de déclencher une action programmée selon que la luminosité franchisse ou pas un certain seuil :
      7028
      Code: Tout sélectionner
      0→N
      While N<100
         Send("READ BRIGHTNESS ")
         Get(B)
         N+1→N
         EffÉcran
         Disp N
         Disp B
         If B≤5
         Then
            ...
         Else
            ...
         End
         ...
      End


      7026Crois-tu que nous en avons terminée ? Oh que non, le TI-Innovator nous réserve un dernier secret au dos. ;)
      Déjà nous y apprenons que l'échantillon en démonstration est un prototype DVT, issu donc de la 3ème des 4 phases précédant la commercialisation selon la classification du musée Datamath :
      1. PROTO
      2. EVT (Engineering Validation Test)
      3. DVT (Design Validation Test)
      4. PVT (Production Validation Test)
      5. MP (Mass Production)
      Cela confirme donc que l'on est très près du lancement, les prototypes DVT étant habituellement quasiment identiques matériellement et logiciellement aux modèles MP commercialisés, les derniers ajustements concernant alors plutôt l'esthétique.

      Mais surtout, nous y découvrons que la base rajoute également un haut-parleur.
      Là encore des programmes étaient disponibles pour tester, même si dans le contexte du salon l'écoute n'était pas aisée :
      • Le programme SOUND permet de jouer une note dont on précise la fréquence et la durée :
        7037
        Code: Tout sélectionner
        Repeat F=0
           Input "Frequency?",F
           Input "Duration?",T
           Send("SET SOUND eval(F) TIME eval(T))")
           Wait T
           EffÉcran
        End

      • Enfin, le programme SONG nous joue un petit air de musique bien connu : :bj:
        70367035
        Code: Tout sélectionner
        {260,262,294,262,349,330,260,262,294,262,392,349,260,262,523,440,349,348,330,294,466,465,440,349,392,349}→L₁
        {4,4,2,2,2,1,4,4,2,2,2,1,4,4,2,2,4,4,2,1,4,4,2,2,2,1}→L₂
        0→K
        1→T
        For(I,1,dim(L₁))
           Send("SET SOUND eval(2^(K/12)*L₁(I)) TIME eval(T/L₂(I))")
           Wait T/L₂(I)+.05
        End

        Seras-tu capable de deviner ce que ça joue ? ;)
        Sois le premier à le poster en commentaire !
Lien vers le sujet sur le forum: Découvre la programmation TI-Innovator sur 83 Premium CE 5.2 (Commentaires: 13)

-
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.
1392 utilisateurs:
>1363 invités
>24 membres
>5 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)