Utilisation d'une TI 84 en terminal
From Eric
m |
m |
||
Line 24: | Line 24: | ||
Naturellement, on trouve bien des montages sur internet : | Naturellement, on trouve bien des montages sur internet : | ||
- | * Le [http://www.ftp83plus.net/frame.htm montage original utilisé dans la calculatrice]. | + | * Le [http://www.ftp83plus.net/frame.htm montage original utilisé dans la calculatrice] : |
+ | [[File:tilink-original.jpg|400px|thumb|none]] | ||
* Le fameux [http://jonimoose.net/calcstuff/tilp/docs/linkguide/cable.html#ser $4 serial link] (et d'autres solutions) dont voici le schéma : | * Le fameux [http://jonimoose.net/calcstuff/tilp/docs/linkguide/cable.html#ser $4 serial link] (et d'autres solutions) dont voici le schéma : | ||
- | [[File: | + | [[File:tilink-4-dollars.jpg|400px|thumb|none]] |
* Le modèle de [http://sami.ticalc.org/e_plink.htm Sami] qui utilise un microcontrôleur. Voici le schéma : | * Le modèle de [http://sami.ticalc.org/e_plink.htm Sami] qui utilise un microcontrôleur. Voici le schéma : | ||
- | [[File: | + | [[File:tilink-sami.jpg|400px|thumb|none]] |
Revision as of 11:57, 16 June 2012
Contents |
Objectifs
L'objectif est d'utiliser une calculatrice TI82-stats comme terminal de debug de mes montages à microcontrôleurs, en lieu et place de mon vieux portable.
En pratique, il va s'agir de réaliser une petite interface matérielle et logicielle permettant de transformer un flux au format électrique et logique "texas" en en flux au format RS232 TTL.
Réalisation
Adaptation des signaux électriques
La calculatrice dispose de deux ports bidirectionnels en collecteur ouvert (fil rouge et fil blanc). La transmission d'un bit se fait en positionnant l'un des fils au niveau haut et en récupérant l'accusé de réception sur l'autre fil. Il semble que les niveaux soient TTL.
On trouvera ici une description des signaux. Le protocole physique est le suivant :
<à compléter>
L'interface hardware est chargée de transformer le flux en provenance de la calculatrice en un flux série standard. L'idée est d'utiliser un port d'entrée et un port de sortie par fil (on pourrait n'utiliser qu'un port par fil mais : ça complique vaguement le logiciel et n'importe quel microcontrôleur disposant de voies d'entrées / sorties série dispose aussi d'un nombre plus que suffisant de ports.
L'interface matérielle est la suivante (c'est un peu luxueux, on pourrait faire plus simple) :
Naturellement, on trouve bien des montages sur internet :
- Le fameux $4 serial link (et d'autres solutions) dont voici le schéma :
- Le modèle de Sami qui utilise un microcontrôleur. Voici le schéma :
Le logiciel
Du côté de la calculatrice, il va s'agir de transmettre et recevoir des flux émis par le micro-contrôleur. La calculatrice dispose de fonctions (en basic) permettant de transmettre une variable, une liste, etc. Cependant, ces données sont transmises selon un protocole particulier qui permet (notamment) de connaître la nature du flux, sa taille, etc. On trouve de l'information sur le format de trames sans avoir à faire trop de rétro-ingénierie, par exemple [<à completer> ici].
Or, si je veux utiliser la calculatrice comme un terminal, je veux pouvoir émettre et recevoir des flux composés uniquement d'octets "utilisateur". La solution consiste à implémenter dans l'interface un bout de logiciel qui va convertir un format dans l'autre. C'est faisable, assez simple, mais il y a plus simple.
On peut en effet piloter directement, "à la main", l'interface matérielle de la calculatrice, mais il faut alors faire un peu d'assembleur Z80. On trouvera dans la rubrique Programmation assembleur de la TI84 Stats quelques explications sur les outils à utiliser et la façon de les utiliser... Le pilotage est assez simple car il se résume à des quelques "in" et "out" sur le port adéquat. Voici, par exemple, le bout d'assembleur Z80 qui réalise les opérations d'émission et de réception d'un octet :
<à compléter>
Conclusion
Voici le résultat :
<à compléter>