Show Posts
Pages: [1] 2 3
1  International / Français / Re: besoin d'aide pour un projet tellement simple on: April 03, 2013, 06:08:38 pm
Quote
zzeepphh


 Mais tant pis, je vais me farcir deux semaine de tutos, parce-qu'en 6 posts, pas un seul ne tend a m'aiguiller vers la résolution de mon problème.

Rhoooo c'est pas gentil de dire ça !

surtout que fdunews t'indique :

Quote
fdunews

dans les exemples livrés avec l'environnement de développement tu vas trouver la moitié de ce que tu veux faire. Ensuite en cherchant un peu sur le net, tu vas sûrement trouver des exemples de minuteries toutes faites et qui feront très certainement une bonne base de départ pour développer la fonction telle que tu la désires et là pour le coup tu trouveras de l'aide.

 Si ça ce n'est pas de l'aiguillage vers la solution, tu devrais relire !

Deux mots me viennent à l'esprit : fainéantise et mauvaise foi .... on peut pas lutter  smiley-lol
2  International / Français / Re: Projet domotique. on: March 18, 2013, 03:23:31 am
Salut Anthony,

Comme bien souvent, G...est notre ami :

recherche Google

Pour obtenir de l'aide il faudrait que tu puisses nous en dire davantage ...

3  International / Français / Re: Stocker un float dans l'EEPROM on: March 07, 2013, 03:50:51 am
Salut, j'ai rencontré le même problème qui est résolu aujourd'hui ...

http://arduino.cc/forum/index.php/topic,147297.0.html

Bon test.
4  International / Français / Re: Problème de débutant: gestion de boutons on: February 18, 2013, 09:04:43 am
Salut,

Quote
Il y a forcement un moyen de gérer les boutons tout en laissant le programme boucler.

En utilisant les interruptions  smiley-lol
5  International / Français / Re: Faisabilité projet robot sentinelle on: February 12, 2013, 08:44:24 am
Salut,

Un petit lien qui pourrait t'aider ...  smiley-wink

http://www.unmaintained.com/index.php/spaghetti-ip-cam-arduino-motion-detect-sprinkler/

Arduinement

ps -> oh les pov. bêtes .....
6  International / Français / Re: DS1307 on: February 09, 2013, 07:57:20 am
Bonjour,

Quote
Personne n'a eu de souci avec des ds1307?

Si si rassure toi ! Voila ce qui m'a "sauvé"

http://code.google.com/p/libds1307/downloads/detail?name=DS1307.zip&can=2&q=

Bon tests ...
7  International / Français / Re: Connection wifi shield on: February 08, 2013, 04:51:18 am
Bonjour ... franchement  smiley-cool

Extrait du premier site trouvé sur la toile :

Quote
Aucune soudure n'est nécessaire, le shield s'emboite directement sur la carte Arduino et l'antenne WiFi est intégrée. La programmation est aussi considérablement simplifiée par l'utilisation de librairies dédiées pour le WiFi et la gestion de la carte SD.

Je ne te laisse pas le lien volontairement. G...e est ton ami ...
8  International / Français / Re: EEPROM et union "libre" ... on: February 06, 2013, 09:07:47 am

Quote
Rien ne te dit qu'un float fait vraiment 4 octets

Mince alors, ça ce n'est pas forcément une bonne nouvelle. Mais peu importe puisque je n'ai plus d'union à faire et donc plus besoin de connaitre la taille occupée par la variable que je souhaite sauvegarder.

C'est génial. Merci bien  smiley-lol

Du coup voiçi le code modifié. Il fait la "même" chose que le premier que je vous ai soumis, mais en plus simple et en plus "universel"

Code:
void setup() {
  Serial.begin(9600); 
}

void loop() {

  float test = 123.456;
  byte* ptr = (byte*) &test;

  for (byte i = 0; i < sizeof(test); ++i) {
    Serial.println(ptr[i],BIN);
  }

  ptr[0] = 121;
  ptr[1] = 233;
  ptr[2] = 246;
  ptr[3] = 66;

  Serial.println(test,3);

  delay(10000);

}



le moniteur serie m'affichant :

Quote
1111001
11101001
11110110
1000010
123.456

Un obstacle de "passé", vivement le prochain.....

9  International / Français / [Resolu] EEPROM et union "libre" ... on: February 06, 2013, 07:01:47 am
Bonjour à tous.

Grace à vos nombreux conseils avisés, mon projet avance toujours. Mon objectif était de pouvoir sauvegarder la valeur ( float ) de déclenchement de certaines alarmes dans une EEPROM. Aucun souci pour lire ou écrire un octet, mais comment faire pour sauvegarder des floats - ou autres - La solution de multiplier le float par 10x, récupérer chaque digit et les savegarder les uns apres les autres ne me satisfaisait pas, mais alors pas du tout. Je me suis tourné vers l'utilisation des pointeurs, je suis certain que ce doit être possible de les utiliser dans un cas comme le mien mais je n'ai pas reussi.

 Edit : "maintenant ça y est !

Je séchais jusqu'à ce que je découvre - en fouillant vraiment -union. Voiçi le code tel qu'il est au moment ou je laisse ces lignes.

Code:
void setup() {
  Serial.begin(9600);  
}

void loop() {

  union u_tag {
    byte b[4];
    float valeur;
  }
  u;

  u.valeur = 123.456;

  for (int i = 0; i < sizeof(u.valeur); i++){
    Serial.print(i);
    Serial.print(" ");
    Serial.println(u.b[i], BIN);
  }
  Serial.println("");
  
  // ces valeurs sont celles affichées par le moniteur série
  u.b[0] = 121;
  u.b[1] = 233;
  u.b[2] = 246;
  u.b[3] = 66;  

  Serial.println(u.valeur,3);
  
  delay(1000);
}

C'est formidable. Ca fonctionne, le moniteur serie m'affiche :

Quote
0 1111001
1 11101001
2 11110110
3 1000010

123.456

Je souhaiterai pouvoir "automatiser" ce traitement.

Une de mes nombreuses question est la suivante. Existe t-il en language Arduinesque lune fonction TypeOf ou GetType, une fonction qui me permettrai de connaitre le type d'une variable - int, long, float, objet ou autre - ?

Merci bien à tout ceux qui m'ont deja aidé et un grand merci à la communauté  smiley

Un Ardui-Novice




10  International / Le bar / Re: Station air chaud ebay on: February 05, 2013, 11:22:08 am
C'est cadeau ... pour un coup ou je propose une réponse au lieu de poser une question, voila pour toi ...


 
11  International / Français / Re: [Resolu] L'interruption mystérieuse ... on: January 30, 2013, 03:30:00 pm
Merci pour toutes vos reponses.

Quote
Un condensateur de 10 ou 100 nF en parallèle sur le bouton poussoir forme un excellant anti-rebond matériel qui dans la très grande majorité des cas dispense d'utiliser un anti-rebond logiciel.

100nF installés, plus d'interruption mysterieuse et plus d'anti rebond logiciel. Je dois avouer que, grace à vous, mon montage à retrouvé réactivité et fiabilité ! C'est génial ...

Merci
12  International / Français / Re: L'interruption mystérieuse ... on: January 30, 2013, 02:55:36 pm
Merci bien  smiley-small

Quote
Habituellement on fait plutôt des résistances de pull-up avec une interruption FALLING.

Voila qui est fait. Du coup mon code devient :

Code:
const int DUREE_ANTI_REBOND = 300;  // milli secpondes antirebond pour les switchs
boolean action_clavier = false;
unsigned long timer_touche_suivante;
unsigned long timer_touche_enter;

void setup()
{
  Serial.begin(9600);

  // activer pull-up
  pinMode(2, INPUT);
  digitalWrite(2,HIGH);
  pinMode(3, INPUT);
  digitalWrite(3,HIGH);

  // def interruptions
  attachInterrupt(0, interruption_suivante, FALLING);
  attachInterrupt(1, interruption_enter, FALLING);
}

/* loop */
void loop()
{
  // allumer le voyant de la carte
  digitalWrite(13, HIGH);

  // delay
  for(int i = 0;i <= 1000; i++) {
    if(action_clavier) continue;
    delay(1);
  }
  action_clavier = false;

  // eteindre
  digitalWrite(13, LOW); 
}
/* fin de loop */

// ****************************************************** suivante 
void interruption_suivante()
{
  if (millis() > timer_touche_suivante + DUREE_ANTI_REBOND) { 
    timer_touche_suivante= millis();
    action_clavier = true;

    Serial.println("touche suivante");

  }
}

// ****************************************************** enter
void interruption_enter()
{
  if (millis() > timer_touche_enter + DUREE_ANTI_REBOND) {
    timer_touche_enter= millis();
    action_clavier = true;

    Serial.println("touche Enter");

  }
}

La mise en oeuvre est facilitée avec l'utilisation des pull-up internes de l'Aduino et l'interruption mysterieuse n'est plus !

Merci beaucoup
13  International / Français / Re: comment paramétrer un capteur de lumière on: January 30, 2013, 02:23:05 pm
Bonjour,

Code:
  int sensorValue = analogRead(0);
  Rsensor=(float)(1023-sensorValue)*10/sensorValue;

Outch, il va y avoir un souci si sensorValue = 0

Mais ca n'arrivera jamais, n'est-ce pas ? smiley-cool
14  International / Français / [Resolu] L'interruption mystérieuse ... on: January 30, 2013, 02:11:58 pm
Bonjour à tous.

J'ai cablé les deux interruptions de mon Arduino Uno comme suit :



Lorsque "j'interruptise" un seul bp avec une frequence de qques Hz, parfois, ce n'est pas la bonne interruption qui s'enclenche. C'est un grand mystere ....

Code:
const int DUREE_ANTI_REBOND = 300;  // milli secpondes antirebond pour les switchs
boolean action_clavier = false;
unsigned long timer_touche_suivante;
unsigned long timer_touche_enter;

void setup()
{
  Serial.begin(9600);
  activer_interruptions();
}

/* loop */
void loop()
{
  // allumer le voyant de la carte
  digitalWrite(13, HIGH);

  // delay
  for(int i = 0;i <= 1000; i++) {
    if(action_clavier) continue;
    delay(1);
  }

  // eteindre
  digitalWrite(13, LOW);  
}
/* fin de loop */

// activer les interruptions
void activer_interruptions() {
  attachInterrupt(0, interruption_suivante, RISING);
  attachInterrupt(1, interruption_enter, RISING);
}

// desactiver les interruptions
void desactiver_interruptions() {
  detachInterrupt(0);
  detachInterrupt(1);
}
// ****************************************************** suivante  
void interruption_suivante()
{
  desactiver_interruptions();

  if (millis() > timer_touche_suivante + DUREE_ANTI_REBOND) {  
    timer_touche_suivante= millis();
    action_clavier = true;

    Serial.println("touche suivante");
    
  }

  activer_interruptions();
}

// ****************************************************** enter
void interruption_enter()
{
  desactiver_interruptions();

  if (millis() > timer_touche_enter + DUREE_ANTI_REBOND) {
    timer_touche_enter= millis();
    action_clavier = true;

    Serial.println("touche Enter");

  }

  activer_interruptions();
}

En utilisant seulement le bouton poussoir "touche suivante" par exemple voici ce que j'obtiens dans le moniteur serie.

Quote
touche suivante
touche suivante
touche Enter                              -> aie aie aie smiley-grin
touche suivante
touche suivante
touche suivante
touche suivante
touche suivante
etc ........

Ca fait la même chose quelque soit l'interruption utilisée, et la frequence d'apparition de l'interruption mystere n'est pas fixe. parfois il faut 2 ou trois actions sur le BP, parfois il en faut 50 ou plus.

Je me demande si j'ai bien cablé, si 10k est suffisant comme resistance de pulldown. Bref, encore une fois beaucoup de questions et le forum Arduino pour vos réponses.

Je vous remercie d'avance.
15  International / Français / Re: modifier un code on: January 29, 2013, 04:37:58 pm
Quote
quand il va de 0° à 180°, angleMin vaut 0 et angleMax vaut 180
si je veux aller de 45° à 90° qu'est-ce que je pourrais bien mettre......

lol x 1000

essaie

Code:
int angleMin = 45;
int angleMax = 90;
Pages: [1] 2 3