Tom's Guide > Forum > Programmation > utilisation de constantes sans utiliser ni la RAM ni la ROM

utilisation de constantes sans utiliser ni la RAM ni la ROM

Forum Programmation : utilisation de constantes sans utiliser ni la RAM ni la ROM

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour,
Je suis actuellement sur un projet électronique incluant un µC et un afficheur LCD. La programmation du µC est en Language C. N'étant pas informaticien de formation, j'ai du mal à résoudre mon problème.
Pour afficher un caractère sur l'ecran LCD, il faut lui envoyer tout une suite d'octet, qui a première vu doivent être stockés en mémoire.
Justement, ces octets sont des constantes, et je me demande si l'on ne peut pas utiliser le préprocesseur pour économiser la mémoire du µC.
Je sais que par l'intermédiaire de cette déclaration :
#define VALEUR 0x25 (par exemple)
, la constante est défini. Mais je ne sais pas comment en stocker plusieur à la fois, comme dans un tableau, de manière à pouvoir y acceder par pointeur (meme si on ne parle pas d'adresse mémoire dans ce cas là)
Ca fait 2 jours que je me prend la tete sur ce problème alors si quelqu'un aurait une astuce, ça m'aiderait vraiment.

Merci d'avance,
Sylvain.

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

tu crées tout simplement un tableau ...

préprocesseur signifie que le traitement sera fait avant la compilation :
dans ton cas le compilateur va remplacer dans le code source tous les mots "VALEUR" par "0x25" ...

Répondre à chrisz

suivant le compilateur que tu as, tu peux utiliser le mot clé "register" devant chacune de tes variabes. Cette déclaration permet d'indiquer que la variable devra être stocké dans un registre du processeur ... si possible, ce n'est pas garanti, les registres de variable sont limités.
L'autre inconvénient est que cette déclaration n'est valable que en local, pas pour des variables globales.

Bon courage mais j'ai un doute sur cette technique. Essaye plutôt d'optimiser ton code pour gagner en RAM.
Tiens nous au courant

Répondre à ataofeal

Citation :

Justement, ces octets sont des constantes, et je me demande si l'on ne peut pas utiliser le préprocesseur pour économiser la mémoire du µC.


Si ce sont des constantes vous pouvez les stocker dans le code (donc en ROM a priori): il suffit d'écrire

Code :
  1. a=25;


et le compilateur ira loger le "25" en zone de code pas en zone data.

Répondre à milmot
Tom's Guide > Forum > Programmation > utilisation de constantes sans utiliser ni la RAM ni la ROM
Aller à :

Il y a 1940 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens