Je suis en train de me battre avec une balance Precia Molen (Modèle
BV-P3828).
Si j'ai bien compris la documentation, je dois écrire sur le port com la
chaine suivante :
"98PPPPPC"+crlf ou PPPPP correspond au prix au kilo (00123 = 1.23 euro du
kilo), C correspond à a somme logique (XOR) de tous les caractères
antérieurs (donc 98PPPPP) et je termine par un CRLF.
J'ai testé différentes methodes pour calculer cette fameuse somme logique
(fonction OuBinaire et OuExclusifBinaire) mais rien n'y fait.
Une piste ou mieux une solution serait la bienvenue.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Romain PETIT
Albert P. avait prétendu :
Bonjour,
Bonjour,
Une piste ou mieux une solution serait la bienvenue.
Que dit la doc exactement ? En général, un calcul de XOR doit ressembler à ça :
PROCEDURE CX_mfCalculeChecksum_XOR(LOCAL sBuffer est une chaîne) // OU exclusif (XOR) des donnees // (le buffer ne concerne que les data)
sChecksum est une chaîne c est un entier eChecksum est un entier
sCar est une chaîne BOUCLE c++ sCar=sBuffer[[c]] SI sCar="" ALORS SORTIR eChecksum = OuExclusifBinaire(eChecksum, Asc(sCar)) FIN // pour certains protocoles, ETX doit être remplacé par DEL // SI eChecksum=0x03 ALORS eChecksum = 0x7f
sChecksum = Caract(eChecksum) RENVOYER sChecksum
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Albert P. avait prétendu :
Bonjour,
Bonjour,
Une piste ou mieux une solution serait la bienvenue.
Que dit la doc exactement ?
En général, un calcul de XOR doit ressembler à ça :
PROCEDURE CX_mfCalculeChecksum_XOR(LOCAL sBuffer est une chaîne)
// OU exclusif (XOR) des donnees
// (le buffer ne concerne que les data)
sChecksum est une chaîne
c est un entier
eChecksum est un entier
sCar est une chaîne
BOUCLE
c++
sCar=sBuffer[[c]]
SI sCar="" ALORS SORTIR
eChecksum = OuExclusifBinaire(eChecksum, Asc(sCar))
FIN
// pour certains protocoles, ETX doit être remplacé par DEL
// SI eChecksum=0x03 ALORS eChecksum = 0x7f
sChecksum = Caract(eChecksum)
RENVOYER sChecksum
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Une piste ou mieux une solution serait la bienvenue.
Que dit la doc exactement ? En général, un calcul de XOR doit ressembler à ça :
PROCEDURE CX_mfCalculeChecksum_XOR(LOCAL sBuffer est une chaîne) // OU exclusif (XOR) des donnees // (le buffer ne concerne que les data)
sChecksum est une chaîne c est un entier eChecksum est un entier
sCar est une chaîne BOUCLE c++ sCar=sBuffer[[c]] SI sCar="" ALORS SORTIR eChecksum = OuExclusifBinaire(eChecksum, Asc(sCar)) FIN // pour certains protocoles, ETX doit être remplacé par DEL // SI eChecksum=0x03 ALORS eChecksum = 0x7f
sChecksum = Caract(eChecksum) RENVOYER sChecksum
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Albert P.
"Romain PETIT" a écrit dans le message de news:
Albert P. avait prétendu :
Bonjour,
Bonjour,
Une piste ou mieux une solution serait la bienvenue.
Que dit la doc exactement ? En général, un calcul de XOR doit ressembler à ça :
PROCEDURE CX_mfCalculeChecksum_XOR(LOCAL sBuffer est une chaîne) // OU exclusif (XOR) des donnees // (le buffer ne concerne que les data)
sChecksum est une chaîne c est un entier eChecksum est un entier
sCar est une chaîne BOUCLE c++ sCar=sBuffer[[c]] SI sCar="" ALORS SORTIR eChecksum = OuExclusifBinaire(eChecksum, Asc(sCar)) FIN // pour certains protocoles, ETX doit être remplacé par DEL // SI eChecksum=0x03 ALORS eChecksum = 0x7f
sChecksum = Caract(eChecksum) RENVOYER sChecksum
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Bonjour,
Merci pour la procedure, je viens de tester mais sans succés :-(
La doc est assez succeinte :
Protocole Caisse Enregistreuse Balance Envoyer : 98PPPPPCCRLF Recevoir : 99SWWWWWEIIIIIICCRLF Où: 98: 0x38h y 0x39h PPPPP: 5 digits pour le prix. C: Checksum, somme logique (XOR) de tous les caractères antérieurs. CR: 0x0Dh LF: 0x0Ah 99: 0x39h y 0x39h S: État du poids. (S: 0x30h Correct. S: 0x31h Erreur.) WWWWW: 5 digits pour le POIDS. E: État du montant. (E: 0x30h Correct. E: 0x31h Erreur.) IIIIII: 6 digits pour le montant.
C'est malheureusement tout ce que j'ai.
Albert.
"Romain PETIT" <VoirM@Signature.fin> a écrit dans le message de news:
mn.b4377d89f11c9797.2248@Signature.fin...
Albert P. avait prétendu :
Bonjour,
Bonjour,
Une piste ou mieux une solution serait la bienvenue.
Que dit la doc exactement ?
En général, un calcul de XOR doit ressembler à ça :
PROCEDURE CX_mfCalculeChecksum_XOR(LOCAL sBuffer est une chaîne)
// OU exclusif (XOR) des donnees
// (le buffer ne concerne que les data)
sChecksum est une chaîne
c est un entier
eChecksum est un entier
sCar est une chaîne
BOUCLE
c++
sCar=sBuffer[[c]]
SI sCar="" ALORS SORTIR
eChecksum = OuExclusifBinaire(eChecksum, Asc(sCar))
FIN
// pour certains protocoles, ETX doit être remplacé par DEL
// SI eChecksum=0x03 ALORS eChecksum = 0x7f
sChecksum = Caract(eChecksum)
RENVOYER sChecksum
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Bonjour,
Merci pour la procedure, je viens de tester mais sans succés :-(
La doc est assez succeinte :
Protocole
Caisse Enregistreuse Balance
Envoyer : 98PPPPPCCRLF
Recevoir : 99SWWWWWEIIIIIICCRLF
Où:
98: 0x38h y 0x39h
PPPPP: 5 digits pour le prix.
C: Checksum, somme logique (XOR) de tous les caractères antérieurs.
CR: 0x0Dh LF: 0x0Ah
99: 0x39h y 0x39h
S: État du poids. (S: 0x30h Correct. S: 0x31h Erreur.)
WWWWW: 5 digits pour le POIDS.
E: État du montant. (E: 0x30h Correct. E: 0x31h Erreur.)
IIIIII: 6 digits pour le montant.
Une piste ou mieux une solution serait la bienvenue.
Que dit la doc exactement ? En général, un calcul de XOR doit ressembler à ça :
PROCEDURE CX_mfCalculeChecksum_XOR(LOCAL sBuffer est une chaîne) // OU exclusif (XOR) des donnees // (le buffer ne concerne que les data)
sChecksum est une chaîne c est un entier eChecksum est un entier
sCar est une chaîne BOUCLE c++ sCar=sBuffer[[c]] SI sCar="" ALORS SORTIR eChecksum = OuExclusifBinaire(eChecksum, Asc(sCar)) FIN // pour certains protocoles, ETX doit être remplacé par DEL // SI eChecksum=0x03 ALORS eChecksum = 0x7f
sChecksum = Caract(eChecksum) RENVOYER sChecksum
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Bonjour,
Merci pour la procedure, je viens de tester mais sans succés :-(
La doc est assez succeinte :
Protocole Caisse Enregistreuse Balance Envoyer : 98PPPPPCCRLF Recevoir : 99SWWWWWEIIIIIICCRLF Où: 98: 0x38h y 0x39h PPPPP: 5 digits pour le prix. C: Checksum, somme logique (XOR) de tous les caractères antérieurs. CR: 0x0Dh LF: 0x0Ah 99: 0x39h y 0x39h S: État du poids. (S: 0x30h Correct. S: 0x31h Erreur.) WWWWW: 5 digits pour le POIDS. E: État du montant. (E: 0x30h Correct. E: 0x31h Erreur.) IIIIII: 6 digits pour le montant.
Et non, malheureusement pas de trames, par contre j'ai fait un mail au constructeur. Si j'arrive à avoir des infos je les posterais ici.
Merci en tout cas pour ton aide.
Albert.
"Romain PETIT" a écrit dans le message de news:
Romain PETIT a exprimé avec précision :
CC est sur 2 caractères, il faut donc probablement convertir en hexa (remplacer l'avant-dernière ligne) :
Ah non pardon, le 2ème C est celui du CR... Sinon, tu as peut être des exemples de trames ?
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Albert P.
Bonjour à tous,
Concernant le problème de communication, le calcul du CRC est ok tel que romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test "maison" qui produit le même résultat que mon code ... à savoir, la balance s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
Bonjour à tous,
Concernant le problème de communication, le calcul du CRC est ok tel que
romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test
"maison" qui produit le même résultat que mon code ... à savoir, la balance
s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Concernant le problème de communication, le calcul du CRC est ok tel que romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test "maison" qui produit le même résultat que mon code ... à savoir, la balance s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
patrice
Albert P. a écrit :
Bonjour à tous,
Concernant le problème de communication, le calcul du CRC est ok tel que romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test "maison" qui produit le même résultat que mon code ... à savoir, la balance s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
ca me semble pas normal, contacte le sav du constructeur. J'ai une fois ce genre de symptome avec une balance dont l'alim etait défectueuse: elle activait l'écran pour écrire des infos, ca tirait trop sur l'alim, => elle s'éteignait)
Albert P. a écrit :
Bonjour à tous,
Concernant le problème de communication, le calcul du CRC est ok tel que
romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test
"maison" qui produit le même résultat que mon code ... à savoir, la balance
s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
ca me semble pas normal, contacte le sav du constructeur.
J'ai une fois ce genre de symptome avec une balance dont l'alim etait
défectueuse: elle activait l'écran pour écrire des infos, ca tirait trop
sur l'alim, => elle s'éteignait)
Concernant le problème de communication, le calcul du CRC est ok tel que romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test "maison" qui produit le même résultat que mon code ... à savoir, la balance s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
ca me semble pas normal, contacte le sav du constructeur. J'ai une fois ce genre de symptome avec une balance dont l'alim etait défectueuse: elle activait l'écran pour écrire des infos, ca tirait trop sur l'alim, => elle s'éteignait)
Albert P.
Merci pour l'information, je viens d'avoir un tech du constructeur qui m'envoi de quoi réinitialiser la balance et recharger les programmes, protocoles, ... Si cela ne fonctionne pas avec ces modifs, je le questionnerais sur l'alim.
Albert P.
"patrice" a écrit dans le message de news: 48de250a$0$15461$
Albert P. a écrit :
Bonjour à tous,
Concernant le problème de communication, le calcul du CRC est ok tel que romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test "maison" qui produit le même résultat que mon code ... à savoir, la balance s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
ca me semble pas normal, contacte le sav du constructeur. J'ai une fois ce genre de symptome avec une balance dont l'alim etait défectueuse: elle activait l'écran pour écrire des infos, ca tirait trop sur l'alim, => elle s'éteignait)
Merci pour l'information, je viens d'avoir un tech du constructeur qui
m'envoi de quoi réinitialiser la balance et recharger les programmes,
protocoles, ... Si cela ne fonctionne pas avec ces modifs, je le
questionnerais sur l'alim.
Albert P.
"patrice" <p.labracherie_nospam_@free.fr> a écrit dans le message de news:
48de250a$0$15461$426a74cc@news.free.fr...
Albert P. a écrit :
Bonjour à tous,
Concernant le problème de communication, le calcul du CRC est ok tel que
romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de
test "maison" qui produit le même résultat que mon code ... à savoir, la
balance s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
ca me semble pas normal, contacte le sav du constructeur.
J'ai une fois ce genre de symptome avec une balance dont l'alim etait
défectueuse: elle activait l'écran pour écrire des infos, ca tirait trop
sur l'alim, => elle s'éteignait)
Merci pour l'information, je viens d'avoir un tech du constructeur qui m'envoi de quoi réinitialiser la balance et recharger les programmes, protocoles, ... Si cela ne fonctionne pas avec ces modifs, je le questionnerais sur l'alim.
Albert P.
"patrice" a écrit dans le message de news: 48de250a$0$15461$
Albert P. a écrit :
Bonjour à tous,
Concernant le problème de communication, le calcul du CRC est ok tel que romain PETIT me l'a communiqué. J'ai reçu du fabricant un utilitaire de test "maison" qui produit le même résultat que mon code ... à savoir, la balance s'éteind lorsque je lui envoie la trame :-) ... la feignante.
Si certains d'entre vous ont des pistes à explorer, merci d'avance.
Bon dev,
Albert.
ca me semble pas normal, contacte le sav du constructeur. J'ai une fois ce genre de symptome avec une balance dont l'alim etait défectueuse: elle activait l'écran pour écrire des infos, ca tirait trop sur l'alim, => elle s'éteignait)
Albert P.
Bonjour à tous,
Le problème est résolu, le code était bon, il y'avait eu un problème lors du téléchargement des protocoles dans la balance à l'usine. Un petit reset grace aux programmes fournis par le support technique et hop tout fonctionne.
Bon dev à vous.
Albert P.
"Albert P." a écrit dans le message de news: 48d88e7a$0$850$
Bonjour,
Et non, malheureusement pas de trames, par contre j'ai fait un mail au constructeur. Si j'arrive à avoir des infos je les posterais ici.
Merci en tout cas pour ton aide.
Albert.
"Romain PETIT" a écrit dans le message de news:
Romain PETIT a exprimé avec précision :
CC est sur 2 caractères, il faut donc probablement convertir en hexa (remplacer l'avant-dernière ligne) :
Ah non pardon, le 2ème C est celui du CR... Sinon, tu as peut être des exemples de trames ?
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Bonjour à tous,
Le problème est résolu, le code était bon, il y'avait eu un problème lors du
téléchargement des protocoles dans la balance à l'usine. Un petit reset
grace aux programmes fournis par le support technique et hop tout
fonctionne.
Bon dev à vous.
Albert P.
"Albert P." <Inco@gnito.com> a écrit dans le message de news:
48d88e7a$0$850$ba4acef3@news.orange.fr...
Bonjour,
Et non, malheureusement pas de trames, par contre j'ai fait un mail au
constructeur. Si j'arrive à avoir des infos je les posterais ici.
Merci en tout cas pour ton aide.
Albert.
"Romain PETIT" <VoirM@Signature.fin> a écrit dans le message de news:
mn.b5027d8971ee020e.73924@Signature.fin...
Romain PETIT a exprimé avec précision :
CC est sur 2 caractères, il faut donc probablement convertir en hexa
(remplacer l'avant-dernière ligne) :
Ah non pardon, le 2ème C est celui du CR...
Sinon, tu as peut être des exemples de trames ?
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Le problème est résolu, le code était bon, il y'avait eu un problème lors du téléchargement des protocoles dans la balance à l'usine. Un petit reset grace aux programmes fournis par le support technique et hop tout fonctionne.
Bon dev à vous.
Albert P.
"Albert P." a écrit dans le message de news: 48d88e7a$0$850$
Bonjour,
Et non, malheureusement pas de trames, par contre j'ai fait un mail au constructeur. Si j'arrive à avoir des infos je les posterais ici.
Merci en tout cas pour ton aide.
Albert.
"Romain PETIT" a écrit dans le message de news:
Romain PETIT a exprimé avec précision :
CC est sur 2 caractères, il faut donc probablement convertir en hexa (remplacer l'avant-dernière ligne) :
Ah non pardon, le 2ème C est celui du CR... Sinon, tu as peut être des exemples de trames ?
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
olivier-v
Albert P. a écrit le 22/09/2008 à 17h36 :
Bonjour,
Je suis en train de me battre avec une balance Precia Molen (Modèle BV-P3828).
Si j'ai bien compris la documentation, je dois écrire sur le port com la
chaine suivante : "98PPPPPC"+crlf ou PPPPP correspond au prix au kilo (00123 = 1.23 euro du kilo), C correspond à a somme logique (XOR) de tous les caractères antérieurs (donc 98PPPPP) et je termine par un CRLF.
J'ai testé différentes methodes pour calculer cette fameuse somme logique (fonction OuBinaire et OuExclusifBinaire) mais rien n'y fait.
Une piste ou mieux une solution serait la bienvenue.
Merci d'avance,
Albert.
Bonjour Albert P J'ai le meme probleme J'ai recuperé une balance de meme reference d'occasion Quand je la branche sur le port serie le pc allumé elle en s'allume pas je l'allume et la branche alors sur le port serie du pc (j'utilise un cable serie standard et non un null modem) mais je n'ai aucun protocole, aucune doc Pourriez vous svp me faire parvenir ce que vous avez (ce que vous a transmis le service technique du fabricant) et d em'aider brievement sur la marche à suivre. Davance merci Olivier
Albert P. a écrit le 22/09/2008 à 17h36 :
Bonjour,
Je suis en train de me battre avec une balance Precia Molen (Modèle
BV-P3828).
Si j'ai bien compris la documentation, je dois écrire sur le port com la
chaine suivante :
"98PPPPPC"+crlf ou PPPPP correspond au prix au kilo (00123 = 1.23
euro du
kilo), C correspond à a somme logique (XOR) de tous les
caractères
antérieurs (donc 98PPPPP) et je termine par un CRLF.
J'ai testé différentes methodes pour calculer cette fameuse somme
logique
(fonction OuBinaire et OuExclusifBinaire) mais rien n'y fait.
Une piste ou mieux une solution serait la bienvenue.
Merci d'avance,
Albert.
Bonjour Albert P
J'ai le meme probleme
J'ai recuperé une balance de meme reference d'occasion
Quand je la branche sur le port serie le pc allumé elle en s'allume pas
je l'allume et la branche alors sur le port serie du pc (j'utilise un cable serie standard et non un null modem)
mais je n'ai aucun protocole, aucune doc
Pourriez vous svp me faire parvenir ce que vous avez (ce que vous a transmis le service technique du fabricant) et d em'aider brievement sur la marche à suivre.
Davance merci
Olivier oliviervv@free.fr
Je suis en train de me battre avec une balance Precia Molen (Modèle BV-P3828).
Si j'ai bien compris la documentation, je dois écrire sur le port com la
chaine suivante : "98PPPPPC"+crlf ou PPPPP correspond au prix au kilo (00123 = 1.23 euro du kilo), C correspond à a somme logique (XOR) de tous les caractères antérieurs (donc 98PPPPP) et je termine par un CRLF.
J'ai testé différentes methodes pour calculer cette fameuse somme logique (fonction OuBinaire et OuExclusifBinaire) mais rien n'y fait.
Une piste ou mieux une solution serait la bienvenue.
Merci d'avance,
Albert.
Bonjour Albert P J'ai le meme probleme J'ai recuperé une balance de meme reference d'occasion Quand je la branche sur le port serie le pc allumé elle en s'allume pas je l'allume et la branche alors sur le port serie du pc (j'utilise un cable serie standard et non un null modem) mais je n'ai aucun protocole, aucune doc Pourriez vous svp me faire parvenir ce que vous avez (ce que vous a transmis le service technique du fabricant) et d em'aider brievement sur la marche à suivre. Davance merci Olivier