IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Protocole non série ?


Sujet :

Arduino

  1. #21
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 105
    Points : 57
    Points
    57
    Par défaut
    Effectivement, la carte n'est pas en panne. Je viens de faire un test sur la voiture et ca a marché du premier coup sans rien changer au script.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    CAN_500KBPS
    CAN BUS Shield init ok!
    -----------------------------
    Get data from ID: 2F8
    B1	0	FF	FF	0	
    -----------------------------
    Get data from ID: 4F8
    9C	0	30	0	0	0	0	0	
    -----------------------------
    Get data from ID: 5EF
    0	80	0	
    ----------------------------- 
    Get data from ID: 12E
    C8	7F	FA	7F	F0	FF	FF	0	 
    -----------------------------
    Get data from ID: 5EE
    0	0	2	15	B4	0	0	80	
    -----------------------------
    Get data from ID: 391
    0	0	0	2	D0	0	
    -----------------------------
    Get data from ID: 212
    FE	3D	0	0	0	0

    Voici une trace de la voiture :

    Nom : voiture.png
Affichages : 144
Taille : 11,3 Ko

    et celle de mon appareil

    Nom : boite.png
Affichages : 137
Taille : 14,8 Ko

    Je n'ai changé que le balayage et la vitesse (200kb vs 500kb pour la voiture) pour le decodage la trame.

    Je ne comprends vraiment pas. Les tensions sont identiques, l'oscillo décode bien.
    La seule différence cest la vitesse. J'ai bien évidement initialisé la carte a 200kb au lieu de 500kb

  2. #22
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 105
    Points : 57
    Points
    57
    Par défaut
    J'ai regardé la librairie sur la partie configuration de la vitesse.

    Mon oscillo dit 200kps pour mon appareil et 500kps pour la voiture, donc j'ai peu de doutes sur la valeur.


    Pour les vitesses ils definissent les valeurs de cfg1, cfg2, cfg3

    #define MCP_16MHz_200kBPS_CFG1 (0x01)
    #define MCP_16MHz_200kBPS_CFG2 (0xFA)
    #define MCP_16MHz_200kBPS_CFG3 (0x87)



    #define MCP_16MHz_500kBPS_CFG1 (0x00)
    #define MCP_16MHz_500kBPS_CFG2 (0xF0)
    #define MCP_16MHz_500kBPS_CFG3 (0x86)

    puis ailleurs ils associent les valeurs;

    case (CAN_200KBPS):
    cfg1 = MCP_16MHz_200kBPS_CFG1;
    cfg2 = MCP_16MHz_200kBPS_CFG2;
    cfg3 = MCP_16MHz_200kBPS_CFG3;
    break;


    Est-il possible qu'il y ait une erreur dans ces valeurs ?

    Sur ce site j'ai trouvé une "calculatrice" mais les valeurs obtenues différent (même ppur 500kbps)
    https://www.kvaser.com/support/calcu...ng-calculator/

  3. #23
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    Bonsoir

    Ton appareil, c'est bien une trame standard? Il me semble mais depuis que j'ai la comparaison avec celui de la voiture j'ai des doutes.
    Après pour le timing, tu peux aussi émettre la trame à vide (càd sans avoir ton shield branché sur tes appareils) et tu la mesures avec l'oscillo, tu verras de suite si le tempo est le même.
    Après à 5µs c'est bien 200kbps, mais 4µs (tout proche) c'est 250kbps, une autre fréquence standard.

    Bonne soirée

    Delias

  4. #24
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 105
    Points : 57
    Points
    57
    Par défaut
    Quand je mesure le plus petit bit il est plutôt vers 5,1 micro que vers 4micro sec.
    D'autre part l'oscillo se règle tout seul sur 200kps qui une vitesse "custom" donc j'imagine qu'il calcule bien. Il s'est mis automatiquement sur 500kps pour la voiture.

    De toutes façon j'ai déjà testé toutes les vitesses sans succès.

    Les deux trames m'ont l'air très similaires; Elles ont l'air un peu différentes car je n'étais pas sur la même vitesse de balayage.
    La seule différence que je vois c'est que mon signal est nettement moins propre que dans la voiture.

    C'est variable mais parfois j'ai vraiment pas mal de parasites

    Bus au repos :

    Nom : bus au repos.png
Affichages : 125
Taille : 4,7 Ko
    Message trop parasité l'oscillo n'y arrive pas non plus
    Nom : messagecrado.png
Affichages : 132
Taille : 19,4 Ko

    Mais en général l'oscillo y arrive bien.

    Y-a-t-il un moyen de déparasiter ?

  5. #25
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 105
    Points : 57
    Points
    57
    Par défaut
    J'ai regardé sur le wiki la configuration de vitesse.

    J'ai téléchargé le soft chinois. J'ai constaté que le config qui est dans la lib n'apparait pas dans le soft, alors j'ai testé les config issues du soft chinois mais malheureusement ca ne donne rien !

    Je suis désespérée.

Discussions similaires

  1. protocole interface série Ethernet
    Par Emcy dans le forum Développement
    Réponses: 3
    Dernier message: 15/09/2008, 16h01
  2. Réponses: 2
    Dernier message: 03/03/2008, 15h02
  3. Reverse engeneering protocole port série.
    Par tazio dans le forum Windows
    Réponses: 1
    Dernier message: 10/05/2007, 17h20
  4. [API] Communication série NON-bloquante : OVERLAPPED/Thread
    Par Rodrigue dans le forum C++Builder
    Réponses: 2
    Dernier message: 07/11/2003, 13h43
  5. Ping sous protocole TCP (et non UDP)
    Par ovdz dans le forum Développement
    Réponses: 2
    Dernier message: 19/06/2003, 14h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo