Archives du mot-clé Clavier

Programmer le pic CMS, pour contrôler le clavier

Nous avons utilisé un pickit2 afin de programmer le pic CMS.

pickit

On programme le pic une fois soudé sur le circuit. On positionne le pickit sur les pins de programmation prévues à cet effet sur le pcb du circuit. Je rappelle au passage comment à été câblé le connecteur de programmation en conformité avec la doc du pickit2 : il s’agit du connecteur P2 ci-dessous.picProg1picProg2

 

Afin d’uploader le programme sur le pic, nous avons suivi les instructions présentes sur la documentation ubuntu.

Continuer la lecture

Second circuit imx233 avec kicad

Étant donné l’échec du précédent circuit, nous avons décidé de recommencer de zéro en suivant les différents conseils qui ont pu nous pu être donnés sur ce thread. Ce nouveau circuit sera en 4 couches afin de faciliter le routage. Nous avons également décidé de passer la ram sur la couche du dessous afin de faciliter le routage.

Nous avons finalement utilisé la même technique qu’olimex concernant les condensateurs de découplage, c’est à dire remplacer les 33uF par plusieurs 22uF qui contrairement à ces derniers se trouvent dans un format 0805.

shemasProto1.2

Cette fois ci, l’adaptation des longueurs de pistes pour la liaison avec la ram a été réalisée grâce au patch de kicad que nous avons nous même développé (voir cette branche kicad , ce rapport de bug kicad, cette vidéo youtube)

Le routage a cette fois ci été réalisé avec beaucoup plus de précautions, notamment :

*Tous les angles sont à 45 degrés.
*Les condensateurs de découplage sont très proches du imx et de la ram et beaucoup mieux agencés.
*Les pistes de puissance sont plus larges là où cela est possible.

La bobine utilisée est désormais une inductance de puissance et non une inductance RF, comme sur l’ancien circuit. Cette fois nous n’avons pas fait l’impasse sur certains condensateurs comme c’était le cas pour le circuit précédent.
circuitProto1.2

Le circuit contient également un clavier de 49 touches, et un PIC 16f722 qui servira de contrôleur clavier. Il sera alimenté par le 3.3v que sort la imx233 et communiquera avec cette dernière en UART. Un interrupteur est tout de même présent entre afin d’isoler le pic du reste du circuit lors de sa phase de programmation.

Nous n’avons pas résisté également à exporter le model 3D généré par les dernières versions de kicad, et faire un rendu avec le tout nouveau moteur de rendu cyclesboard2

Nous envoyons en production. Nous avons hâte de souder ce circuit et espérons de tout notre cœur que linux bootera enfin!

Télécharger les sources du circuit.

Réalisation du clavier

Premier proto clavier

Le clavier est un élément important. Notre calculatrice est avant tout un ordinateur embarqué, il lui faut donc un clavier complet pour ne pas limiter l’usage qu’on pourrait en faire. Pour la disposition des touches, l’idéal serait de reprendre le layout d’un clavier Azerty, type IBM PC, et de retirer les touches qui ne sont pas indispensables. Par contre, ce layout n’est pas adapté à l’utilisation « calculatrice ». Dans ce mode, il faudrait que les touches numériques et les touches correspondant à des fonctions mathématiques soient facilement accessibles. On réalisera cela avec un layout supplémentaire sur le clavier, et ce layout sera activé au moyen d’une touche spéciale.

Passons maintenant à la technique ! Pour réaliser notre clavier, il nous faut :

  • De quoi capter les frappes de l’utilisateur
  • De quoi transmettre ces signaux au microprocesseur de la board
  • Depuis l’OS, savoir associer une frappe à un caractère, et savoir gérer les touches spéciales (CTRL, SHIFT, MAJ…)

Continuer la lecture