Help!

Postby patcoc » Wed May 30, 2007 12:00 am

Bonjour,

J'utilise le compilateur C18 pour 1 pic 18F452.
Je souhaite réaliser en une instruction une inversion logique du signal sur la sortie RA0 pour produire un signal carré.
Je fais donc:
PORTAbits.RA0^=0b1;

L'inversion ne marche pas, pourriez-vous m'aider svp?

Merci,

Patrice.
patcoc
 
Posts: 3
Joined: Fri Jan 17, 2014 4:42 pm

Postby iso14000 » Wed May 30, 2007 12:00 am

j'y connais pas grand chose en Pic mais déjà est que c'est le même registre pour la lecture d'un port et son écriture?
Ensuite ne faut il pas déclarer le registre en Volatile pour interdire les optimisations du C?
regardez voir le code assembleur généré par le compilo ça aide
Florent
tant qu'un auteur sera aussi un modérateur ici (et donc plaignant et juge) je serais un Troll assumé
iso14000
 
Posts: 3083
Joined: Fri Jan 03, 2014 1:55 pm

Postby Guest » Wed May 30, 2007 12:00 am

Parpatcoc le 07/01/2007 16:08:32
Bonjour,

J'utilise le compilateur C18 pour 1 pic 18F452.
Je souhaite réaliser en une instruction une inversion logique du signal sur la sortie RA0 pour produire un signal carré.
Je fais donc:
PORTAbits.RA0^=0b1;

L'inversion ne marche pas, pourriez-vous m'aider svp?

Merci,

Patrice.


Je pense que ton message n'est pas au bon endroit. L'explorer16 est basé sur les PIC24 et dsPIC (16bits)..Tu devrais tenter ta chance ici :
http://www.elektor.fr/default.aspx?tabid=29&view=topics&forumid=13
Guest
 


Return to Explorer-16 (01 à 05-2007)

Who is online

Users browsing this forum: No registered users and 1 guest