cs_Christian_69
Messages postés2Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention15 avril 2008
-
14 avril 2008 à 15:43
cs_Christian_69
Messages postés2Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention15 avril 2008
-
15 avril 2008 à 13:55
Bonjour à tous,
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
je cherche sur le forum une solution mais je ne trouve pas.
Je vous explique mon problème :
Je voudrais pour une petite application à base d’un PIC 16F84 utiliser le Timer comme tempo
de 4 secondes par ex, jusque là pas de problème.
Ce que je voudrais faire, c’est pouvoir réinitialiser mon Timer à 0 avant la fin de la tempo et de redémarrer un cycle.
Comme le ferais une minuterie :
1) on appuie sur un BP la lampe s’allume pour 4 s
2) si on ré appuie sur le BP avant les 4s on redémarre un cycle
3) sinon la lampe s’éteint après les 4s.
Ça paraît simple, mais la je sèche…., Je m’embrouille, j’ais l’impression de tourner en rond devant un problème simple.
Si quelqu’un par mis vous a une idée lumineuse (lol)
Toutes aides ou conseils de votre part seront les bienvenues.
edfed
Messages postés69Date d'inscriptionmercredi 12 décembre 2007StatutMembreDernière intervention22 mars 20101 15 avril 2008 à 00:10
bonsoir, bon, là, c'est pas tres dur.
vu que les pics n'on pas de tests conditionels à la x86, il faut tester la condition d'un truc, genre, l'entrée du port sur lequel est branché le bouton.
ensuite, tester si le bouton est bien compris par le µC. sinon, il faut revoir la connection de ce dernier avec une resistance de push-down pour forcer l'etat de la broche a 0
connecter le bouton a +VCC
deux cas:
scruter sans interruption le bouton a chaque iteration du timer.
connecter le bouton a une interruption et a chaque interruption, faire un raz du compteur.
c'est vraiment tres tres simple a faire.
je ne me souvient plus des instructions PIC mais en gros, cet algo devrai suffire.
en 68HC11 ça donnerais ça:
;;; en mode scrutation sans interruption
ldaa [porta]
tst a,1 ;si le bouton est sur la broche 1 du port A
bre @f
ldaa raz ; charger la valeur du copteur par defaut
staa [cnt] ;mettre le compteur a zero
;;;;;
cs_Christian_69
Messages postés2Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention15 avril 2008 15 avril 2008 à 13:55
Merci edfed,
je vais chercher du coté des interruptions puisque j'ai la possibilité de générer une interruption lors de l'appui sur le BP ou lorsque mon timer passe de FF à 0.