Picaxe Programming Editor:anormal fonctionnement du mode Programmation

Gaston Dezau

New Member
Bonsoir à tous.

Depuis plusieurs jours je ne trouve pas de solution à mon problème:
J'ai reduit mon programme pour plus de facilité de comprehension.
Code:
symbol led1=B.0
;symbol led2=B.1
symbol ctime=w1
low led1
;pause 2000
do  
inc ctime	 
loop while ctime <200
high led1
;led2=led1
pause 5000
Très simple comme programme mais!
En mode Simulation, la led led1 s'allume après 2 secondes environ (exécution de la boucle loop while); tout à fait normal selon moi.
En mode Programmation (ou sous VSM) la led led1 s'allume tout de suite dès l'alimentation du circuit quelque soit la valeur maxi de ctime.
Comment y remedier?
D'autre part comment creer des temporisations sans l'instruction Pause ou Wait ?
Cordialement.
 

dje8269

Senior Member
Bonsoir ,

Qu'appelle tu en mode programmation ?
A mon avis t'as boucle est tellement rapide que cest quasiment instantané de compter jusqu'à 200 . As tu essayer de mettre 65000 ?

Pour créer une tempo sans pause il faut faire comme tu as fait avec une boucle , en sachant que le temps de ta boucle tu l'a répété autant de fois pour obtenir ta tempo.

Ps: il faudrait un schéma et le type de picaxe utilise pour compléter tes infos

Bonne soiree
 

BESQUEUT

Senior Member
Je confirme : en réel, la boucle est très rapide et suivant la fréquence du Picaxe, pas visible.
Si 65000 ne suffit pas, il faut imbriquer 2 boucles.
Sur les M2, il y a une variable Time qui s'incrémente toute seule :
Code:
#Picaxe 20M2
symbol led1=B.0
Symbol Tempo=w1	' Arrête la boucle quand Time atteint Tempo

Tempo=2
low led1
do  
'...
loop while Tempo<>Time
high led1
Mais ça ne marche pas en simulation, et je n'ai pas de Picaxe sous la main pour tester en réel.
Sur les autres Picaxes, il faut utiliser un Timer.
 

PieM

Senior Member
Bonjour,

Un truc bizarre, ce petit programme test fonctionne avec PE5, mais avec PE6, la variable time reste à 0.
Bonjour Michel,

Time est simulée avec plusieurs centaines de boucles.
pour débloquer ne pas utiliser do loop while
et insérer une petite pause:

do
pause 1
loop while time<5
 

MGU

Senior Member
Bonjour PieM,

Et merci, effectivement, la simulation fonctionne avec la pause, mais PE5 n'en a pas besoin, et la réalité non plus.
Ce serait donc plutôt un bug du simu de PE6 que Rev Ed devrait pouvoir améliorer.

C'est juste mon avis, en attendant une prochaine MàJ...

MM
 
Top