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 :

Definir une adresse fixe d'une variable en RAM


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Par défaut Definir une adresse fixe d'une variable en RAM
    Bonsoir,

    J'aurais voulu savoir si le définition suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #define EMBLG_PARAM_ECMD (*(unsigned char *)0xFF)
    est équivalente à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    volatile unsigned char EMBLG_PARAM_ECMD @0xFF;
    pour définir une adresse fixe d'une variable en RAM d'un µC?

    Il y a t'il des différences à utiliser l'une ou l'autre méthode?

    Merci

    Bonne soirée

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par défaut
    Difficile de te répondre, j'ignorais jusqu'à l'existence de l'opérateur @.
    Mais s'il fait ce qu eje crois qu'il fait, il manque une chose:
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    #define EMBLG_PARAM_ECMD (*(volatile unsigned char *)0xFF)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre émérite Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Difficile de te répondre, j'ignorais jusqu'à l'existence de l'opérateur @.
    Mais s'il fait ce qu eje crois qu'il fait, il manque une chose:
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    #define EMBLG_PARAM_ECMD (*(volatile unsigned char *)0xFF)
    Autant pour moi je voulais mettre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    unsigned char EMBLG_PARAM_ECMD @0xFF;

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par homeostasie Voir le message
    J'aurais voulu savoir si le définition suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #define EMBLG_PARAM_ECMD (*(unsigned char *)0xFF)
    est équivalente à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    volatile unsigned char EMBLG_PARAM_ECMD @0xFF;
    pour définir une adresse fixe d'une variable en RAM d'un µC?
    Il n'y a pas de méthode portable pour faire ça. Il faut lire la doc de ton compilateur.

  5. #5
    Membre émérite Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    Il n'y a pas de méthode portable pour faire ça. Il faut lire la doc de ton compilateur.
    En effet, d'après le compilateur que j'utilise, c'est possible!


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

Discussions similaires

  1. Accéder à une adresse contenu dans une adresse
    Par Qooort dans le forum x86 32-bits / 64-bits
    Réponses: 4
    Dernier message: 22/06/2013, 00h33
  2. Réponses: 7
    Dernier message: 06/05/2009, 12h05
  3. Comment faire une partie fixe et une partie variable ?
    Par bassiste dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 11/06/2008, 15h45
  4. Réponses: 5
    Dernier message: 26/12/2007, 10h51
  5. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 21h24

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