Lire un byte par api

Soyez le premier à donner votre avis sur cette source.

Vue 4 674 fois - Téléchargée 492 fois

Description

Ce test vb lit un byte a une adresse avec une API.
Vous pouvez retrouver la version béta complète et gratos,
de Patchouz Patcheur sur mon site: http://duke49.ifrance.com/

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Duke49
Messages postés
550
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
6 juin 2015
4
14 janv. 2011 à 15:52
De rien et merci pour la note, sa me va droit au code ;)
btsmai2
Messages postés
9
Date d'inscription
vendredi 14 janvier 2011
Statut
Membre
Dernière intervention
14 janvier 2011

14 janv. 2011 à 15:42
Merci je viens de trouver la commande qui est celle-ci :
Data = wsmObj.wsm_ReadCoils(0, 0, 1)

Avec coils comme tu avais dit malgré le fait que je n'avais pas compris merci beaucoup.
btsmai2
Messages postés
9
Date d'inscription
vendredi 14 janvier 2011
Statut
Membre
Dernière intervention
14 janvier 2011

14 janv. 2011 à 13:13
Oui pour le mot on lit 5 entrées , mais je veux chercher un bit précis , mais avec RMR (ReadMultipleRegisters ?) il me dit bien "impossible d'affecter a un tableau quand j'essaye ta commande donc je ne peux pas lire sa valeur.
Je n'arrive pas donc a lire juste la valeur de ce bit , qu'elle soit 1 ou 0.
Duke49
Messages postés
550
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
6 juin 2015
4
14 janv. 2011 à 11:55
Le Bool en VB:
True = -1
False = 0

D'après ce que j'comprends, a l'adresse 0x00 tu lis 5 entrées de ton automate.
Si tu fais la lecture avec RMR(), tu n'as pas de notion d'aller chercher ce bit %M0,
puisque logiquement elle sera contenu dans Data.

Pour le code (a ma connaissance ReadMultipleRegisters renvoie un tableau de type Int):
Dim Data() As Integer
Dim MonByte As Integer
Data = wsmobj.wsm_ReadMultipleRegisters(0, 0, 1)

Que renvoie Data comme valeure ?
(Pour le savoir, clique droit sur Data et Ajouter un espion)
Que contient ton tableau Data en "lecture 0x00, lenght 1" ?
btsmai2
Messages postés
9
Date d'inscription
vendredi 14 janvier 2011
Statut
Membre
Dernière intervention
14 janvier 2011

14 janv. 2011 à 11:43
Je ne comprend pas. Pourquoi comme ceci ?
Je pensais plutôt a
Dim Data as Boolean
data = wsmobj.wsm_ReadMultipleRegisters
Le problème c'est que il ne le prend pas , je n'arrive pas a lui donner la bonne "adresse" a aller chercher.
Comme par exemple quand nous allons chercher un "mot" on fait comme suit :
Data = wsmobj.wsm_ReadMultipleRegisters(0, 0, 5)
Sachant que le 2 éme 0 est l'adresse du "mot" a aller chercher ici %MW0 et le 5 de %MW0 a %MW4.
Ce que je voudrais c'est aller chercher le bit %M0 par exemple.
Merci beaucoup de ton aide.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.