Poster un nouveau sujet Poster une réponse
Code EAN-128
Auteur Message
ld
Avatar

Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
Posté le : Dim 07 Déc 2014, 20:13   Citer 

Bonjour à tous !
Je viens demander un peu d'aide.
Je viens de terminer un prgm qui génère des codes barre encodés en EAN-128.
Le seul hic est que sa basse de donnée est trop lourde. Pour avoir au moin les chiffres et les lettres majuscules il faut entrer entièrement l'alphabet "B" de la table de conversion à cette adresse :
https://fr.wikipedia.org/wiki/Code_128
Le prgm fonctionne bien, puisqu'il affiche les même code barre qu'avec ce site de conversion :
http://barcode.tec-it.com/barcode-generator.aspx?LANG=fr

L'EAN-128 est une des normes les plus rependues. C'est par exemple avec celle-ci qu'on réalise les code barres dans les supermarchés.
En scannant le code barre ainsi créé sur une borne de prix j'ai donc pu afficher ce que je voulais sur celle-ci. Une petite phrase, un code... TROP FORT ! laugh.gif

Je n'ai pas encore trouver mais je suis sûr qu'un liens existe entre le fait que, par exemple : la valeur 4 = "10010001100" ou encore que 7 = "10011000100".
Ce qui par un bête calcul, remplacerait la base de donné.
Vous me suivez ?

J'ai tout essayer, conversion en base 2,16,36,sur 8 bits, en additionnant et multipliant les nombres binaires... Mais je ne voit aucune suite logique entre "valeur", "code ASCII" et "modèle barre/espace". crazy.gif

Voici ce que j'ai déjà pû trouver :

Les modèles barre/espace semblent toujours commencer par 1 et finir par 0.
Chaque modèle doit contenir un nombre paire de 1 et impaire de 0.
Chaque modèle est codé sur onze bits, sauf le caractère "Stop".
A chaque chiffre ou lettre correspond une valeur et un code ASCII.
Les codes ASCII sont donnés par ce tableau :
http://www.bourguet.org/v1/charset/tables7.png
Exemple "M" (majuscule) est sur la colonne 4 et la ligne D. En hexadécimal 4D = 77, soit le code ASCII de "M".
Enfin, pour trouver la valeur de "M", il faut toujours faire le code ASCII-32, soit 45.

A VOS NEURONES !! bigmouth.gif

----------------------
Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Dim 07 Déc 2014, 22:58   Citer 

Je crois qu'il y a confusion entre le code 128 et la norme EAN d'identification des marchandises. Toi tu désignes le code 128, la partie graphique, qui est incluse dans EAN 128.

J'ai déjà eu un devoir dont l'exercice portait sur les codes barres mais je ne l'ai pas à proximité. (juste la moitié de la france nous sépare tongue.gif)
Etant donné que l'exercice concluait avec les équations logiques de certaines opérations de traitement, je pense que c'est plausible.

Toute table de vérité a un équivalent en équations, à nous de la simplifier. Les tableaux de Karnaugh sont là pour ça.
Je veux le traiter ainsi, mais c'est laborieux, et je voudrais programmer en C une application pour gérer les tables. Mais comme je ne sais pas acquérir les données d'un xls/ods, alors la saisie des données est une perte de temps en elle-même.

EDIT 13/12/2014 : je suis sur la voie, j'ai réussi à générer des tables de karnaugh. Les simplifier automatiquement sera plus compliqué.

EDIT 15/12/2014 : je parviens à créer les équations simples. Mais il manque encore l'élimination des redondances et une seule configuration de table est testée à chaque fois, alors d'autres configurations peuvent amener d'autres résultats immédiats.
Après j'essaierai peut-être les groupements en ou exclusif et le complément. Ou encore du pur calcul de simplification.
Dans tous les cas je calculerai les équations bit par bit des la table de code barre 128 que tu as montré, excepté le code stop qui est plus long.

EDIT 15/12/2014 : je crois que je vais apprendre et tester le langage prolog ou sa famille de paradigmes, ce pourrait être plus simple que développer tout moi-même.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
katvador



Autorisation : Membre
Nb de messages : 30
Inscrit le : Lun 13 Oct 2014, 23:07
Posté le : Lun 15 Déc 2014, 19:36   Citer 

Pourrait-tu poster ton code s'il te plait ? happy.gif J'avoue que l'idée me plait bien...
Même si c'est celui avec la base de données...

----------------------
Casio FX-92-Ti 30-Ti-82 stats.fr- Ti-82 plus- Ti-83 plus-Ti nspire cx cas
@katvador
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Lun 15 Déc 2014, 21:18   Citer 

Alors je le posterai avec les équations obtenues quand j'aurai un peu plus avancé. Pour l'instant il manque quelques travaux. Mais pour ce sujet lié à la calculatrice TI, le calcul des équations logiques dans un autre environnement n'est qu'une annexe, donc ce n'est pas ma priorité.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
katvador



Autorisation : Membre
Nb de messages : 30
Inscrit le : Lun 13 Oct 2014, 23:07
Posté le : Mar 16 Déc 2014, 21:09   Citer 

Je voulais dire poster le code tel quel... godgrace.gif
C'est à dire le premier composé sans équations. ..

----------------------
Casio FX-92-Ti 30-Ti-82 stats.fr- Ti-82 plus- Ti-83 plus-Ti nspire cx cas
@katvador
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mar 16 Déc 2014, 21:32   Citer 

Tu t'adressais donc à ld et pas à moi.
Tandis que je ne parle pas du programme de gestion de code barre de ld mais du moyen que j'emploie pour calculer les simplifications.
Bonne question demander le code de ld.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
ld
Avatar

Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
Posté le : Mar 16 Déc 2014, 21:34   Citer 

"Ld" Tu peux m'appeler Louis... MDR

Prgm CODE128 V0 EN TEST

Code
:EffDessin
:0->Xmin:0->Ymin
:94->Xmax:62->Ymax


-Mettre tout les symboles de la l'alphabet "B" du site dans la chaîne 0.
https://fr.wikipedia.org/wiki/Code_128
De " " (espace) à "Stop". Pour les "FNC 1" ect... Il faut se débrouiller pour le remplacer par un symbole inutilisé de la calto et que çà ne fasse qu'un caractère dans la chaîne.

-Mettre tout les "Modèle Barre/Espace" dans la liste L1.
Valeur 0, espace, L1(1)=11011001100
Valeur 1, 1, L1(2)=11001101100
Valeur 2, 2, L1(3)=... maxiangry.gif

Code
:Input Chaîne1
:"caractère Début B"+Chaîne1+"caractère contrôle"+"caractère Stop B"->Chaîne1
:longueur(Chaîne1->L
:For(A,1,L)
:carChaîne(Chaîne0,sous-Chaîne(Chaîne1,A,1))->L2(A)
:End
:0->B
:For(A,2,L-2)
:B+(A-1)L2(A)->B
:End
:103partEnt((104+B)/103)->L2(L-1)
:1->X
:For(A,1,L)
:For(B,1,11)
:L2(A)---- 1er 2ème 3ème chifre du modèle dans V
:If V=1 (ou If V:...) Verticale X
:X+1->X
:End
:End



----------------------
Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie
 Adresse email Haut de page Bas de page 
 
katvador



Autorisation : Membre
Nb de messages : 30
Inscrit le : Lun 13 Oct 2014, 23:07
Posté le : Mar 16 Déc 2014, 22:12   Citer 

@Linkakro
Desole pour la question peu précise, mais l'équation que tu crée est de toute facon quasiment indispensable !

@Ld
Excuse moi, je ne savais pas que tu etait en train de le recopier...
Sinon je commence à le réécrire, mais c'est super chaud de stocker toutes ces données !
Je comprend pourquoi tu cherchais une équation... bigmouth.gif

----------------------
Casio FX-92-Ti 30-Ti-82 stats.fr- Ti-82 plus- Ti-83 plus-Ti nspire cx cas
@katvador
 Adresse email Haut de page Bas de page 
 
ld
Avatar

Autorisation : Membre
Nb de messages : 373
Inscrit le : Jeu 23 Sep 2010, 16:05
Posté le : Mar 16 Déc 2014, 22:37   Citer 

Hey attention il ne fonctionne pas encore !
On tient le bon bout mais va falloir encore bosser.
Tu as compris pourquoi je cherche une formule pour convertir la valeur en modèle barre/espace ! laugh.gif
Effectivement ce serai bien plus simple ! karate.gif

----------------------
Note Éphéméride Chrono Bombrman BlueFishEncryptor Labygénérateur Nord BandeauDeTexte LunarPhase Syracuse Papy-Jump Convertisseur ! SolveurDeSudoku VérificateurDeCodesBanquaire PrgmADiviser CryptageDeVigenere MiniSolv Reed-Solomon Code128Géodésie
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
katvador



Autorisation : Membre
Nb de messages : 30
Inscrit le : Lun 13 Oct 2014, 23:07
Posté le : Mar 16 Déc 2014, 22:51   Citer 

Pour qu'il fonctionne, il faut (juste clown.gif ) rentrer toutes les valeurs... Sinon, tu edite ton prog en temps réel laugh.gif

----------------------
Casio FX-92-Ti 30-Ti-82 stats.fr- Ti-82 plus- Ti-83 plus-Ti nspire cx cas
@katvador
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2025 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink