Detecteur d'obstacle avec pic 18f452
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Detecteur d'obstacle avec pic 18f452



  1. #1
    elbow26

    Detecteur d'obstacle avec pic 18f452


    ------

    Bonjour,
    Voilà enfaite je dois réaliser un projet qui est un détecteur d’obstacle à ultrasons, pour ça je dispose de plusieurs composants : un 18F452 ; LV MAX SONAR ; SOMO 14-D etc…
    Je dois réaliser un programme en C à l’intérieur du pic qui comptera la durée d’une impulsion (émise par le capteur à ultrason) afin de savoir à quelle distance se trouve l’obstacle.
    J'ai deja pensais a une solution avec un ami :

    Code:
    while (x==0) {};
    timer= timer on () ;
    while (x==1) {};
    if (x==1)
    {
    timer = timmer off
    }
    Mais la apparemment je dois utiliser le timer meme du 18f et je ne comprends vraiment pas... Si quelqu'un si connait je suis preneur merci !!

    -----
    Dernière modification par JPL ; 31/01/2015 à 16h07. Motif: Ajout de la balise Code (#)

  2. #2
    mp3dux

    Re : Detecteur d'obstacle avec pic 18f452

    Bonjour,

    http://sti.ac-orleans-tours.fr/spip2...C18_Timers.pdf

    Lis un peu et dis après ce que tu ne comprends pas là...

    http://roussetelec.free.fr/Files/timer18f.pdf peut t'aider aussi à mieux comprendre les timers.
    Tu travailles en langage C donc c'est d'autant plus facile que tu peux utiliser les fonctions toutes faites sans être obligé de manipuler les bits de registres.

    De tête ce pic possède 3 ou 4 timers intégrés, en fait le principe de mesure est des plus simple, si on prend le timer 0 :
    TMR0 est un registre qui contient la valeur courante.
    Quand tu démarres le timer , cette valeur évolue vers le haut ou vers le bas selon tes réglages, ensuite dès que tu auras besoin de compter, tu l’arrêtes et tu lis la valeur.
    Tu fais la différence avec la valeur lue précédemment et tu convertis cette valeur en secondes par ex, en fonction de tes réglages, la formule est donnée.
    Ce qu'il faut ne pas ignorer aussi c'est que le timer peut déborder et il le signale par le bit T0IF (si je ne me trompe pas).

    C'est facile à comprendre, c'est comme une montre, lorsqu'elle tourne pendant 12h, elle revient au même endroit, ainsi ton compteur lorsqu'elle compte jusque qu'au max, elle recommence comme si de rien n'était, on appelle ça débordement mais heureusement elle signale cela par T0IF en le metant à '1'. Ainsi quand TOIF est à '0' tu sais que la valeur que tu lis est la bonne. Autrement s'il est à'1', ton compteur a peut être débordé 1 ou 10 fois, on sait pas.
    Bon après, le timer peut être aussi utilisé en mode interruption, etc.

    Le timer est l'un des modules les plus faciles à utiliser une fois qu'on connait le principe... et le schéma, l'une des erreurs les plus courantes est de ne pas prendre en compte le prescacler, le postscaler et le débordement dans le calcul...
    Si nous faisions tout ce que nous sommes capables de faire, nous en serions abasourdis. T.E

  3. #3
    paulfjujo

    Re : Detecteur d'obstacle avec pic 18f452

    bonjour,


    Le lien donné par mp3dux est un excellent document !.. à lire attentivement.

    Quel compilateur vas tu utiliser ?
    MikroC, C18, CCS, X8 .. autres

    Les 2 valeurs clés sont :

    La frequence d'oscillation FOSC pour connaitre la duree d'un cycle de base
    ( si usage d'un quartz de 4Mhz FOSC=> 1Mhz => 1 cycle dure 1µS)

    Ensuite la vitesse du son dans l'air
    340M/sec à 20°C
    ce qui donne 5.88µS pour 1 mm de distance ( ATTENTION : aller-retour )

    avec cela tu peux initialiser ton timer..
    qui comptera un certain nombre de cycles .. à transformer en duree µS.
    (rajouter eventuellement les debordements du timer , si Q est >=10Mhz).

    La capacité maxi du timer 16 bits , dans le cas de FOSC=1Mhz (Q=4MHz)
    serait de 65535 µS soit
    distance maxima calculee = 11145 mm .. tres improbable à atteindre .
    donc sans debordement (T0IF) possible.

    à toi de jouer...

  4. #4
    elbow26

    Re : Detecteur d'obstacle avec pic 18f452

    Salut ! merci de vos réponses très rapide !!
    Le compilateur sera C18 avec MPLAB

  5. A voir en vidéo sur Futura

Discussions similaires

  1. Détecteur d'obstacle
    Par Mohi dans le forum Électronique
    Réponses: 9
    Dernier message: 16/01/2014, 19h14
  2. Détecteur d'obstacle
    Par Estebandelafrontera dans le forum Physique
    Réponses: 2
    Dernier message: 25/11/2013, 09h58
  3. Détecteur d'obstacle
    Par invite89478e32 dans le forum Électronique
    Réponses: 22
    Dernier message: 27/03/2013, 16h22
  4. détecteur d'obstacle ir
    Par invite9d93f17d dans le forum Électronique
    Réponses: 13
    Dernier message: 23/09/2010, 18h29
  5. detecteur d'obstacle
    Par sdow dans le forum Électronique
    Réponses: 2
    Dernier message: 18/08/2006, 19h43
Découvrez nos comparatifs produits sur l'informatique et les technologies.