[ARDUINO] Paraite resultat aléatoire ou fauss

Fermé
Nivekio Messages postés 34 Date d'inscription vendredi 21 mai 2010 Statut Membre Dernière intervention 4 janvier 2012 - 7 déc. 2011 à 10:12
Nivekio Messages postés 34 Date d'inscription vendredi 21 mai 2010 Statut Membre Dernière intervention 4 janvier 2012 - 4 janv. 2012 à 14:25
Bonjour,

J'ai un petit soucis avec l'arduino, je créer un programme afin que le courant sorte par 1 pin selon l'endroit alimenté. L'algo semble marché au debut cependant on dirait qu'il y à un problème d'éléctricité statique ; je m'explique, lorsque l'arduino touche une table la lumiere de test s'éteint puis se rallume au moment ou le contact s'arrete.

de même et plus incompréhenssible des observation similaire ont été faite lorsque je passais ma main au dessus.

Voici le code utliser.

int ledPin = 6; //tensy 2: 11 Teensy 2++ : 6
int ledPin2 = 4;
int inPinG = 17;
int inPinD = 13;
volatile int stateG = LOW; // volatile corespond a l'inverse de const
volatile int stateD = LOW;


void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(ledPin, OUTPUT); //La pin servira à la sortie (à l'écriture). Pas de lecture.
pinMode(inPinG, INPUT);
pinMode(inPinD, INPUT); //La pin pourra recevoir des données. Vous ne pourrez pas effectuer d'écriture dessus.

}

void loop()
{
stateG = digitalRead(inPinG);// on lit la pin inPinG
digitalWrite(ledPin,stateG); // pour mettre sa valeur dans la led permettant le test
stateD = digitalRead(inPinD);
digitalWrite(ledPin2,stateD);
// probleme avec la seconde Pin ; la ou la premiere suit quasiement les mouvement d'entrée et de sorti
//de courant la pin ou je met les LED s'allume instantanement apres la mise de courant
//dans l'inPin correspondante mais ne s'eteint que beaucoup plus tard :
//de plus l'intensité de la lumiere parait nettement inferieure a celle que
//l'on observe losqu'on la met directement entre le +5 et GND


}



Mon projet est du coup en stand by pendant un petit moment.

1 réponse

Salut

Déjà petite faute de frappe:
pinMode(ledPin, OUTPUT);  
pinMode(ledPin, OUTPUT); //La pin servira à la sortie (à l'écriture). Pas de lecture.  

devrait être:
  
pinMode(ledPin, OUTPUT);  
pinMode(ledPin2, OUTPUT); //La pin servira à la sortie (à l'écriture). Pas de lecture.  

Ensuite je pense que le problème vient du fait que les pull-up des entrées n'ont pas été mises... Arduino en comporte déjà nativement, il faut les activer en rajoutant
digitalwrite(inpinG, HIGH); 
digitalwrite(inpinD, HIGH); 

Pour le reste ça m'a l'air bon mis à part le fait que je serais plutôt passé par une structure conditionelle au lieu de directement écrire sur tes pattes de sortie les valeurs lues en entrée
en esperant t'avoir aidé
0
Nivekio Messages postés 34 Date d'inscription vendredi 21 mai 2010 Statut Membre Dernière intervention 4 janvier 2012 2
4 janv. 2012 à 14:25
Merci, je vais tester cela des que possible ! (Ce projet n'étant pas actuellement une priorité)
0