Variable TIME

Jarrige

Well-known member
Bonjour à tous,

Je reviens sur le sujet variable TIME, déjà approché lors de mon projet de pilotage chauffe eau en auto-conso.
En effet, j'ai un autre projet pour lequel cette variable me sera bien utile ... et je sais que certaines fonctions (entre
autres les entrées/sorties port série) la perturbe. Il y a t-il quelque part un document où l'on peut trouver quelles
sont toutes les instructions Basic qui utilisent le timer interne d'où est issue cette variable TIME ??
Je précise que ce sera probablement avec un 08M2 ou un 14M2.
Merci d'avance pour vos retours
 
Bonjour,
Effectivement, avec une boucle utilisant serout pour un affichage de time, on constate une dérive rapide et time prend un retard croissant.
On limite le pb en limitant l'usage de serout pour un affichage strictement utile (changement de seconde par ex)
Je vais refaire des essais avec hserout
Les commandes servos perturbent aussi.
En dehors de ça, je n'ai pas vu de sujet sur le problème.
Il faut préciser l'usage de time dans le contexte. time est pratique et souvent suffisant, mais basé sur un résonateur interne qui n'a pas une précision horlogère.
A suivre
MM
 
Salut MGU, toujours fidèle au poste !!

L'emploi de TIME de cet "avant-projet" serait d'avoir une idée du temps écoulé, pas une mesure précise ... Mon nouveau projet est un système de surveillance du débit d'eau du réseau habitation, en prévention d'un oubli, d'une fuite ...
Le principe est de compter le temps lors de la réception d'impulsions délivrées par un débitmètre (à effet hall). Ce temps peut être relativement long si c'est un (très) faible débit. Une anomalie pourra être détectée si un certain temps (à définir,de l'ordre d'un 1/4h à peut-être 1h en fonction de la fréquence impulsions) avec un débit régulier et une certaine tolérance, ou en augmentation est déterminé.
A priori et au stade d'avancement actuel, juste des E/S TOR, mais je n'ai pas encore bien réfléchi à l'application de la "méthode" ...
Peut-être besoin de 2 tâches ? ou entrée sous interruption ? mais pourquoi pas une transmission d'alerte par un module HF ?? donc un petit Serout au moment de la détermination de l'anomalie ?
Je sais que les instructions de communication (Serin, Serout, Servo ... ) posent problème, et ce serait bien de savoir quelles sont TOUTES les instructions qui utilisent ce timer interne (qu'en est-il de la gestion du multitâche par exemple ?) et sont susceptibles de perturber sérieusement le résultat de TIME
Sur mon projet de pilotage CE avec PV, j'avais dû trouver une autre solution pour une grande tempo ... A ce propos, je suis passé il y a quelques temps sur "Electromag", et je n'ai rien vu sur ce sujet comme annoncé il y a pas mal de temps .
 
Annexe 4 - Commandes potentiellement en conflit
En conséquence, les commandes suivantes doivent temporairement désactiver toutes les interruptions lors de leur exécution:
  • port série RS232 serin, serout, serrxd, sertxd, debug
  • One Wire owin, owout, readtemp, readtemp12, readowsn
  • UNI/O uniin, uniout
  • Infra -red infraout, irout
 
Bonjour Flender,
J'avais déjà cette partie de la doc, ces différentes commandes "désactivent toutes les interruptions" et ... ça ne m'avance pas beaucoup concernant la variable TIME qui est vraisemblablement issue de la valeur du timer1 du micro, sauf si le système de gestion d'interruption utilise le Timer1 et ... on peut se demander ce que viendrait faire un timer pour un programme d'interruption ?
Et dans la liste il manquerait Servo ou peut-être Pmwout ? Je reste aussi en attente d'un retour de MGU qui doit faire des tests avec hserout
 
et ... ça ne m'avance pas beaucoup concernant la variable TIME qui est vraisemblablement issue de la valeur du timer1 du micro
translate.google.com: Si je comprends bien, le firmware PICAXE utilise TIMER1 pour générer une interruption matérielle de 20 ms afin de mettre à jour la variable système TIME.

Et dans la liste il manquerait Servo ou peut-être Pmwout ?
pwmout et hpwm utilisent le TIMER2.
Annexe 4 - Commandes potentiellement en conflit
Tâches de fond dépendant de la fréquence du PICAXE
Tâche Module interne Commande
PWM Timer 2 & pwm pwmout / hpwm

L'annexe 4 n'aborde pas ce point SERVO.

"Notez que la minuterie interne d'arrière-plan utilisée pour compter les secondes est également utilisée par plusieurs autres commandes telles que le servo."
Je comprends que cela signifie que la variable système TIME est mise à jour pendant que la commande SERVO est utilisée.
 
Last edited:
Et dans la liste il manquerait Servo ou peut-être Pmwout ? Je reste aussi en attente d'un retour de MGU qui doit faire des tests avec hserout
Bonjour,
Je ne peux faire aucun test en ce moment, il faut attendre quelques jours, que je retrouve ma "bidouillerie".
A plus
MM
 
Back
Top