[FlowCode] Timer
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

[FlowCode] Timer



  1. #1
    invitea9fd6806

    [FlowCode] Timer


    ------

    Bonjour, je suis actuellement en terminal STI2D.
    Je suis actuellement en cours et mon professeur n'a pas su me répondre et m'a autorisé a venir demander sur un forum: j'ai tapé " entraide flowcode forum" et je suis tombé sur ce site.

    Je vous expose mon problème espèrent trouvé des personnes pouvant m'apporter leur réponse.

    Je dois , dans un système d'alarme du'une maison, rendre indépendant chacun des capteur de sécurité.

    Je travail sur le capteur à ultrason, le srf005.

    Mon projet consiste à le rendre indépendant.

    Sur Flowcode je dois faire l'algorigramme du projet et mon problème se pose, le début se passe bien :En gros une impulsion d'au moins 10µs ( 11 ou 12 de préférence), puis je dois mettre en place et utilisé le timer integré au pic ( le 16f88) .
    La fréquence de l'oscillateur est de 196608 Mhz, elle est divisé par 4 puis on nous laisse le choix de le redivisé.(pour avoir la fréquence d'interruption)
    Mon but étant d'avoir un timer qui puisse compter jusqu'à 30ms.
    il me faut donc un timer sur 16 bit.
    Le problème étant que je ne sais comment lire ce timer et le faire appel et en plus de ça il est que sur 8 bit...
    Je suis une vrai bille sur flowcode de l'aide ne serai pas de refus, mon professeur lui même n'a pas sur faire.

    -----

  2. #2
    invite03481543

    Re : [FlowCode] Timer

    Bonsoir,

    je ne vous aidera pas sur flowcode et cela dans votre interet, l'incapacite de votre prof a vous aider, si tel est vraiment le cas, est le reflet de cet outil debile...
    Je vous suggere donc de l'oublier purement et simplement.

    Quelle est la raison du choix de ce quartz exotique? Un 20MHz aurait ete plus judicieux a priori.
    Quoiqu'il en soit ca ne change pas la maniere de proceder.

    Votre micro possede plusieurs timers, au minimum un de 8 bits et un de 16 bits sur cette categorie de micro.

    Votre quartz genere Fosc= 19.6608MHz ce qui donne une frequence au micro de Fclk=Fosc/4 soit Fclk=4.9152MHz

    Il y a de nombreuses manieres d'y parvenir, de la plus simple (la moins precise) a la plus complexe (la plus precise).
    Voyons deja la plus simple valable quelque soit le timer 8 bits ou 16 bits.
    Si vous prenez un timer 16 bits il compte 65535 puis au coup suivant reprend de 0 soit 65536 impulsions pour faire un cycle complet, evenement qui survient toutes les 13.33ms.

    Pour obtenir votre tempo il suffit de faire:

    30ms/13.33ms=2.25

    Donc avec 2 boucles vous savez generer un evenement de 26.66ms soit 12 pourcent d'erreur.

    Il vous faut gerer dans la boucle d'interruption le bit de debordement du timer (TMRxIF), car lorsque il sera mis a 1 il vous faudra incrementer une variable qui une fois a 2 fermera le cycle de comptage.
    Comprenez vous deja tout ca?

    @+
    Dernière modification par HULK28 ; 12/12/2012 à 19h46.

  3. #3
    invite03481543

    Re : [FlowCode] Timer

    Quelques precisions s'imposent:

    Pour mener a bien votre application il vous faut plusieurs choses.
    -Telecharger la datasheet du PIC16F88
    -La lire evidemment, tout du moins la partie des timers pour comprendre comment ca fonctionne.
    -Vous munir d'un outil de programmation digne de ce nom, assembleur ou C.
    Vous trouverez des versions fonctionnelles gratuites soit chez Microchip soit chez Mikroelektronika, limitees mais suffisantes pour mener a bien votre projet.
    -Il vous faut egalement une plaque d'essais et un schema de cablage de votre appli.
    -Un programmateur pour inserer le prog dans le PIC.

    Nous avons vu sommairement comment generer un evenement dans le micro mais encore faut-il qu'il se manifeste a l'exterieur.
    Pour cela il suffit de prevoir une led branchee sur une sortie du PIC, raccordee de preference sur une sortie CCPx, le x indiquant simplement 1 ou 2 ou.... 5 selon le PIC.

    Cette sortie CCPx est une sortie pilotee directement via le timer, et un timer ne sert pas qu'a compter il peut aussi etre associe a d'autres fonctionnalites qui vont permettre de generer par exemple des impulsions calibrees sur cette sortie.
    Dans votre cas vous avez deux types d'evenements a produire, le premier est une periode le deuxieme est un laps de temps de cette periode.
    Le principe est que le timer compte et qu'un registre contienne une duree, lorsque le timer atteint ce temps predefini on a un match et cette rencontre va produire un evenement encore une fois.
    Cette evenement sera le laps de temps que vous cherchez a obtenir.

    Voila deja dans les grandes lignes le principe general.

    Bien entendu comme vous debutez tout cela doit vous paraitre un peu opaque, mais de toute maniere sans connaitre le principe de base quelque soit l'outil que vous prendrez il faudra bien l'alimenter avec une marche a suivre et un principe connu.
    @+

Discussions similaires

  1. flowcode
    Par kevin8z dans le forum Électronique
    Réponses: 21
    Dernier message: 11/09/2010, 16h39
  2. Programmation en C avec Timer 0 et Timer 1
    Par invite6844fe5f dans le forum Électronique
    Réponses: 43
    Dernier message: 20/04/2010, 13h27
  3. Flowcode
    Par invite44be19df dans le forum Électronique
    Réponses: 0
    Dernier message: 10/06/2009, 11h08
  4. flowcode
    Par invite02e2524b dans le forum Électronique
    Réponses: 13
    Dernier message: 27/12/2007, 12h30
Découvrez nos comparatifs produits sur l'informatique et les technologies.