comment programmer une rampe de tension avec un mP

comment programmer une rampe de tension avec un mP - C - Programmation

Marsh Posté le 15-03-2005 à 11:27:36    

bonjour,  :hello:  
 
je dois realiser une rampe de tension allant de 0 a 5V en utilisant le DAC du microprocesseur ADuC812. il possede 3 registres : un avec les 8 bits de point fort, un avec les 8 bits de point faible et le dernier le registre de controle.  
Je suis loin de maitriser le C et on m'impose de l'utiliser. Je ne sais pas comment realiser ce programme en C pouvez vous m'aider?  :cry: Cette rampe doit mettre 40s pour passer de 0 a 5V. Faudra t-il utiliser un timer?  
 
Merci d'avance a tous.  :bounce:  
 
Sylvie
 

Reply

Marsh Posté le 15-03-2005 à 11:27:36   

Reply

Marsh Posté le 15-03-2005 à 13:37:16    

sissi2003 a écrit :

je dois realiser une rampe de tension allant de 0 a 5V en utilisant le DAC du microprocesseur ADuC812. il possede 3 registres : un avec les 8 bits de point fort, un avec les 8 bits de point faible et le dernier le registre de controle.  


Quelle est la valeur pour 0V, quelle est la valeur pour 5V ? La doc du ADuC812 ne fait pas partie du langage C!

Citation :


Je suis loin de maitriser le C et on m'impose de l'utiliser. Je ne sais pas comment realiser ce programme en C pouvez vous m'aider?  :cry: Cette rampe doit mettre 40s pour passer de 0 a 5V. Faudra t-il utiliser un timer?  


Ca dépend de ton architecture. Il faut écrire les bonnes valeurs dans les bons registres au bon mioment. Pour le bon moment, oui, il faut un timer. La résolution dépend du nombre de valeurs discrètes que tu dois programmer.


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 15-03-2005 à 15:10:56    

C'est un DAC 12 bit donc la valeur min pour 0V est $000 et pour le 5V c'est $FFF. Vmax vaut 5V. Je l'utilise en pleine echelle.

Reply

Marsh Posté le 15-03-2005 à 16:13:13    

sissi2003 a écrit :

C'est un DAC 12 bit donc la valeur min pour 0V est $000 et pour le 5V c'est $FFF. Vmax vaut 5V. Je l'utilise en pleine echelle.


Il y a donc $1000 valeurs (4096 valeurs) à répartir sur 40 s, soit un changement tous les 9.76 ms... c'est déjà plus raisonnable.
 
Quelle résolution on te demande ?
 
[Edit] 40 s au mieu de 40 ms.


Message édité par Emmanuel Delahaye le 15-03-2005 à 18:07:47

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 15-03-2005 à 16:57:42    

on ne m'a rien precise mais je ne pense pas que la resolution soit tres importante pour cette rampe. je dois faire une rampe de 0 a 5V et un plat durant 20s et durant ce plat je dois voir avec labview si la tension a 800m plus loin est identique. Si ce n'est pas le cas le cable est refuse. Cette rampe permettra de commander un generateur haute tension allant de 0V a -1250V. neanmoins des acquisitions par labview seront prise durant ce temps de montee pour voir si ca tout s'est deroule correctement.

Reply

Marsh Posté le 21-03-2005 à 13:50:29    

bonjour,
 
Si j'utilise l'horloge de mon uP qui est de 12MHz, j'ai vu que cette horloge etait divise par 12 donc 1MHz. Si j'utilise le timer a chaquefois que le timer s'incrementera de 1 pour atteindre la valeur finale il aura compte 1/12MHz=1us. Est ce que c'est correct?
Si c'est faux quelqu'un pourrai m'expliquer le fonctionnement?
 
merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed