Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1513 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  programme en vba qui envoye des infos au port serie

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

programme en vba qui envoye des infos au port serie

n°1023688
typhoon44
Posté le 24-03-2005 à 17:17:39  profilanswer
 

:??:  
 
bonjour je cherche un programme en visual basic qui permet d envoyer des infos, soit d un fichier txt ou soit d une feuille excel si c est possible,sur un port serie.
est ce possible
je vous remercie :??:

mood
Publicité
Posté le 24-03-2005 à 17:17:39  profilanswer
 

n°1024053
knakes
Posté le 24-03-2005 à 19:27:07  profilanswer
 

Bonne nouvelle pour toi : c'est possible.

n°1024398
nantuko
Posté le 25-03-2005 à 01:57:38  profilanswer
 

Google est ton ami.
Voilà ce que j'ai trouvé: http://www.vbfrance.com/code.aspx?ID=23549.

n°1024467
typhoon44
Posté le 25-03-2005 à 09:54:51  profilanswer
 

nantuko a écrit :

Google est ton ami.
Voilà ce que j'ai trouvé: http://www.vbfrance.com/code.aspx?ID=23549.


je t remercie mais il ne m indique que des programmes pour récuperer des données mais moi je veux envoyer des infos sur le port serie
merci

n°1024622
knakes
Posté le 25-03-2005 à 11:44:54  profilanswer
 

Tu veux faire transiter sur quoi ?
quelle interface derrière le port série ?
 
http://grafikm.developpez.com/portcomm/


Message édité par knakes le 25-03-2005 à 11:52:41
n°1032055
typhoon44
Posté le 01-04-2005 à 08:36:50  profilanswer
 

Bonjour
 
en faite je veux envoyer des infos d 'excel a un automate.la liaison entre c est deux machine est une liaison série rs 485. Donc j ai un programme java qui le fais mais vu que je travaille deja sur excel et vba ca serai mieux de tout faire en vba d excel.
Est ce possible et est ce que vba d excel va supporter ce programme.
je te remercie
tchao
bon week end

n°1035388
AlainTech
Pas trouvé? Cherche encore!
Posté le 05-04-2005 à 10:33:38  profilanswer
 

Ben si déjà tu donnais le listing de ton prog java, on pourrait te le traduire...


---------------
Si on vous donne une info qui marche, DITES-LE!!!! ------ Si vous trouvez seul, AUSSI, votre solution peut servir à d'autres! ------ Je dois la majorité de mes connaissances à mes erreurs!
n°1035510
typhoon44
Posté le 05-04-2005 à 11:54:34  profilanswer
 

AlainTech a écrit :

Ben si déjà tu donnais le listing de ton prog java, on pourrait te le traduire...


ok voila le programme en java
import javax.comm.*;
import com.sun.comm.Win32Driver;
import java.io.*;
import java.util.Enumeration;
 
public class f {
// while (!lu.equals("q" )) {
   private BufferedReader bufRead; //flux de lecture du port
   private OutputStream outStream; //flux d'écriture du port
   private CommPortIdentifier portId; //identifiant du port
   private SerialPort sPort; //le port série
   /**
    * Constructeur
    */
   public f(String port) {
   //initialisation du driver
   Win32Driver w32Driver = new Win32Driver();
   w32Driver.initialize();
   //récupération de l'identifiant du port
   try
    {
    portId = CommPortIdentifier.getPortIdentifier(port);
    System.out.println ("Le port de communication " + portId.getName() + " existe bien " );
   
   } catch (NoSuchPortException e)
   {
    System.out.println ("Le port " + port + " specifie au demarrage n'existe pas" );
   }
   //ouverture du port
   try {
    sPort = (SerialPort) portId.open("UtilisationFlux", 30000);
   } catch (PortInUseException e) {
   }
   //règle les paramètres de la connexion
   try {
    sPort.setSerialPortParams(
     9600,
     SerialPort.DATABITS_8,
     SerialPort.STOPBITS_1,
     SerialPort.PARITY_NONE);
   } catch (UnsupportedCommOperationException e) {
  }
   //récupération du flux de lecture et écriture du port
   try {
    outStream = sPort.getOutputStream();
    bufRead =
     new BufferedReader(
      new InputStreamReader(sPort.getInputStream()));
   } catch (IOException e) {
   }
  }
  /**  
   * Méthode de communication.
   */
  public String communiqueChar(char envoie) {
   String poids = null;
   try {
    //demande de poids
    outStream.write((int) envoie);
    //lecture du poids  
    poids = bufRead.readLine().trim();
   } catch (IOException e) {
   }
   return poids;
   }
 
