Eric MILLOZ

Débuter avec la carte COMIO.



Sommaire


Hardware

Software

Expérimentation:

Téléchargement Comio pour Linux.



Hardware

Pour l'instant j'utilise une carte Entrées/Sorties COMIO (on en trouve dans le catalogue Conrad dans les librairies ou sur l'internet Ă 
http://www.conrad.fr
Lien sur la carte. EAN: 5413424660203

http://www.selectronic.fr

Code article 063552-62, qui pour 41 Euros (en 2001) permet de disposer de 8 sorties digitales et 4 entrées digitales (tout ou rien).
Cette carte s'interface sur le port parallèle du micro-ordinateur par la prise DB25 (sur la photo tout en haut).

Photo de la carte :

Récapitulons les Entrées/Sorties de votre micro-ordinateur avec la carte COMIO et une carte son.

La carte Comio :

les 4 entrées (à gauche sur la photo, repĂ©rĂ©es ABCD).
8 Sorties.
La carte Son :

4 entrées numériques sur le port joystick.

2 entrées analogiques joystick. (utilisation thermomètre, hygromètre, asyouwantmètre)

total : 10 entrées dont 2 analogiques et 8 sorties

Tout cela ouvre une perspective de branchement assez importante et si cela ne suffit pas on peut rajouter le même dispositif sur un autre port parallèle, c'est-à-dire que l'on multiplie par deux ces chiffres.
(on peut brancher jusqu'Ă  trois cartes ports parallèles sur un micro-ordinateur de type PC.)


Software


Je me suis orienté vers un système d'exploitation libre de type Linux pour plusieurs raisons.

Fiabilité et robustesse du système.
Facilité de mise en oeuvre et documentation.(Système ouvert, il y a de la documentation sur tout, partout !)
Système sous GPL (GRATUIT lire la GPL sur linux.org)

Faculté de déclencher des événements à des heures précises et/ou Ă  des intervalles rĂ©guliers.
Il n'est pas utile de se servir d'un système gérant le temps réel. (Qnx, Os9, Linux RT...)

Le langage utilisé pour gérer l'interface est Ă©videmment le C et le shell.
Mais si vous ne connaissez pas le C ou que vous n'êtes pas informaticien rompu au langage C, vous pourrez néanmoins utiliser et configurer le tout.

Il y a 2 moyens d'utiliser la carte :
Fonction de la librairie.
  • char *io_comio_erreur(int num_erreur) // renvoi le type d'erreur rencontrée quand la variable erreur>0
  • Init_Es(); // Initialise la carte. Ă  faire au début d'utilisation.
  • Lit_entree(char canal); // renvoi l'état de l'entrée du canal d'une entrĂ©e (A,B,C,D)
  • Sortie_on(int canal); // Met à l'état 1, la sortie canal n (1 Ă  8)
  • Sortie_off(int canal); // Met à l'état 1, la sortie canal n (1 Ă  8)


Expérimentation:


Aujourd'hui les essais sont fait, sans modification (4 entrées et 8 sorties) de la carte, branchée sur le port parallèle.
Le tout fonctionne parfaitement, autant le hardware que le software.
C'est une bonne approche si on veut quelque chose de simple pour dĂ©buter avec une carte Entrées/Sorties.

Ce logiciel ne pilote que la carte COMIO.


Téléchargement Comio pour Linux.


Pour la carte Comio, voici une librairie de gestion des entrées/sorties de la carte COMIO.
Ce programme fonctionne avec le compte root de votre machine.

Après le téléchargement faire :

tar xvf comio.tar

Aprés décompression (tar) du fichier vous avez à l'écran en faisant :

ls -l

es
Nom du programme exécutable
main.c
Sources C de pilotage de la carte. C'est ce fichier que vous devez modifier pour adapter le programme de pilotage de la carte à vos besoins.
io_comio.h
Fichier include qui permet de déclarer les fonctions de la librairie et de pouvoir s'en servir.
Libcio_comio.a
Librairie d'entrées/sorties.
makefile Fichier des règles de compilation pour le programme de pilotage de la carte (compilation de main.c en fichier cible es).  

La compilation de l'exécutable sur votre machine se fait par :
make es

L'exécution se fait en lançant le programme es parr :

./es X X

 

Les paramètres sont :

Pour connaître l'état d'une entrée A,B,C ou D de la carte :
./es e a

Le résultat de la commande sera renvoyé au shell.
0 pour OK , autre chose en cas d'erreur.

Pour afficher l'état de l'entrée il faut que le dernier paramètre 1 permet l'affichage de l'Ă©tat de l'entrĂ©e.
./es e a 1

Pour actionner une sortie de 1 à 8 de la carte :
./es s numéro_de_la_sortie sa_valeur
Numéro de la sortie de 1 à 8.
Valeur 0 ou 1 (0 volt ou 5 volts).

Exemple :
./es 4 1 (sortie 4 à 5 Volts)
./es 3 0 (sortie 3 à 0 Volt)

Fichier tar à télécharger :
comio.tar


© Eric MILLOZ,Graphisme par © N3m0