DS2401 Recuperer Numero de serie sous cubloc CB220 en utilisant une interface Ha7e
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

DS2401 Recuperer Numero de serie sous cubloc CB220 en utilisant une interface Ha7e



  1. #1
    invite9b28ffd6

    DS2401 Recuperer Numero de serie sous cubloc CB220 en utilisant une interface Ha7e


    ------

    Bonjour a tous! C'est mon premier message sur ce forum qui est pour moi une mine d'information.

    Je suis actuellement en période de stage et j'ai comme projet de lister des cartes électroniques sur lesquelles seront implanté des Ds2401.

    Je programme un CB220 (http://www.lextronic.fr/~lextronic_doc/CUBLOC.pdf) en VB par l’intermédiaire de Cubloc.

    Le Ha7e (http://www.homechip.com/catalog/docu...rsman-ha7s.pdf) permet la conversion des codes envoyer par le Cubloc en Ascii et les envoies au DS2401 (http://datasheets.maxim-ic.com/en/ds/DS2401.pdf) qui est sensé renvoyer son numéro de série via le one wire.

    Mais actuellement il ne renvoie pas grand chose... Il renvoi 13, ou D en hexa...

    Voici mon schéma de câblage ainsi que mon code VB sous Cubloc.
    De l'aide serai la bien venu, notamment sur le protocole d'initialisation du DS2401.

    Schema de montage:



    Code VB implanté dans le CB220:

    Const Device=CB220



    Dim R As Byte
    R = &H52 'Commande Reset Wire (Protocole)

    Dim G As Byte
    G = &H47 'Commande Read Page (Protocole)

    Dim Z As Byte
    Z = &H5A 'Commande Write Zero Bit (Protocole)

    Dim O As Byte
    O = &H4F 'Commande Write One Bit (Protocole)

    Dim S As Byte
    S = &H53 'Commande Search Rom pour cherche le numero de serie

    Dim Id_Carte As String
    Dim Id As Byte


    Opencom 1,9600,3,30,20
    Delay 100


    'Envoi du Protocole:

    Putstr 1,Dec R, Cr
    Delay 100 'Il faut mettre un delay pour que l'info soit bien prise en compte
    Putstr 1,Dec G, Cr
    Delay 100
    Putstr 1,Dec Z, Cr
    Delay 100
    Putstr 1,Dec O, Cr
    Delay 100
    Putstr 1,Dec S, Cr
    Delay 100


    'Lecture du numero de serie:
    Do

    Id_Carte = Getstr(1,64)

    Debug Dec Id_Carte, Cr

    Pause 100
    Loop


    Par avance merci.

    I Axe

    -----

  2. #2
    invite9b28ffd6

    Re : DS2401 Recuperer Numero de serie sous cubloc CB220 en utilisant une interface Ha7e

    Petit Up! Les codes envoyer ne sont pas bon! Ils faut les convertir d'abord en Ascii et ensuite les envoyer au Ha7s... je les ai corrigés mais mon problème viens du protocole je pense.

    D’après la doc du Ds2401:
    "The DS2401 requires a strict protocol to ensure data integrity. The protocol consists of four types of signaling on one line: reset sequence with Reset Pulse and Presence Pulse, write 0, write 1, and read data. All these signals except Presence Pulse are initiated by the bus master."

    D'aprés la doc du Ha7s:
    "LISTE DES COMMANDES ASCII:

    'S' SEARCH ROM:
    Permet de lister l’ensemble des composants présents sur le bus 1-wire en renvoyant l’identifiant de
    chacun (64-bits). La commande ‘S’ permet d’obtenir l’id du premier composant sur le bus, pour
    parcourir tous les composants, il faut ensuite utiliser ‘s’

    's' NEXT SEARCH ROM:
    Permet d’obtenir l’identifiant du prochain composant sur le bus. Pour avoir l’id du premier composant
    du bus, il faut utiliser ‘S’.

    'F' FAMILY SEARCH:
    Même fonctionnement que la commande ‘S’, mais on spécifie en plus un code famille. Cela permet de
    lister tous les composants d’une même famille (par exemple tous les composants DS18B20)

    'f' MORE FAMILY SEARCH:
    Permet d’obtenir l’identifiant du prochain composant sur le bus dans la famille choisie.

    'C' CONDITIONAL SEARCH (ALARM SEARCH):
    Permet de faire une recherche conditionnelle. Seuls les composants répondant aux critères seront
    listés.

    'A' ADDRESS Select:
    Permet de sélectionner un composant grâce à son code 64-bi, les commandes envoyées ensuite
    seront destinées à ce composant.

    'Z' WRITE ZERO BIT:
    Permet l’émission d’un zéro sur le bus.

    'O' WRITE/READ ONE BIT:
    Permet d’écrire ou de lire un bit sur le bus.

    'R' 1-WIRE RESET:
    Permet d’envoyer une impulsion Reset sur le bus 1-wire.

    'G' READ PAGE:
    Permet de lire une page mémoire sur un iButton ou une mémoire 1-Wire.

    'g' READ NEXT PAGE:
    Permet de lire la page mémoire suivante après l’utilisation de la commande ‘G’ ou ‘g’.

    'L' READ FILE RECORD:
    Permet de lire un enregistrement TMEX™ “file record” à partir d’un iButton ou d’une mémoire 1-Wire.

    'l' READ NEXT FILE RECORD:
    Permet de lire l’enregistrement suivant TMEX™.

    'U' WRITE File RECORD AT PAGE, WITH CRC16:
    Permet d’écrire une commande sur un iButton ou un composant 1-wire.

    'W' WRITE BLOCK:
    Permet d’écrire un block de données dans un composant 1-wire.

    'M' MATCH ROM COMMAND:
    Permet d’envoyer un reset et de sélectionner un identifiant donné."

    Le protocol que j'envoie est:"R","Z","O"
    Et j'envoie "S" pour récupérer le numéro de série mais je retourne "h44".

    Si quelqu'un est capable de me dire si mon protocole est bon ou non sa me serait d'une grande aide.

    Merci,

    I Axe

  3. #3
    Forhorse

    Re : DS2401 Recuperer Numero de serie sous cubloc CB220 en utilisant une interface Ha7e

    VB c'est l'acronyme de VisualBasic qui est un langage propre à Microsoft.

  4. #4
    invite9b28ffd6

    Re : DS2401 Recuperer Numero de serie sous cubloc CB220 en utilisant une interface Ha7e

    Oui pardon... J'aurai du le préciser... ^^"

  5. A voir en vidéo sur Futura
  6. #5
    invite9b28ffd6

    Re : DS2401 Recuperer Numero de serie sous cubloc CB220 en utilisant une interface Ha7e

    Bon alors voila... J'ai avancé mais je reste bloqué...

    Le protocole ne nécessite que l'envoie de "S" (pour ce qui sont intéressé).

    Je récupère en Rx le "S" envoyé et le Numero de serie. Problème: le numero et sur 2.5V/5V ce qui ne permet pas au Cubloc de lire l'info.
    Pire, c'est le Cubloc qui crée ce décalage car le Rx du Cubloc est à 5V. Et la commande OpenCom ne me permet pas de modifier la broche Rx avec des Low ou des Input.

    J'ai essayé avec un BasicStamp mais le problème est le méme!

    J'ai donc deux questions:
    1. Es normal d’avoir 5V sur mon Rx?
    2. Y'a t'il un moyen de changer sa?

    Merci, I Axe

Discussions similaires

  1. LCD et Cubloc CB220 ??
    Par invitea41b12ea dans le forum Électronique
    Réponses: 1
    Dernier message: 20/01/2018, 10h37
  2. passer d'une interface serie a une interface parallele ?
    Par cyber37 dans le forum Électronique
    Réponses: 8
    Dernier message: 15/04/2010, 22h01
  3. comment faire une interface sous linux?
    Par inviteb1dc4efc dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 08/04/2008, 15h43
  4. cubloc interface entree sortie
    Par invite01326114 dans le forum Électronique
    Réponses: 0
    Dernier message: 18/02/2007, 13h02
  5. Réponses: 3
    Dernier message: 25/04/2006, 09h46
Découvrez nos comparatifs produits sur l'informatique et les technologies.