begin process at 2010 02 10 03:43:56
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Périphériques

 > PORT COM (RS232) SUPER SIMPLE DANS UNE CLASSE

PORT COM (RS232) SUPER SIMPLE DANS UNE CLASSE


 Information sur la source

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Périphériques Classé sous :rs232, port, com, classe, class Niveau :Débutant Date de création :09/09/2005 Vu / téléchargé :17 933 / 3 948

Auteur : misterzinzin

Ecrire un message privé
Site perso
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

 Description

ce code n'est en fait qu'une reprise d'un code fait en c par ymca2003
http://www.cppfrance.com/code.aspx?id=224 41

remis sauce c++ (dans une classe)

avec qq option en plus comme choisir la vitesse du port et un debut (je l'ai ecrit en une soirée) de gestion des erreur par exeception
j'ai aussi ajoute un fonction membre qui renvoit le nombre d'octets en attente dans le buffer
cf commentaire de ymca2003
tout en modifiant le code pour qu'il prenne en compte les port comm>9 (cf http://www.cppfrance.com/forum.v2.aspx?id=510518 resolu par sylwae

Source

  • dans le zip (com.h et com.cpp + un exemple...)
dans le zip (com.h et com.cpp + un exemple...)

 Conclusion

je n'ai pas eu le temps de tester(rien a brancher sur le port com)... mais je fait confiance aux personnes qui ont codé ces lignes de code (j'ai fait bcp de copier coller...)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   class port comm
  •   main
    • main.cppTélécharger ce fichier [Réservé aux membres club]Voir ce fichier1 767 octets
    • main.dspTélécharger ce fichier [Réservé aux membres club]Voir ce fichier3 533 octets
    • main.dswTélécharger ce fichier [Réservé aux membres club]Voir ce fichier533 octets
    • main.ncbTélécharger ce fichier [Réservé aux membres club]50 176 octets
    • main.optTélécharger ce fichier [Réservé aux membres club]53 760 octets
    • main.plgTélécharger ce fichier [Réservé aux membres club]1 132 octets

Télécharger le zip


 Sources du même auteur

Source avec Zip Source avec une capture CLASS PATCH

 Sources de la même categorie

Source avec Zip Source avec une capture [DEV-C++] GESTION DU PORT PARALLÈLE par victorcoasne
Source avec Zip Source avec une capture FAIRE GLISSER LA SOURIS par shorzy
Source avec Zip COMMUNICATION RS232 VIA PORT COM par MadMax1024
Source avec Zip Source avec une capture EXTINCTION ET REDEMARRAGE DE VOTRE MONITEUR À UNE HEURE PRÉC... par Yost
ÉTEINDRE ECRAN SOUS WINDOWS par kiki67100

 Sources en rapport avec celle ci

Source avec Zip GSTRING - GESTION DES CHAINES DE CARACTÈRES par Neokript
Source avec Zip CLASS DE DIALOGUE RS485 / RS232 SOUS LINUX par Astalavista
Source avec Zip CLASSE DE CONTRÔLE DES PORTS COM par gergalp
Source avec Zip Source avec une capture PORT COM ENUM par BruNews
Source avec Zip UTILISATION DU PORT COM ENTRE UN PC ET UN POCKET PC par PurpleHeart2

Commentaires et avis

Commentaire de KaYaStar le 09/03/2006 13:16:44

Et sous linux, personne ne sait comment on fait?
Svp
car je dois récupere les données d'une centrale météo via la liaison rs 232, mais pas moyen !
Merci de votre aide

Commentaire de misterzinzin le 09/03/2006 13:22:36

person je n'ai jamais fait
mais essaye d'ouvrir le fichier "/dev/ser0" ou qq chose dans le genre
et des read write pour envoyer et recevoir des data... comme un simple fichier
ps: si ca marche previent nous ;-)

Commentaire de ben_34_ le 03/04/2006 17:35:47

Bonjour,

D'abord félicitations pour ce code qui est clair et facile d'emploi.

Cependant j'ai un petit problème: je souhaite envoyer et recevoir des données par le port série. Ces données peuvent prendre toutes les valeurs en Hexa, or certaines valeur stoppent l'envoi ou la réception de données. Par exemple on ne peut pas envoyer x"00" (en hexa) ou le recevoir.
Y-a-t-il un moyen simple pour contourner ce problème? Je pense qu'en changeant certains paramètres de com.c on doit y parvenir. J'ai essayé plusieurs changements sans succès? Auriez-vous une idéee?

En vous remerciant, Benoît

Commentaire de khachine le 21/04/2006 18:36:54

C'est un simple outil, mais is est trés interessant.
Une petite question, comment faire pour envoyer le caractère de retour à la ligne. Merci  

Commentaire de ludolechinois le 06/06/2006 12:25:37

