Pages: 1 ... 3 4 [5]   Go Down
Author Topic: PROGRAMME URGENT  (Read 5255 times)
0 Members and 1 Guest are viewing this topic.
Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

En dehors de la boucle while()...
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Offline Offline
Full Member
***
Karma: 0
Posts: 154
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Là, est ce que je suis en dehors du While?

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0; // on met le compteur a zero
int x = 1; // x est le nombre de recommencement de boucle pour y et z
int y = 12; // y est la vitesse en tour minutes
int z = 300; // z est le temps de marche du moteur pour y

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < x) {
analogWrite(PIN_VITESSE, y); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(z); // le moteur reste allumé 5mins
compteur++;
}
analogWrite(PIN_VITESSE, 0);
}
Logged

France
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3626
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Là, est ce que je suis en dehors du While?
C'est pas compliqué de la savoir. Dans l'IDE arduino, lorsque le curseur se trouve après une accolade fermante ou ouvrante il met en surbrillance l'accolade correspondante (donc ouvrante ou fermante)

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0; // on met le compteur a zero
int x = 1; // x est le nombre de recommencement de boucle pour y et z
int y = 12; // y est la vitesse en tour minutes
int z = 300; // z est le temps de marche du moteur pour y

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < x) {     <----------------------------------------------------------  Si tu places le curseur ici
analogWrite(PIN_VITESSE, y); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(z); // le moteur reste allumé 5mins
compteur++;
}                         <----------------------------------------------------------  Il met cette accolade en surbrillance donc analogWrite est bien hors du while
analogWrite(PIN_VITESSE, 0);
}

Il fait la même chose pour les parenthèses
Logged

IDF/SO
Offline Offline
Edison Member
*
Karma: 41
Posts: 2274
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Est-ce que je suis dans la boucle ?
Il existe une méthode d'écriture qui s'appelle l' indentation pour éviter de se poser ce genre de question.
Si tu ne connais pas fais un tour ici :
http://fr.wikipedia.org/wiki/Style_d%27indentation
Logged

Ales
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3763
Do or DIY
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Punaise, vous avez de la patience les gars ...
Logged


IDF/SO
Offline Offline
Edison Member
*
Karma: 41
Posts: 2274
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

C'est vrai, mais c'est quand même en quantité limité et là le stock est proche de zéro.
A noter que ma proposition est à prendre au second degré   smiley-grin.

Ce qui me choque le plus dans cette histoire c'est que des professeurs laissent des jeunes s'embarquer dans des réalisations qui manifestement ne sont pas du tout à leur portée.
Le professeur de l'aéroglisseur lui au moins avait l'air de bien border son sujet.

Pour un TPE (Travail Personnel Encadré) de classe de première on ne laisse pas partir des jeunes sans expérience dans de la programmation en C.

A moins que notre jeune programmeur n'ait pas tenu compte de l'avis de son prof.........
Logged

Bretagne
Offline Offline
Full Member
***
Karma: 2
Posts: 197
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

va falloir créer un sous-forum "Aide aux devoirs". smiley-wink
Pour l'individualisation, il faut reconnaître que c'est au Top.
L'école du futur???


et il n'y a pas que chez Arduino!
http://www.sur-la-toile.com/forum-22-1--Aide-aux-devoirs.html
c'est comme à la Samaritaine! Il y manque juste la matière "Arduino"  smiley-lol



« Last Edit: December 21, 2012, 05:23:49 am by papybricol » Logged

...ils embarquèrent la logique, coupèrent les cordons, alors, libérés de leurs chaînes, une immensité s'ouvrait devant eux...

Offline Offline
Full Member
***
Karma: 0
Posts: 154
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Merci pour vos aides, pour le TPE, on m'a simplement demandé de faire un programme pour piloter un moteur, je n'ai pas choisis.
Logged

Offline Offline
Faraday Member
**
Karma: 34
Posts: 5183
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

...

Ce qui me choque le plus dans cette histoire c'est que des professeurs laissent des jeunes s'embarquer dans des réalisations qui manifestement ne sont pas du tout à leur portée.
Le professeur de l'aéroglisseur lui au moins avait l'air de bien border son sujet.

Pour un TPE (Travail Personnel Encadré) de classe de première on ne laisse pas partir des jeunes sans expérience dans de la programmation en C.

A moins que notre jeune programmeur n'ait pas tenu compte de l'avis de son prof.........

Bonjour 68tjs
Je suis d'accord avec ta reflexion
J'ai pas mal de petit(e)s jeunes en section "scientifique" dans ma famille, je vais les passer "à la question" à l'occasion des fetes.
Si effectivement le monde arduino peut etre un bon vecteur d'apprentissage de réalisation, il n'en demeure pas moins qui ça se résume à :

Quote
"Vous avez devant vous :
- "un truc bleu qui s'appelle un arduino"
- "des trucs à trois pattes qui s’appellent transistors"
- "quelques machins supplémentaires et des bouts de fils de couleurs différentes"
- "vous trouverez toutes les infos sur internet"
- " Et avec tout ça vous avez  4 heures pour réaliser un robot bipède qui doit monter et redescendre à l'envers un plan incliné à 70°  en moins de 30 secondes"

 smiley-mr-green
je n'appelle pas vraiment ça de la "bonne" pedagogie  smiley-cool
« Last Edit: December 21, 2012, 06:53:50 am by Artouste » Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 154
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
tu mets simplement ta pin_vitesse à 0 en dehors du while.
Quote
Le while dit : tant que la valeur est inférieur à ce qui est écrit dans ma configuration, ça rentre dans ma boite.... autrement ça passe tout droit.

Disons que tu mette ton while à 3, à chaque boucle ça rentre dans la boite et ça incrémente ton compteur de 1, à la troisième boucle, ton compteur est à 3, correspondant à la valeur du while.... et ça passe tout droit, sans incrémenter ton compteur, donc ton compteur ne fonctionne que 3 fois si il est dans la boucle du while.

Donc maintenant mon code est correct, le moteur s'arrete bien après le while:

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0; // on met le compteur a zero
int x = 1; // x est le nombre de recommencement de boucle pour y et z
int y = 12; // y est la vitesse en tour minutes
int z = 300; // z est le temps de marche du moteur pour y

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < x) {
analogWrite(PIN_VITESSE, y); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(z); // le moteur reste allumé 5mins
compteur++;
}
analogWrite(PIN_VITESSE, 0);
}
Logged

Pages: 1 ... 3 4 [5]   Go Up
Jump to: