Accueil > Forum > > > > liaison série 9 bit (rs232)
liaison série 9 bit (rs232)
mardi 12 février 2008 à 18:13:19 |
liaison série 9 bit (rs232)

Francois F
|
Bonjour à tous,
Je voudrais savoir s'il y en a qui ont déjà utilisé une liaison série avec un protocole 9 bit.
Pour l'instant j'utilise l'API de windows à partir de delphi. Ca marche très bien avec 8 bit.
Il existe bien le paramètre ByteSize mais il est limité à 8 bit.
BYTE ByteSize; // number of bits/byte, 4-8
Le "protocole" 9 bit est simplement un bit supplémentaire que l'on ajoute au 8 bit du byte. Je m'en sers pour faire une communication sur un bus multiprocesseurs (carte à microcontrolleur). Le 9ième bit sert à indiquer si on envoie une donnée ou une adresse, ce qui permet, au niveau des cartes esclaves de travailler sur interruption lorsqu'on reçoit une adresse (9ième bit ou bit 8 = 1) (bit 8 car le 1er bit est le bit 0à) et de ne pas être interrompu par les données (bit 8 = 0), ce qui simplifie fortement le programme.
Donc je me demande s'il y a une astuce pour le faire avec l'api de windows ou s'il existe un composant à ajouter qui permettrait de le faire.
D'avance, merci  François F.
|
|
mardi 12 février 2008 à 19:30:32 |
Re : liaison série 9 bit (rs232)

lo_63
|
voici une trame serie donc si la parité est up donc tu as 9 bits j'espere que ca pourra d'aider
|
|
mercredi 13 février 2008 à 04:12:40 |
Re : liaison série 9 bit (rs232)

f0xi
|
stock dans un word ... word -> valeur and $01FF => 9bits
|
|
mercredi 13 février 2008 à 09:00:36 |
Re : liaison série 9 bit (rs232)

