Pilotes pour un périphériques

Pilotes pour un périphériques - Divers - Linux et OS Alternatifs

Marsh Posté le 02-04-2003 à 05:06:17    

Bonjour
 
un de mes prof veut que je lui écrive un pilotes sous Linux pour un périphérique spécial (un micro-controlleur et des cartes d'asservissements) qui communiquera au PC via le port série.
 
Étant donné que je suis novice en matière de programmation de drivers pour linux, j'ai quelques questions :
 
1) est-ce possible de créer un pilote pour un périphérique qui est branché sur le port série qui est déjà un périphérique (/dev/ttyS0) ? Si oui, comment dire à mon pilote d'envoyer les informations au port série ? Je suis un peu confus...
 
2) Dans ce cas-ci, quelle serait la différence entre écrire un module qui va envoyer les informations sur le port série plutôt que de faire un prog C normal qui envoit directement au port série (avec les fonctions open, write, close) ?
 
3) Pour appeler une fonction spéciale dans un module, on peut faire un ioctl() d'après ce que j'ai compris. Ce que je comprends mal c'est comment spécifié le fonction que l'on désire appeler s'il y en a plusieurs.
 
Merci beaucoup de votre aide.


---------------
Je suis un franco-canado-québécois d'origine française de l'Amérique du nord francophone.
Reply

Marsh Posté le 02-04-2003 à 05:06:17   

Reply

Marsh Posté le 02-04-2003 à 05:43:20    

1) biensur, sinon imagine ceux qui ecrivent des pilotes pour cartes PCI qui necessite le pilote du controleur PCI entree autres ;)
 
2) Le module s'appel un driver "KernelMode" le second, "UserMode"
Le 1er devient une partie du noyau, le second s'apprente a une simple application lancer par un utilisateur.
(bon exemple que celui du driver ECI Hifocus USB, les actuels versions sont "UserMode", et ils commencent le developpement du driver KernelMode (dispo via CVS), tu peut les analyser pour comprendre les differences :)
 
3) c'est trop pour moi ;)

Reply

Marsh Posté le 03-04-2003 à 00:46:52    

Ok, donc je peux ouvrir le port série ( avec la fonction open("/dev/ttyS0" )) normalement sans problème même à partir d'un module ?


---------------
Je suis un franco-canado-québécois d'origine française de l'Amérique du nord francophone.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed