Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : comparaison de chiffre binaire et agir en fonction [ Divers / Débutants ] (Jacky7)

jeudi 5 juin 2008 à 19:33:17 | comparaison de chiffre binaire et agir en fonction

Jacky7

Bonsoir à tous,

J'ai realisé un prog qui permet de lire et de convertir la valeur du port de décimale en binaire (bit de donnés de DO à D7) toutes les 500ms.
J'effectue une première lecture et j'enregistre sa valeur (en binaire) puis 500ms plus tard je relis la valeur du port que j'enregistre également puis je fais une comparaison entre ces deux valeurs et ainsi de suite.

Mon problème est que je voudrais comparer ces deux valeurs binaires, de façon à "détecter" le ou les bits qui aurait changés pendant les 500ms et agir en fonction mais je ne sais pas comment m'y prendre ??

Par exemple  :
11111110  #(different de) 11111111
alors le bit D0 a été modifié 

Est-ce possible "d'adresser" chaque bit ci-dessus dans une variable comme par exemple le bit DO = a, le bit D1 = b....puis d'effectuer ensuite une comparaison de ces variables afin de retrouver quel bit a bougé ?

J'espère que ce que je raconte est compréhensible

Merci.














jeudi 5 juin 2008 à 19:51:41 | Re : comparaison de chiffre binaire et agir en fonction

Exploreur

Membre Club

Salut,

Regarde ce petit exemple ^^ :

Private Sub Command1_Click()

Dim sSource As String
Dim sCompare As String
Dim iboucle As Integer

sSource = "11111111"
sCompare = "11111110"

For iboucle = 1 To Len(Text1.Text)

    ' test compare
     If Mid$(sSource, iboucle, 1) <> Mid$(sCompare, iboucle, 1) Then
        MsgBox "Changement de valeur à la position : " & iboucle
        Exit For
     End If

Next iboucle

 

End Sub

A+
Exploreur

 Linux a un noyau, Windows un pépin


jeudi 5 juin 2008 à 20:31:07 | Re : comparaison de chiffre binaire et agir en fonction

Exploreur

Membre Club
Re,

Enlève le : Exit For, comme çà tu parcoures toutes la chaine ^^

A+
Exploreur

 Linux a un noyau, Windows un pépin


jeudi 5 juin 2008 à 22:37:51 | Re : comparaison de chiffre binaire et agir en fonction

BruNews

Administrateur CodeS-SourceS
Dim a As Long, b As Long

LECTURE DANS a SANS CONVERSION STRING
ensuite idem dans b

Connaitre les bits différents:
diff = a XOR b

diff aura ses bits à 1 pour tous ceux différents de a et b.

Je n'ai aucune idée de l'existence du XOR en VB mais j'espère que si.

ciao...
BruNews, MVP VC++

vendredi 6 juin 2008 à 10:37:30 | Re : comparaison de chiffre binaire et agir en fonction

Loic34000

Salut Exploreur,

L'exemple que tu m'a fournit est vraiment ce que je voulais et je t'en remercie fortement,mais un autre problème se pose j'aimerais savoir s'il serait possible de "detecter" seulement un passage de 0 à 1 et de laisser de côté le passage de 1 à 0 ou inversement ?

Par exemple :

00000000 -> 00000001 Msgbox "le bit DO à été modifié" mais lorsque
00000001 -> 00000000 rien ne se passe ou inversement

Le but serait en fait de detecter seulement les fronts montant ou descendant du changement de bit.

Est ce que tu aurais une idée sur la façon dont je peut m'y prendre ?
Merci.

vendredi 13 juin 2008 à 10:38:20 | Re : comparaison de chiffre binaire et agir en fonction

Jacky7

Salut Exploreur,

Je voulais savoir s'il serait possible de "détecter" la valeur du bit lors du changement de valeur à la position x. (par exemple le bit est à la valeur 0 ou 1) et agir en fonction.

Car mon problème est que je modifie cette valeur à l'aide d'un bouton poussoir, lorsque que j'appuie sur le bouton il y a 1 changement de bit (par ex bit n°1 passe de 1 à 0 et reste a zéro tant que je reste appuyé) et lorsque je relache il y a un deuxième changement (le passage du même bit de 0 à 1 qui revient à son état initial), mais je voudrais que mon prog ne voit qu'un seul changement et non deux mais je ne sais pas comment m'y prendre.

Est- ce quelqu'un aurait une idée ??

Merci d'avance.






vendredi 13 juin 2008 à 10:50:20 | Re : comparaison de chiffre binaire et agir en fonction

Jacky7

Re salut,

Voila en fait ce que je voudrais mais je ne sais pas comment l'écrire : 
Par exemple :

Comparaison des deux valeurs binaires

J'appuie sur le bouton poussoir :

Ssource = 11111111
Scompare = 11111110

Alors changement à la position 8
Le bit N°8 est maintenant à la valeur 0 alors action  (tant que je suis appuyé sur le bouton)

Je relache le bouton poussoir

Ssource = 11111111
Scompare = 11111111


Alors changement à la position 8
Le bit N°8 est maintenant revenu à la valeur 1 et la je ne fais rien

Est-ce que quelqu'un aurait une idée svp ?
Merci d'avance
Jack.




Cette discussion est classé dans : fonction, binaire, comparaison, bit, agir


Répondre à ce message

Sujets en rapport avec ce message

Comparaison de dates [ par TheDude ] Je cherche à comparer deux dates au moyen de la fonction DateDiff intégréesous access et tester le résultat dans un If dont voici un exemple : If Aide SVP... conversion de decimal à binaire [ par jjs ] J'arrive pas à trouver la fonction qui me transforme des décimaux en binaires, en excel elle existe sous le nom decbin, est ce qu'il existe une foncti Copie de fichiers en fonction de date acces ou bit archivage [ par basicalsteph ] basicalstephSalut à tous!Je cherche à réaliser une application qui va copier des fichiers de mes documents vers un dossier temporaire. La ou cela se c comparaison approximative [ par chmouette ] Voilà, un jour au cours de mes pérégrinations sur le site, j'ai vu un article expliquant comment trouver un indice de corrélation entre 2 chaines, et et logique bit a bit [ par FabulousF ] Re-bonsoir :)nouveau petit souci :)dans ma fonction C j'ai une fonction qui prend en paramètre un "unsigned char *" et un entieren VB j'ai donc conver agir sur un fichier en fonction de sa date de création et de l'heure systeme ? [ par cobaltone ] salut a tousvoilà mon probleme:si 10 fichier sont dans un meme repertoire et que je peut les lister comment puis-je dire a mon prog de suprimer tout l comparaison binaire [ par Manu_12 ] Bonsoir,j'ai besoin de calculer la taille d'unfichier et de le mettre dans un en tete ID3 Tag V2 (MP3)..j'ai trouvé une source seulement il y a un bu URGENT! créer une fonction [ par Jsy ] Jsybonjour, je dois associer des fonctions à des commandes et les intégrer dans un module pour ensuite envoyer ces commandes à un encodeur via le port fonction excel [ par seldonh ] Bonjourje cherche à réaliser une fonction excel renvoyant le resultat de nb.si(plage;valeur) sachant que la plage correspond à une colonne d'un fichie Savoir si un objet est Nothing [ par Talere ] Bonjour,J'utilise la fonction Range.find d'Excel et lorsque qu'aucune cellule est trouvée, la fonction renvoie "Nothing". Je cherche à savoir si l'obj


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version


HTC G1

Entre 449€ et 449€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.