Bonjour à tous,
Je viens vers vous parce que j'ai un problème de communication avec VISA que j'essaye d'utiliser en C#.
Je tente de communiquer via plusieurs modes de communication (série, GPIB, ethernet) entre 2 PC.
Seul le PC "esclave" m'intéresse puisque c'est sur celui-ci que je développe mon application WPF.
Je suis en attente de message du PC"maitre" via une liaison prédéterminée au lancement de mon application.
J'arrive à recevoir des messages mais je n'utilise pas correctement VISA puisque je n'arrive pas à faire en sorte que mon "ReadString()" s'arrête! A chaque fois j'arrive à une exception de type "timeout"!
m_Serial_Session = new SerialSession("COM1"); Fill_SerialSession(m_Serial_Session); //Je remplis tous les champs de ma liaison série (bits de données, parité, contrôle de flux...) m_Serial_Session.EnableEvent(SerialSessionEventType.AnyCharacterReceived, EventMechanism.Queue); Thread m_Thread_WaitData = new Thread(WaitForData_SerialRead); m_Thread_WaitData.IsBackground = true; m_Thread_WaitData.Start(); private void WaitForData_SerialRead() { m_Serial_Session.WaitOnEvent(MessageBasedSessionEventType.AllEnabledEvents); try { MessageBox.Show(m_Serial_Session.ReadString()); } catch (VisaException e) { MessageBox.Show("Délai dépassé depuis le premier élément reçu!"); } }
Je penses ne pas être très loin du but mais je n'arrives pas à trouver la fonction ou le paramètre à changer afin que tout fonctionne!
J'attends votre aide...