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

C Discussion :

Demande info RS485


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 28
    Par défaut Demande info RS485
    Bonjour,

    Je développe un capteur spécifique à une application donnée (phrase inutile
    Ce capteur sera connecté à un microcontroleur que je programmerai en C pour faire la conversion analogique - numérique adéquate.
    Le résultat sera envoyé sur une plateforme via un câble RS485 (l'entrée de la plateforme est RS485).

    Je ne me rends pas vraiment compte du code qu'il me faudra écrire pour envoyer mes données du microcontroleur vers la connexion RS485..
    Je pense que ce n'est pas spécialement difficile mais je préfère demander à quelqu'un qui aurait déjà fait l'exercice pour m'assurer de la faisabilité du code.

    Merci

  2. #2
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Tout dépend de comment est réalisé ta connexion µC <-> UART, et le niveau d'assistance fourni par l'UART...

    Pour ma part, j'ai toujours travaillé avec des UART "intelligents", c'est à dire qu'ils ont un buffer de données de taille suffisante (8 à 16 octets en général), possèdent un mécanisme d'interruption "buffer vide/plein", sérialisent les données tout seuls et, surtout, ont les drivers de ligne directement adaptés au RS-485 (=> pas de configuration spéciale à appliquer à un quelconque convertisseur 232/485).

    Et, dans ce cas de figure, le transfert par liaison série est franchement trivial : une fonction d'initialisation, une fonction d'émission et c'est fini pour le transfert unidirectionnel (cas fréquent pour les capteurs). Les liaisons bidirectionnelles sont bien sûr un peu plus complexes, mais il faut relativiser quand même : c'est le protocole qui est en général complexe (ex : Modbus), et non pas la gestion de la liaison série elle-même.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  3. #3
    Membre averti
    Inscrit en
    Janvier 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 28
    Par défaut
    C'est du rapide ! Merci

    Je ne me souviens plus vraiment du principe du UART, je suis sûr d'avoir déjà travaillé dessus mais j'ai un peu oublié...
    Je m'y remettrais sûrement prochainement donc..

    Juste encore, qu'entends-tu par la "connexion µC <-> UART" ? ..
    Pour le choix de l'UART tu as expliqué ce que tu prends en général mais en ce qui concerne la connexion je ne vois pas trop..

  4. #4
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Citation Envoyé par Shain Voir le message
    Juste encore, qu'entends-tu par la "connexion µC <-> UART" ? ..
    Pour le choix de l'UART tu as expliqué ce que tu prends en général mais en ce qui concerne la connexion je ne vois pas trop..
    Oh, très simple : si ton UART est mal câblé à ton µC, ou que ce dernier est mal foutu, tu peux ne PAS avoir d'interruptions (=> obligé de faire du polling à outrance), ou avoir une liaison µC <-> UART plus lente que la vitesse d'émission sur la liaison série (cas d'un [mauvais] câblage fait par bus série plutôt qu'en parallèle, par exemple). Dans les deux cas, tes ennuis commencent...

    L'idéal est d'avoir soit un UART intégré au µC (tu n'as donc plus qu'à mettre les bons drivers de ligne), soit de le câbler en parallèle (en général, c'est de l'ISA) sur le bus adresses/données/IT du µC. Parfois, tu es aussi obligé de tenir compte du chip select, mais c'est très rare avec les µC, c'est plutôt quelque chose que l'on voit sur les processeurs "normaux" habituellement.

    Donc, bien penser à faire communiquer entre eux l'électronicien chargé de la réalisation matérielle et le développeur qui va piloter tout ça, de façon à ne pas oublier un bout de signal qui pénaliserait le fonctionnement. Si tu as les deux casquettes, alors pense à vérifier la connexion du signal d'interruption et que le bus externe adresses/données soit bien utilisé plutôt qu'une connexion type I²C / SPI.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  5. #5
    Membre averti
    Inscrit en
    Janvier 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 28
    Par défaut
    Citation Envoyé par Mac LAK Voir le message
    Oh, très simple


    Ok c'est noté, merci pour ton aide (même s'il y a des trucs qui m'échappent encore pour le moment, du genre "bus externe adresses/données" vs "connexion type I²C / SPI") .
    Je vais mettre ce message en favori pour ne pas oublier ces informations parce qu'en effet, je risque bien de porter les deux casquettes ^^

    Bonne journée

  6. #6
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    De rien. Les termes que tu ne comprends pas s'éclairciront d'eux-même une fois que tu auras mis le nez dans les datasheets de l'UART et du µC, tu verras.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Demande infos pour développer un plugin
    Par alexge dans le forum Eclipse Platform
    Réponses: 5
    Dernier message: 10/05/2006, 15h13
  2. demande info de la fonction move dans un module
    Par lechtifred dans le forum Access
    Réponses: 1
    Dernier message: 01/05/2006, 15h04
  3. [NetBeans RCP] Demande Infos Complémentaires
    Par afrikha dans le forum NetBeans
    Réponses: 2
    Dernier message: 23/01/2006, 14h44
  4. Réponses: 3
    Dernier message: 11/01/2006, 14h22
  5. demande infos threads
    Par inertia dans le forum MFC
    Réponses: 17
    Dernier message: 31/05/2005, 14h58

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