Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1828 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Programme Tripode C

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Programme Tripode C

n°2297764
valentinca​ceres
Posté le 16-03-2017 à 10:00:22  profilanswer
 

Bonjour à vous,
 
Alors voilà je suis élève en STI2D et donc je suis en train de finaliser mon Projet de fin d’année mais un problème me vient à moi ! Alors voila en complètement mon programme il y a certains trou que je n'arrive pas à combler... notamment les while et if auriez vous des propositions ou une aide à m'apporter pour m'aider dans mon projet...
 
Merci à vous :)
 
 
sbit  TRIPODE  at  RC2_bit;
sbit  TRIPODE_Direction  at    TRISC2_bit;
sbit  A  at  RC4_bit;
sbit  A_Direction  at    TRISC4_bit;
sbit  B  at  RC5_bit;
sbit  B_Direction  at    TRISC5_bit;
sbit  Passage_OK  at  RC0_bit;
sbit  Passage_OK_Direction  at    TRISC0_bit;
 
sbit  CDE_ELECTROAIMANT  at  RA0_bit;
sbit  CDE_ELECTROAIMANT_Direction  at    TRISA0_bit;
 
 
void main() {
     unsigned  char Fin_Cycle;
     /************ Configuration des ports utilisés en I/O numériques  ********/
     ANSEL = 0;
     CMCON0 = 7;
     /********** Configuration (sens de transfert) des entrées numériques *****/
     A_Direction = ?;
     B_Direction = ?;
     TRIPODE_Direction = ?;
     /********** Configuration (sens de transfert) des sorties numériques *****/
     CDE_ELECTROAIMANT_Direction = TRISA0_bit;
     Passage_OK_Direction = TRISC0_bit;
     
     CDE_ELECTROAIMANT = RA0_bit?;
     Passage_OK = TRISC0_bit;
     Delay_ms(2000);
 
 
    while(1){
       Fin_Cycle = 0;
       while(TRIPODE == RC2_bit);
       do{
          CDE_ELECTROAIMANT = RA0_bit;
          while (!(A ==  && B == );         // Attente de la Phase 1
          CDE_ELECTROAIMANT = RA0_bit;               // Deverouillage
          while (A ==  && B == );            // Phase 1 attente phase suivante
           
          if (!(A == ? && B == ?))       // Test verification passage à la phase 2
          {
             continue;                // Retour au verouillage
          }
          while (A == ? && B == ?);     // Phase 2 attente phase suivante
           
          if (!(A == ? && B == ?))       // Test verification passage à la phase 3
          {
             continue;                // Retour au verouillage
          }
          while (A == ? && B == ?);   // Phase 3 attente phase suivante
           
          if (!(A == ? && B == ?))       // Test verification passage à la phase 1
          {
             continue;                // Retour au verouillage
          }
          Fin_Cycle = 1;
       }while (??);
       CDE_ELECTROAIMANT = ?;
       Passage_OK = ?;
       Delay_ms(1000);
       Passage_OK = ?;
     }
 
}

mood
Publicité
Posté le 16-03-2017 à 10:00:22  profilanswer
 

n°2297796
rat de com​bat
attention rongeur méchant!
Posté le 16-03-2017 à 14:37:13  profilanswer
 

valentincaceres a écrit :

il y a certains trou que je n'arrive pas à combler...

Tu es en train de "finaliser" ton projet? Certains trous? T'as rien foutu! (en plus si - comme je suppose - tu as eu ce code à compléter). Relis ton cours, lis la doc du compilateur (pour les machins_bit dont tu as apparamment pas compris l'utilité), la doc du µC (que tu n'indiques pas, je dirais PIC) et le réglement points 0C et 0D.

n°2297873
rat de com​bat
attention rongeur méchant!
Posté le 17-03-2017 à 21:58:10  profilanswer
 

A ben tiens...
https://openclassrooms.com/forum/su [...] e-91569101
http://forums.futura-sciences.com/ [...] ode-c.html
 
C'était parfaitement prévisible et notre fainéant élève n'y obtiens pas plus d'aide qu'ici (heureusement).

n°2298132
valentinca​ceres
Posté le 22-03-2017 à 17:02:18  profilanswer
 

Inutile de m'insulter !! Tu sais la programmation ne concerne pas le principale de mon projet et effectivement c'est la chose sur la qu'elle je suis le moins à l'aise mais bon j'ai quand meme compris le début enfin il me semble  
 
sbit  TRIPODE  at  RC2_bit;
sbit  TRIPODE_Direction  at    TRISC2_bit;
sbit  A  at  RC4_bit;
sbit  A_Direction  at    TRISC4_bit;
sbit  B  at  RC5_bit;
sbit  B_Direction  at    TRISC5_bit;
sbit  Passage_OK  at  RC0_bit;
sbit  Passage_OK_Direction  at    TRISC0_bit;
 
sbit  CDE_ELECTROAIMANT  at  RA0_bit;
sbit  CDE_ELECTROAIMANT_Direction  at    TRISA0_bit;
 
 
void main() {
     unsigned  char Fin_Cycle;
     /************ Configuration des ports utilisés en I/O numériques  ********/
     ANSEL = 0;
     CMCON0 = 7;
     /********** Configuration (sens de transfert) des entrées numériques *****/
     A_Direction = 1;
     B_Direction = 1;
     TRIPODE_Direction = 1;
     /********** Configuration (sens de transfert) des sorties numériques *****/
     CDE_ELECTROAIMANT_Direction = 0;
     Passage_OK_Direction = 0;
     
     CDE_ELECTROAIMANT = 0;
     Passage_OK = 0;
     Delay_ms(2000);


Message édité par valentincaceres le 22-03-2017 à 17:03:34
n°2298133
valentinca​ceres
Posté le 22-03-2017 à 17:05:11  profilanswer
 

Alors oui j'utilise bien MikroC pro for PIC et du coup j'utilise bien un PIC (PIC16F688) !
 
Alors mon projet consiste à contrôlé l’accès a la cantine ! alors pour ça j’utilise un tripode !
 
 
Alors l’orque qu'un élève est autoriser à passer le tripode doit se débloquer et lorsque l’élève n'est pas autorisé le tripode se bloque ! Alors c'est justement l'électroaimant qui est chargé de bloquer ou de débloquer le tripode en fonction de ! De plus le système est aussi composé d'un capteur optique qui qu'en à lui est chargé de déterminer le sens de rotation !


Message édité par valentincaceres le 22-03-2017 à 17:05:23
n°2298155
h3bus
Troll Inside
Posté le 23-03-2017 à 00:04:20  profilanswer
 

Du coup c'est quoi exactement ton problème?
Disons le premier point ou tu buttes.


---------------
sheep++

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Programme Tripode C

 

Sujets relatifs
Explication d'un script CExecution d'un programme via une interface web.
lancer un programme python en ligne de commande sous windows[C][pthreads] Probleme deconecton serveur client avec socket
[Divers/Ada] décire la structure du programme pour présenter un index[Résolu] OpenFileDialog: manipuler des fichiers "ajouter/enregistrer"
DM programme CHiffre de Vigenère[C] Algo pour trouver un sens d'incrément
[Résolu] Mettre à jour/ajouter éléments dans un XML en C#coment faire tourner un borland C++ sur windoiws10
Plus de sujets relatifs à : Programme Tripode C


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR