Hey, im en utilisant WinAVR et programmant une ATMEGA32 en C.
Fondamentalement, je veux lier mon programme C à Asm via:Essayer de définir des variables à des emplacements de mémoire spécifiques
asm(" ") command.
Im essayant de définir emplacements de mémoire dans C à des emplacements de mémoire exacte afin que je puisse alors les accéder dans la ligne de commande asm.
J'ai 5 variables:
unsigned char var1, var2, var3, var4, var5;
Je sais que je pourrais utiliser des pointeurs vers un emplacement de mémoire, mais im ne savez pas comment faire.
Toute aide serait appréciée.
Merci,
Oliver.
Vous devez utiliser 'volatile char' non signé au lieu de' char' non signé. Cela garantira que le compilateur n'optimise pas les lectures/écritures de/vers les emplacements de mémoire. –
D'accord. Merci, je vais le réparer. –
J'ai défini ces instructions; maintenant Im essayant d'accéder à la variable dans mon programme C: var1 = new_key. Cela renvoie une erreur de syntaxe, j'ai essayé de jouer avec des pointeurs tels que * var1 = new_key mais en vain ... – Ospho