Francois F
|
lo_63, j'ai pensé aussi au bit de parité, en utilisant une parité mark ou space.
Le problème c'est qu'il faudrait, chaque fois passer par le Setcomstate et de changer le type de parité à chaque fois que l'on désire changer le bit 8. càd:
if GetCommState (hPort,dcbCom) then begin dcbCom.Baudrate:=baudrate; //baudrate dcbCom.ByteSize:=8; dcbCom.Parity:=Byte(Parity); dcbCom.Flags:=0; SetCommState (hPort, dcbCom); end;
Ce qui me gène c'est que je ne sais pas si c'est le plus efficace (est-ce que le changement peut fonctionner suffisamment rapidement ou y a-t-il un delai qui correspond au temps d'émission de plusieurs byte, qu'est-ce qui se passe si je fais le changement et que le buffer est plein?
Je pensais qu'il y avait moyen de passer par la EscapeCommFunction, pour changer la parité, comme on le fait pour lire ou écrire les lignes d'entrée - sortie du port.
command:=SETDTR;
if (EscapeCommFunction (form1.hPort,command)=false) then MessageDlg ('Error changing signal : '+#13+#10+SysErrorMessage(GetLastError), mtError,[mbOk],0);
A tester pour voir si ça fonctionne.
f0xi, je suppose que tu veux dire envoyer 2 bytes et de n'utiliser qu'un bit pour le 2ième. Si c'est ça, le problème est que la structure n'est pas correcte (elle n'est pas changée, toujours start bit + 8 bit + 1 bit de stop. De plus je ne maitrise pas l'analyse des données au niveaux des cartes esclaves à microcontrolleurs car l'usart (dispositif qui s'occupe de la liaison série) est en hardware, ce qui signifie que je ne sais rien changer moi même puisque graver dans le silicium.
Merci pour vos réponses
|
|
vendredi 15 février 2008 à 15:06:02 |
Re : liaison série 9 bit (rs232)

lo_63
|
bonjour
Pour ce qui est des interface serie j'utilise plutot un composant le 'TComPort' ou tu peux changer a la volée les parametres.
[ Lien ]
En plus dans ce source tu as plusieurs exemple qui sont simple.
Pour le buffer il faudrai faire une vérification avant de changer d'etat.
Comme je connais pas le hardware que tu utilise ni l'application ca etre difficile pour moi pour te donner un mode operatoire pour ton source.
voila Mick
|
|
Cette discussion est classée dans : série, byte, rs232, liaison, bit
Répondre à ce message
Sujets en rapport avec ce message
Capture PORT RS232 [ par LaurentGrob ]
Je cherche un soft ou mieux une source permettant d'éffectuer la capture des données arrivant sur un port RS-232 et qui les mettent dans un fichierJe
Liaison série [ par Quinten ]
Je veux savoir comment créer une application en Delphi pour communique avec des circuits électroniques via le port série de l'ordinateur.Merci d'avanc
liaison serie delphi 2010 Automate [ par jspawn ]
Tout d’abords bonjour, Voila je vous expose mon problème, je veut faire une communication avec une liaison série entre Delphi 2010 et un automate tel
Convertir des caractères recus sur port série [ par JoSyl ]
Bonjour,J'ai fais des recherches, mais je n'ai pas trouvé ce que je voulais alors voici ma question :Je recois une série de caratères sur un port séri
delphi liaison entre 2 tdblookupcombobox [ par towtue ]
bonjour, Je voudrais savoir comment faire une liaison entre 2 tdblookupcombobox. Car j'ai fait un programme en delphi sur une base de donnée de progra
rs232 delphi sauvegarde [ par youss31 ]
please,please c urgentslt ts le monde je veut savoir comment configure (programmer) en delphi afin de recuperer des donner(valeur) par le rs232 et le
Son wave avec nombre de bit par échantillon = 16 [ par airefrais ]
Bonjour à tous,ça fait un long moment que j'essaye de produire produire un fichier wave qui a 16 pour nombre de bit par échantillon et puis de lire ce
Checksum 32 bit [ par Smith4400 ]
slt,j'ai trop chercher mais j'ai pas trouvé auccune choses sur le "Checksum 32 bit" et pas "CRC32" pouvez-vous m'aider???Je cherche une fonction pour
supervision d'équipement [ par hyacinthe11 ]
salut à tous, je veux concevoir une application de supervision d'équipements par port série.cela va consister à recevoir des information sur l'état de
De Delphi 2007 vers Delphi 2010 [ par benfluorex ]
Bonjour, Je ne comprend pas bien le fonctionnement de la fonction suivante qui vient de l'unit AxCtrls (ActiveX Controls Unit Copyright (c) 1995,99 I
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : PLEINIèRE SECOND JOURTECHDAYS PARIS 2012 : PLEINIèRE SECOND JOUR par ROMELARD Fabrice
Après une première journée dédiée aux développeurs, cette seconde journée est dédiée au monde des entreprises et de ses applications. Ainsi, cette pleinière est dédiée à faire un 360 de l'évolution des applications Business aux demandes ac...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : RETOUR D'EXPéRIENCE SUR LA MISE EN PLACE D'UN CLOUD PRIVéTECHDAYS PARIS 2012 : RETOUR D'EXPéRIENCE SUR LA MISE EN PLACE D'UN CLOUD PRIVé par ROMELARD Fabrice
Speaker : Guillaume Rochette Cette session est dédiée à fournir le retour sur la mise en place d'un cloud privé (IaaS) par Osiatis pour son compte ou celui de ses clients. Ce projet s'est déroulé sur 4 mois et a permis de faire évoluer...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : COMMENT SHAREPOINT A SAUVé MES TECHDAYSTECHDAYS PARIS 2012 : COMMENT SHAREPOINT A SAUVé MES TECHDAYS par ROMELARD Fabrice
Speakers : Lionel Limozin et Alain Marty La session commence par une découverte de SharePoint à travers la mise en place d'un environnement SharePoint pour la gestion des Sessions animées par BeWise. Le besoin est très ba...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice PERSPECTIVE 3.0 POUR SILVERLIGHT 5.0PERSPECTIVE 3.0 POUR SILVERLIGHT 5.0 par odewit
Je viens de publier la version 3.0 de Perspective pour Silverlight, qui regroupe un portage sous Silverlight 5.0 des fonctionnalités de Perspective 2.0, le framework 3D de haut-niveau introduit récemment et de nouveaux exemples de code. En voici la li...
Cliquez pour lire la suite de l'article par odewit TECHDAYS PARIS 2012 : MYTHES ET RéALITéS VIRTUALISATION ET CLOUD PRIVéTECHDAYS PARIS 2012 : MYTHES ET RéALITéS VIRTUALISATION ET CLOUD PRIVé par ROMELARD Fabrice
Speakers : Christophe Dubos et Fabrice Meillon La Session est dédiée à casser la réputation que Microsoft traine sur son incapacité à fournir des solutions de Cloud privé. La session a commencé par un retour sur la puissance des DataCent...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|