Communiquer avec du matériel externe

Communiquer avec du matériel externe - C - Programmation

Marsh Posté le 13-09-2007 à 17:35:34    

Bonjour,
 
C'est sans doute une question qui vas vous paraître simple mais je galère sur internet depuis un boût de temps pour trouver des articles là dessus qui ressemblent à autre chose qu'à un cours théorique ne disant pas du tout comment il faut s'y prendre pratiquement.
 
Je m'explique : dans le cadre d'un projet nous devons établire une communication radio entre un robot ("hand maid" ) et un ordinateur et entre une télécommande et un ordinateur. Les deux sont commandés par un signal tout ou rien de plusieurs dizaines hertz de fréquence.
 
La question est :
- Comment programmer en C/C++ quelque chose qui sorte et reçoive des signaux éléctriques sur un bus parralèle ou USB ?
- Comment transformer ces signaux en signal tout ou rien 5 ou 10V de période variable ?
 
Si vous avez des liens qui expliquent pratiquement comment s'y prendre (tutorials, autre projets...) ça serai super super sympa.
 
Merci.

Reply

Marsh Posté le 13-09-2007 à 17:35:34   

Reply

Marsh Posté le 16-09-2007 à 10:26:33    

ttibot a écrit :

Je m'explique : dans le cadre d'un projet nous devons établire une communication radio entre un robot ("hand maid" ) et un ordinateur et entre une télécommande et un ordinateur. Les deux sont commandés par un signal tout ou rien de plusieurs dizaines hertz de fréquence.
 
La question est :
- Comment programmer en C/C++ quelque chose qui sorte et reçoive des signaux éléctriques sur un bus parralèle ou USB ?
- Comment transformer ces signaux en signal tout ou rien 5 ou 10V de période variable ?
 
Si vous avez des liens qui expliquent pratiquement comment s'y prendre (tutorials, autre projets...) ça serai super super sympa.


Pour USB, je ne sais pas, mais pour le port // (imprimante) c'est simple si on dispose d'un accès (pseudo-)direct aux registres du port.
 
Pour ça, il faut quelques connaissances:  
 

  • Le port // du PC : registres, fonctions...
  • Connaitre l'adresse de base du port //de ta machine (ça dépend du système)
  • Savoir utiliser un moyen logiciel pour accéder aux ports I/O de ta machine (ça dépend du système).


Pour aller plus loin, il faut donc préciser quel est le système de ton PC. (je sais faire avec Windows XP)


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 16-09-2007 à 10:33:34    

Pas testé, mais on m'avait parlé de winio:
http://www.internals.com/utilities_main.htm
 
pour le port parallèle.


---------------
Töp of the plöp
Reply

Marsh Posté le 16-09-2007 à 10:36:22    

_darkalt3_ a écrit :

Pas testé, mais on m'avait parlé de winio:
http://www.internals.com/utilities_main.htm

 

pour le port parallèle.


Tant qu'on ne sait pas quel est son système, difficile de donner une réponse utile...

 

Message cité 1 fois
Message édité par Emmanuel Delahaye le 16-09-2007 à 10:36:37

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 16-09-2007 à 11:24:53    

Emmanuel Delahaye a écrit :


Tant qu'on ne sait pas quel est son système, difficile de donner une réponse utile...
 


Certes. J'ai vaguement supposé que le gars était sous windows.


---------------
Töp of the plöp
Reply

Marsh Posté le 16-09-2007 à 18:09:09    

Merci, oui pour le PC c'est effectivement windows XP, rien n'est définitif pour l'instant mais ça semble la solution la plus simple. Le seul truc c'est que ça sera un PC portable donc en fait on aura pas de port parallèle. :sweat: Il faudra  faire avec l'USB.

Message cité 1 fois
Message édité par ttibot le 16-09-2007 à 18:14:15
Reply

Marsh Posté le 16-09-2007 à 22:50:25    

Citation :

Figure 2.a. Je prends un char Leclerc ouvrir une porte


---------------
Töp of the plöp
Reply

Marsh Posté le 19-09-2007 à 15:18:16    

Un char leclerc pour 150 € ! J'achète !
Oui c'est sympa comme truc mais on cherche à faire plus simple. C'est un proto donc un programme en C++ (ou en Java au  pire) et un PC portable devraient suffire. On peut y mettre quelques pics pour traiter le signal si il faut mais on vas se limiter à ça. Je voudrai juste savoir comment envoyer et recevoir des signaux tout ou rien sur un port USB de manière à pouvoir les traiter avec le programme. Si quelqu'un connait une bonne librairie ou un site avec des tutorials ça serai super sympa. Merci.
Merci.

Reply

Marsh Posté le 02-10-2007 à 12:05:35    

Je pense que le plus simple à utiliser est le port série et ses signaux d'état en entrée/sortie : RTS/CTS, DSR/DTR et CD. La programmation est assez simple et des exemples/tutos/librairies existent pour un peu tous les systèmes.
Seul truc à faire gaffe : beaucoup de PC récents (surtout les portables) ne sont plus équipés de ports série.

Reply

Marsh Posté le 02-10-2007 à 12:59:15    

ttibot a écrit :

Merci, oui pour le PC c'est effectivement windows XP, rien n'est définitif pour l'instant mais ça semble la solution la plus simple. Le seul truc c'est que ça sera un PC portable donc en fait on aura pas de port parallèle. :sweat: Il faudra  faire avec l'USB.


Alors il y a des solutions externes comme le kit de Velleman VM110


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 02-10-2007 à 12:59:15   

Reply

Sujets relatifs:

Leave a Replay

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