Bonjour j ai de nouveau un probleme avec leTComport...
En fait je relie le port COm a un telephone portable. Ce dernier m envoie une chaine de caractere . Si au bout d un certain temps je n ai pas repondu.. il me renvoit une autre ....
J ai essayé de faire une boucle du genre:
static boolean aquisition_com2_en_cours=false;
if (aquisition_com2_en_cours==false)
{
aquisition_com2_en_cours=true;
temps_com2_deb=toto.CurrentDateTime();
temps_com2_fin= toto.CurrentDateTime();
ReceptionCOM2_en_cours="";
while ((temps_com2_fin-temps_com2_deb)*24*60*60*1000<300.0)
{
if (ComPort2->InputCount()>0)
{
ComPort2->ReadStr(temp,ComPort2->InputCount() );
ReceptionCOM2_en_cours=ReceptionCOM2_en_cours+temp;
temps_com2_deb=toto.CurrentDateTime();
}
temps_com2_fin= toto.CurrentDateTime();
ou 300 correpondait je pensais au temps en ms sec .Cela marchotte.. mais je n ai pas a 100 % une trame complete sans coupure...
En fait pour shematiser
je penser que c etait un truc du genre:
AA BB CC EE
GG UU DD ZZ
Entre AA et BB je partais de l hypothese que le temps etait tres petit et qu entre EE et GG plus long (300 ms)
En fait je recois la trame sous la forme:
AA BB CC EE GG
UU DD ZZ
En resumé je n arrive pas a detecer la fin dereception pour analuyser ma trame
Quelqu un a des idees??
J ai pensé a utilisé OnRxBuf... mais je ne sais pas comment faire il me dit property not compatible.....
merci

 

 
		
		 
        

 
			
			

 
   


 Pb sur TComPORT par rs232
 Pb sur TComPORT par rs232
				 Répondre avec citation
  Répondre avec citation



 
			
Partager