  public String communiqueString(String strEnvoie) {
   
   String poids = null;
   char envoie = '_';
   try {
     
     //Faire une boucle pour lire chaque caractere du string strEnvoie
     //dans le char envoie
    for (int i=0; i<strEnvoie.length(); i++)
    {  
       envoie = strEnvoie.charAt(i);
     //ecriture du caractere
     outStream.write((int) envoie);
    }
 
    //lecture de la reponse
    poids = bufRead.readLine().trim();
 
   } catch (IOException e) {
   }
   return poids;
  }
 
 
  /**
   * Méthode de fermeture des flux et port.
   */
  public void close(){
   try {
    bufRead.close();
    outStream.close();
   } catch (IOException e) {
   }
   sPort.close();
  }
  /**
   * Méthode principale de l'exemple.
   */
  public static void main(String[] args)throws IOException  
  {
 
   
   if (args.length == 0)
   {
    System.out.println ("Vous devez specifier un port de communication" );
    System.out.println ("Voici la liste des ports existants sur le PC" );
     
    // Initialisation du driver
    Win32Driver w32Driver = new Win32Driver();
    w32Driver.initialize();
    // Recuperation de l'énumeration des ports
    Enumeration portList = CommPortIdentifier.getPortIdentifiers();
    // Affichage des noms des ports
    CommPortIdentifier portId;
    while (portList.hasMoreElements())
    {
     portId = (CommPortIdentifier)portList.nextElement();
     System.out.println (portId.getName());
    }  
 
    // sortie du programme
    return ;
   }  
 
   //Récupération du port en argument
   String port = args[0];
   //Construction de l'interface à la balance
   UtilisationFlux utilFlux = new UtilisationFlux(port);
 
   //"interface utilisateur"
   System.out.println("taper q pour quitter, ou ENTER pour le poids" );
   //construction flux lecture
   
   //lecture sur le flux entrée.
   String ligne;
   try {  
    BufferedReader clavier =
      new BufferedReader(new FileReader("essai" ));
    ligne = clavier.readLine();
 
    while (!ligne.equals("q" ))
                         {
     clavier = new BufferedReader(new FileReader("essai" ));
     System.out.println ("La ligne saisie est : " + ligne);
     System.out.println ("On envoie la chaine sur le port serie :" + ligne);
     String reponse = utilFlux.communiqueString(ligne);
     System.out.println("Reponse recue : " + reponse);
     
   BufferedReader clavie =
    new BufferedReader(new FileReader("essai" ));    
   ligne = clavie.readLine();
    }  
   clavier.close();
   } catch (IOException e) {
   }
   utilFlux.close();    
  }
// }
}
 
je te remercie d avance
Mais apres quelque recherche je me dis qu il existe un moyen avec une commande msncomm, non? a quoi ca sert?
merci encore a+

n°1290955
starconsol​e
Vous n'en reviendrez pas.
Posté le 24-01-2006 à 15:18:22  profilanswer
 

Je fais un grand UP:
 
Est ce possible de faire la même chose sans la commande MSComm ???
 
Merci d'avance c'est assez important !

n°1826200
bliebb
Posté le 12-12-2008 à 16:18:45  profilanswer
 

Moi pour communiquer avec ma balance sous windows j'ai utilisé le logiciel BillRedirect super facile à utiliser et la documentation est disponible en francais ... J'ai eu un petit problème j'ai communiqué avec le support technique qui m'a répondu très rapidement ... pour plus d'informations visite le site: www.billproduction.com  
 
http://www.billproduction.com/bill [...] ex_fr.html
 
Chow et bonne chance avec votre balance !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  programme en vba qui envoye des infos au port serie

 

Sujets relatifs
Easy php 1.6 changement de port ? urgent!!!!!!Installateur multi programme !
programme avec une DB mais sans serveur DB[JBuilder] Execution d'un programme (noob inside)
infos sur Portails php style phpbb, e107, phpnuke...Programme Convertisseur
Récupérer les infos systèmes en JavaJava Recuperation de graphique issu de programme c++
[ C ] Archi-debutant segfault sur petit programme :-(Programmation d'un programme de détection d'attaque réseau
Plus de sujets relatifs à : programme en vba qui envoye des infos au port serie


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR