ABCelectronique : portail d'information dans le domaine de l'électronique
Recherche sur le site
 
 
  Home » Forums de discussion  
Merci de ne pas poster des messages en relation avec le piratage.
Règles de bon usage, cliquez ici

    Forums de Abcelectronique > PFE - PPE - TPE ...
Identifiant
Mot de passe


Réponse     Ouvrir une nouvelle discussion
 
Outils de la discussion Rechercher Modes d'affichage
noemie   Junior Member   Déconnecté 09/04/2012, 17h38     Flowcode !!
  #1  
Bonjour, je suis en Terminale SSI, et cette année on doit réaliser un Pluviomètre dans le cadre de nos ppe.
On dois afficher sur un écran LCD le volume de pluie tombée en fonction du temps.
On a réussi à afficher le volume de pluie ou le temps, mais on n'arrive pas à afficher les deux en même temps.
Notre prof nous a dit d'utiliser une interruption, mais ça ne marche pas, et il est assez pris donc il n'a pas le temps de nous aider. On a essayé de trouver le problème, mais nous n'avons pas réussi ...

Si quelqu'un a une idée pour nous aider ...
Merci !
Franck-026   Carton rouge   Déconnecté 09/04/2012, 17h52     Re : Besoin d'aide sous Flowcode !!
  #2  
utilise une RTC et fais le calcul differentiel?
kabak_85   Senior Member   Déconnecté 09/04/2012, 17h55     Re : Besoin d'aide sous Flowcode !!
  #3  
Et c'est quoi le probleme ? Ca n'est sans doute pas afficher les deux variables sur une ligne ...
__________________
"Un probleme bien posé est a moitié résolu"
noemie   Junior Member   Déconnecté 10/04/2012, 14h41     Re : Besoin d'aide sous Flowcode !!
  #4  
Je ne sais pas ce qu'est un RTC ... Désolée, je ne maîtrise pas bien tout ces trucs ^^ On n'utilise seulement que quelques bases au lycée.

En fait, on a un écran LCD de deux lignes donc on voulait dans un premier temps afficher le volume de pluie sur la première ligne, et en même temps le temps écoulé depuis l'allumage du pluviomètre sur la deuxième ligne.
Pour le temps, on a mit une interruption TMR0 sur le programme principal. Pour le calcul du volume, on a plusieurs macros qui se lancent plus tard, à partir du principal aussi.
Quand on lance le programme, le principal fonctionne normalement jusqu'à l'interruption. Le problème c'est qu'une fois arrivé là, l'interruption se lance, donc on passe dans la macro du calcul du temps, mais on n'en sort jamais. On reste dedans, on ne peut pas revenir dans le principal, et continuer pour mesurer le volume de pluie.


Notre prof nous avait expliqué qu'une interruption permettrai de lancer l'horloge, puis de revenir au principal pour continuer le programme mais tout en gardant l'horloge active. C'est à dire qu'on aurai pu avoir la macro Horloge qui fonctionnait en même temps que le programme se déroulait de son coté.


Je ne sais pas si j'ai été claire ...
Merci pour vos réponses
noemie   Junior Member   Déconnecté 12/04/2012, 17h28     Re : Besoin d'aide sous Flowcode !!
  #5  
Ma question serai donc est-ce que c'est possible de laisser une macro ou un interruption ou une sorte de sous programme "tourner" tout en continuant le programme principal ? Ou alors, est ce qu'il existe une autre méthode pour avoir une horloge sur Flowcode ?

Si ça peut aider, je vous met des photos du programme.
(Désolée, on ne voit pas très bien ce qu'il est écrit dans les débuts de boucles)

J’espère que quelqu'un saura me répondre ! Merci.
Miniatures attachées
Cliquez sur l'image pour la voir en taille réelle

Nom :  PrincipalTMR0.JPG
Affichages : 97
Taille :  188,0 Ko  Cliquez sur l'image pour la voir en taille réelle

Nom :  Macro_comptage.JPG
Affichages : 100
Taille :  232,7 Ko  Cliquez sur l'image pour la voir en taille réelle

Nom :  Macro_HORLOGE.JPG
Affichages : 77
Taille :  54,8 Ko  

Dernière modification par noemie 12/04/2012 à 17h37.
noemie   Junior Member   Déconnecté 12/04/2012, 17h44     Re : Besoin d'aide sous Flowcode !!
  #6  
La suite :
Miniatures attachées
Cliquez sur l'image pour la voir en taille réelle

Nom :  Macro_UNite.JPG
Affichages : 103
Taille :  61,8 Ko  Cliquez sur l'image pour la voir en taille réelle

Nom :  Panneau temps.jpg
Affichages : 40
Taille :  12,2 Ko  Cliquez sur l'image pour la voir en taille réelle

Nom :  Panneau volume.jpg
Affichages : 44
Taille :  13,3 Ko  
kabak_85   Senior Member   Déconnecté 12/04/2012, 19h57     Re : Flowcode !!
  #7  
Quand un évenement arrive, on "léve" le drapeau de l'interruption ce qui lance le sous-programme de gestion des interruptions à la place du programme qui tournait.

Si à la sortie de ton programme de gestion d'interruption, tu n'as pas "ranger" le drapeau en remettant à zero le bit concerné, alors l'interruption va se relancer et ton programme tournera en boucle.

C'est une erreur béte mais en regardant rapidement la macro "horloge", j'ai rien vu permettant de gerer ca.

Autres chose, les programmes gerant les interruptions doivent être les plus court possible afin de gerer rapidement plusieurs interruptions quite à reporter les taches les "moins importantes".
__________________
"Un probleme bien posé est a moitié résolu"
noemie   Junior Member   Déconnecté 13/04/2012, 16h07     Re : Flowcode !!
  #8  
Du coup, si j'ai bien compris, ça veut dire que l'interruption peut être lancée, mais que pour poursuivre le programme, il faut l’arrêter.
Ça signifie qu'on ne peut pas faire tourner la macro Horloge et le programme principal en même temps.
C'est bien ça ?

« Posté par kabak_85 : Autres chose, les programmes gerant les interruptions doivent être les plus court possible afin de gerer rapidement plusieurs interruptions quite à reporter les taches les "moins importantes". »


Ok. Je vais modifier la macro horloge. Je vais laisser comme ça pour gérer les secondes/minutes/heures, mais je vais m'occuper de l'affichage dans le principal. Ça déchargera un peu l'interruption. Merci du conseil !
kabak_85   Senior Member   Déconnecté 13/04/2012, 18h36     Re : Flowcode !!
  #9  
Le coeur d'un micro-processeur ne peux effectuer qu'une seule tâche à la fois (Un micro-controlleur est en réalité un micro-ordinateur).

Si on regarde les ordinateurs moderne, deux tâches ne se font jamais en même temps sauf si l'on à 2 processeurs ou un processeur multicoeur sur la même machine. Quand tu perçois 2 tâches faites "en même temps", en réalité, la machine les effectues à tour de rôle très rapidement.
__________________
"Un probleme bien posé est a moitié résolu"
noemie   Junior Member   Déconnecté 14/04/2012, 10h00     Re : Flowcode !!
  #10  
D'accord, j'ai compris. Merci pour l'explication.
Je vais essayer de trouver une solution pour effectuer les deux tâches successivement, sans que ça change trop le temps chronométré.

Merci !
kabak_85   Senior Member   Déconnecté 14/04/2012, 10h20     Re : Flowcode !!
  #11  
C'est pour cela qu'il faut utiliser les timers et interruptions ou alors utiliser un RTC (Real-Time Clock).
__________________
"Un probleme bien posé est a moitié résolu"
noemie   Junior Member   Déconnecté 14/04/2012, 13h36     Re : Flowcode !!
  #12  
Mais alors comment on fait pour les utiliser correctement ? Parce que j'imagine bien que le problème vient de mon utilisation et non pas du logiciel ! Comment on fait pour utiliser un timer ou une interruption convenablement et que ça réponde à mon problème ? Ou comment utiliser un RTC, et comment ça fonctionne (je ne connais absolument pas) ?
kabak_85   Senior Member   Déconnecté 14/04/2012, 14h17     Re : Flowcode !!
  #13  
Un RTC est un composant externe dont on peux lire et écrire les registres.

Les timers ne sont que des compteurs qui sont connecté a un oscillateur (celui qui cadence le micro-controlleur par exemple et la encore, on peux les lires et les écrires et ils sont souvent capable de déclencher des interruptions à la demande.

La, il faut piocher dans la notice du micro-controlleur ou micro-processeur concerné pour connaitre le materiel disponible.
__________________
"Un probleme bien posé est a moitié résolu"
noemie   Junior Member   Déconnecté 14/04/2012, 16h06     Re : Flowcode !!
  #14  
D'accord... Je me renseignerai dès la rentrée sur le matériel mit à notre disposition par les profs. J'en profiterai pour demander quelques explications complémentaires en lien avec notre programme.
Je vais essayer de trouver une solution en fonction de tout ça et faire en sorte que ça fonctionne pour le bac !

En tout cas, je te remercie pour les explications !
Merci, et peut être à plus tard si j'ai d'autres questions :)
Franck-026   Carton rouge   Déconnecté 14/04/2012, 16h13     Re : Flowcode !!
  #15  
l'avantage du RTC, c'est que ca decharge totalement le µC de gerer le temps, et qu'on peut la lire facilement sans se poser de questions... exemple de RTC: DS1307
Répondre


Outils de la discussion Rechercher
Rechercher:

Recherche avancée
Modes d'affichage