Bonjour,
Veuillez m'exuser je n'ai pas pris le temps de lire cette source (il est 18h10 en chine). J'essaierai de prendre le temps demain. J'ai fait une source egalement pour la liaison serie avec un decodage de trame (dedie a mon application carte PIC18f452 + logiciel en c++ builder 6, mais j'ai mis en ligne uniquement la classe RS232 avec un exemple de decodage asaiement modifiable). Sans doute que le source est moi propre que celui ci car je suis debutant.
Pour repondre a  BEN_34 je trouve ca bizarre car avec mon prog je n'ai aucun probleme pour recevoir des 0 (pas fait de test en emission). Normallement c'est le parametre g_dcb.fNull=FALSE; false veut dire que l'on accepte les caracteres 0. Par contre je voit dans ce source que l'on gere le RTS et le DTR. Explique plus en detail ton probleme et je t'aiderai si je peux.
Pour repondre a KHACHINE je crois que c'est 0x0A ou 0x0D (un est retour a la ligne et l'autre est saut de ligne) je ne me souviens plus de memoire. Mais regarde sur internet la table ACII et tu auras la reponse.
Mon source http://www.codes-sources.com/code.aspx?ID=37844

Commentaire de ben_34_ le 09/06/2006 10:23:03

Bonjour,
Merci du conseil je vais essayer de changer ce paramètre.
Mais mon problème ne vient pas que des zéros, il y a aussi d'autres octets que je ne peut pas envoyer sous peine de fermer la liaison série. Par exemple Ox0A, ou la plus part des octets commençant par 0. Je voudrais pouvoir envoyer n'importe quel octet sans qu'il soit interprété comme une fin de tramme, ou un caractère spécial.

Commentaire de ludolechinois le 09/06/2006 10:58:32

Bonjour,
Va jeter un coup d'oeil sur mon source. J'ai fait ma propre class pour la gestion serie, mais en plus il y une fonction pour decodage de trame pour mon application. Peut etre que cela peut te donner une idee. Je recoi toute sorte de caractere y compris commencant par 0. Pour l'envoyer c'est normalement pareil mais je n'ai pas fait de test. sinon envoie moi ton prog j'y jeterai un coup d'oeil ce week end.
Explique ce que tu veux faire avec ton prog.
Mon source http://www.codes-sources.com/code.aspx?ID=37844

Commentaire de pauldovan le 23/03/2009 17:45:09

Salut !

J'ai téléchargé ton code, mais je n'arrive pas à le compiler... Mon compilateur (Visual Studio 2008 sous Vista 32 bits) ne trouve pas le fichier fstream.h.

J'ai essayé pendant deux heures de le faire compiler, mais ça ne fonctionne pas.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

petit pb de classe~~ [ par lerilcy ] Bijour a tous... J'ai declare une classe "CBloc" comme il faut (enfin je pense)class CBloc{...}et dans le code des procedures (bloc.cpp): le compilate classe et agregation... [ par Clonk ] bonjour,j'utilise plusieurs classes ayant des agregations (sous Borland).Disons en gros que si on a :class personne{private:int age;public:void affich probleme sur les class [ par JRB ] g trouve un cour sur les applications reseaux mais il manque des explications si quelqu'un pourrait me les apporrtais sa serais super je cherche a ajo port COM, RS232 ou UART! [ par zenetcalme ] bonjour a tous,je developpe un logiciel qui communique avec le port RS232, et qui est diffusé sur un grand nombre de machine. j'arrive tres bien a com CwinThread urgent [ par langedechu ] Bonjour,J ai un prob avce la classe CWinThread (je vais cracker si je n arrive pas le résoudre).Bon je m'explique : j ai creer une la classe : class c communication port COM [ par nmeunier ] Bonjour à tous !Je suis actuellement en stage dans une entreprise ou personne ne peut vraiment m'aider...;-(J'ai récupéré des sources en turbo C d'un template [ par ifren ] salutje veux utilise une classe D utilisant une variable qui peut etre double ou string, je deirve de cette dernier deux autre class Dnum et Dstrpour accéder à une variable globale type "class" ? [ par ilimo ] bonjour,comment accéder à une variable globale type "class" dans un autre fichier ?voici exemple plus détaillé : 1- //fichier CC.h-------------------- programme c/c++ pour gestion port rs232 [ par dambeaufort ] Bonjour a tousJe suis actuellement en train de developper un programme sous visual c++ qui devrait me permettre de dialoguer avec un port rs232. quelq demande d'aide Cherche interception sur RS232 port serie [ par chemins_hermes ] Bonjour tout le monde.je cherche a pouvoir intercepter tout ce qui sort ou rentre par le port RS232 (port serie). et a le mettre dans un fichier log.c


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales