[RÉSOLU] Erreurs de code à régler...

Bonjour !

Je suis en train de taper mon code et je tombe sur quelques erreurs que je ne comprends pas...

Mon code n' est pas fini, encore le montage non terminé et donc les pins pas encore définis

Je débute dans le code sur arduino, dites-moi s' il y a des problèmes de syntaxes marquant ou autre

Le code :

#include <EEPROM.h>
#include <SoftwareSerial.h>

SoftwareSerial HC06(13,12);

boolean TriggerPulled = false;
boolean tirDepuiSmartphone == false;
boolean secu = false;
boolean bbEngagee = false;
boolean enregistrerLesVar = false;
boolean attendre1500ms = false;
boolean attendre1500ms2 = false;
unsigned int chargeur = 0;
unsigned int nozzleEnArriere = 0;
unsigned int tempsOuverturePoppetProfile1 = 0;
unsigned int tempsOuverturePoppetProfile2 = 0;
string messageRecu = "";

//DEFINE et pins

const int btn_culasse = //pin
const int Poppet = //pin
const int Nozzle = //pin
const int selecteurTir = //pin
const int trigger = //devine ?

Void Setup()

{
//lancement du Bluetooth
HC06.begin(9600);

//déclaration des broches
PinMode(btn_culasse, INPUT_PULLUP);
PinMode(Poppet, OUTPUT);
PinMode(Nozzle, OUTPUT);
PinMode(selecteurTir, INPUT);
PinMode(trigger, INPUT);

//récupération des valeurs des variables antérieur à la dernière extinction
EEPROM.get(/*toute les var nécessaires, emplacement de l' enregistrement*/)
}

void Loop()
{

// récupération de l' état de la détente (high = pressée)

    If(digitalRead(trigger) == HIGH || tirDepuiSmartphone == true)
        {
        triggerPulled = true;
        }

// conditions pour le tir

    If(secu == false && triggerPulled == true && chargeur != 0 && bbEngagee == true)
        {
        Tir();
        }

// rechargement puis mise en arrière de la culasse pour relancer un cycle de tir

    If(digitalRead btn_culasse) == LOW)
        {
        Rechargement();
        }

// Enregistrement des variables si sur l' app le bouton est pressé

    If(enregistrerLesVar == true)
        {
        Enregistrement();
        }

// réception et traitement du message reçu de l' app (Bluetooth)

    While(HC06.avaliable() != 0)
        {
        Delay(3);
        char c = HC06.read();
        messageRecu += c;
        }
    If(messageRecu.lengh() != 0)
        {
        Bluetooth()
        }
}




// ---------------------------------------------------------------------------------=[ FONCTIONS ]=---------------------------------------------------------------------------------





// programme de tir et sélection du profil

Void Tir()
{
    If(DigitalRead(selecteurTir) == HIGH)
        {
        DigitalWrite(Poppet,HIGH);
        Delay(tempsOuverturePoppetProfile1 * 100);
        DigitalWrite(Poppet,LOW);
        bbEngagee = false;
        If(attendre1500ms1 == true)
            {
            Delay(1500);
            }
        Else
            {
            Delay(200);
            }
        If(chargeur != 0)
            {
            DigitalWrite(Nozzle,HIGH);
            Delay(nozzleEnArriere * 100);
            DigitalWrite(Nozzle,LOW);
            bbEngagee = true;
            chargeur--;
            }
        }

//deuxième profil de tir -------------------------------------

    Else if(DigitalRead(selecteurTir) == LOW)
        {
        DigitalWrite(Poppet,HIGH);
        Delay(tempsOuverturePoppetProfile2 * 100);
        DigitalWrite(Poppet,LOW);
        bbEngagee = false;
        If(attendre1500ms2 == true)
            {
            Delay(1500);
            }
        Else
            {
            Delay(200);
            }
        If(chargeur != 0)
            {
            DigitalWrite(Nozzle,HIGH);
            Delay(nozzleEnArriere * 100);
            DigitalWrite(Nozzle,LOW);
            bbEngagee = true;
            chargeur--;
            }
        }
}


//fonction de rechargement

Void Rechargement()
{
    chargeur = 20;
    DigitalWrite(Nozzle , HIGH);
    Delay(nozzleEnArriere * 100);
    DigitalWrite(Nozzle , LOW);
    chargeur--;
    bbEngagee = true;
}


//fonction d' enregistrement des variables sur l' EEPROM, NON FAIT

Void Enregistrement()
{
    EEPROM.put(/*toute les var necessaires*/);
}


//fonction de mise à jour des variables via Bluetooth, NON FAIT

Void Bluetooth()
{
    If(messageRecu.indexOf("DN") != -1)
        {
        
        }
}

Et suit le rapport d' erreurs... je ne comprend pas pourquoi il ne reconnais pas "boolean" pour les variables...

Code_Barrett:7: error: 'boolean' does not name a type

Code_Barrett:8: error: 'boolean' does not name a type

Code_Barrett:9: error: 'boolean' does not name a type

Code_Barrett:10: error: 'boolean' does not name a type

Code_Barrett:11: error: 'boolean' does not name a type

Code_Barrett:12: error: 'boolean' does not name a type

Code_Barrett:13: error: 'boolean' does not name a type

Code_Barrett:18: error: 'string' does not name a type

Code_Barrett:23: error: expected primary-expression before 'const'

Code_Barrett:45: error: expected ',' or ';' before 'void'

exit status 1
'boolean' does not name a type

j' espère que vous pourrez m' aider :confused:

Aussi, les librairies incluse dans le code, je n' ai pas compris si on a juste besion de les signaler dans le code ou s' il faut faire qqchose en plus :frowning:
mettre un certain fichier ou autre...

Merci !! et Bonne année !

bonjour,
déjà une erreur que tu aurais pu voir

boolean tirDepuiSmartphone == false;
Void

au lieu de

void
string

au lieu de

String

ETC.....

fais des recherches un peu plus pour trouver des erreurs de majuscules et minuscules

Effectivement ! maintenant mon code ressemble a une guirlande de noel ^^

je vais continuer a chasser ce genre d' erreur...

mais le problème avec boolean reste, un autre pb ?

Coucou !
J' avance autant au niveau hardware que software mais deux problèmes :

1- Quand je vérifie le code, il me met " 'boolean' does not name a type " alors que tout est bien orthographié...

2- J' aimerais utiliser le port 0 et 1 de mon Arduino, possible ? Si oui y a t' il une manip' spéciale ?

Merci !!!

vérifier avec ide 1.5 et pas d'erreur boolean.
utiliser pin 0-1 => plus de serial possible pour debugger

hello
tu as corrigé ici:
boolean tirDepuiSmartphone == false;

Oui evidemment... ainsi que les dizaines de problèmes de majuscules etc ^^

Mais le problème de boolean reste et je ne sais pas comment le résoudre... j' ai pourtant la dernière version de l' IDE normalement ?! la 1.6.6 ...

du coup faut pas toucher aux 0 et 1 ? ça m' embête un peu mais bon tant pis

testé avec 178 et 164

#include <EEPROM.h>
#include <SoftwareSerial.h>

SoftwareSerial HC06(13,12);

boolean triggerPulled = false;
boolean tirDepuiSmartphone = false;
boolean secu = false;
boolean bbEngagee = false;
boolean enregistrerLesVar = false;
boolean attendre1500ms1 = false;
boolean attendre1500ms2 = false;
unsigned int chargeur = 0;
unsigned int nozzleEnArriere = 0;
unsigned int tempsOuverturePoppetProfile1 = 0;
unsigned int tempsOuverturePoppetProfile2 = 0;
String messageRecu = "";

//DEFINE et pins

const int btn_culasse =13; //pin
const int Poppet =12;//pin
const int Nozzle =11;//pin
const int selecteurTir =10; //pin
const int trigger = 9;//devine ?

void setup()

{
//lancement du Bluetooth
HC06.begin(9600);

//déclaration des broches
pinMode(btn_culasse, INPUT_PULLUP);
pinMode(Poppet, OUTPUT);
pinMode(Nozzle, OUTPUT);
pinMode(selecteurTir, INPUT);
pinMode(trigger, INPUT);

//récupération des valeurs des variables antérieur à la dernière extinction
//EEPROM.get(/*toute les var nécessaires, emplacement de l' enregistrement*/);
}

void loop()
{

// récupération de l' état de la détente (high = pressée)

    if(digitalRead(trigger) == HIGH || tirDepuiSmartphone == true)
        {
        triggerPulled = true;
        }

// conditions pour le tir

    if(secu == false && triggerPulled == true && chargeur != 0 && bbEngagee == true)
        {
        Tir();
        }

// rechargement puis mise en arrière de la culasse pour relancer un cycle de tir

    if(digitalRead (btn_culasse) == LOW)
        {
        Rechargement();
        }

// Enregistrement des variables si sur l' app le bouton est pressé

    if(enregistrerLesVar == true)
        {
        Enregistrement();
        }

// réception et traitement du message reçu de l' app (Bluetooth)
/*
    while(HC06.avaliable() != 0)
        {
        delay(3);
        char c = HC06.read();
        messageRecu += c;
        }
    if(messageRecu.lengh() != 0)
        {
        Bluetooth();
        }
 */
}




// ---------------------------------------------------------------------------------=[ FONCTIONS ]=---------------------------------------------------------------------------------





// programme de tir et sélection du profil

void Tir()
{
    if(digitalRead(selecteurTir) == HIGH)
        {
        digitalWrite(Poppet,HIGH);
        delay(tempsOuverturePoppetProfile1 * 100);
        digitalWrite(Poppet,LOW);
        bbEngagee = false;
        if(attendre1500ms1 == true)
            {
            delay(1500);
            }
        else
            {
            delay(200);
            }
        if(chargeur != 0)
            {
            digitalWrite(Nozzle,HIGH);
            delay(nozzleEnArriere * 100);
            digitalWrite(Nozzle,LOW);
            bbEngagee = true;
            chargeur--;
            }
        }

//deuxième profil de tir -------------------------------------

    else if(digitalRead(selecteurTir) == LOW)
        {
        digitalWrite(Poppet,HIGH);
        delay(tempsOuverturePoppetProfile2 * 100);
        digitalWrite(Poppet,LOW);
        bbEngagee = false;
        if(attendre1500ms2 == true)
            {
            delay(1500);
            }
        else
            {
            delay(200);
            }
        if(chargeur != 0)
            {
            digitalWrite(Nozzle,HIGH);
            delay(nozzleEnArriere * 100);
            digitalWrite(Nozzle,LOW);
            bbEngagee = true;
            chargeur--;
            }
        }
}


//fonction de rechargement

void Rechargement()
{
    chargeur = 20;
    digitalWrite(Nozzle , HIGH);
    delay(nozzleEnArriere * 100);
    digitalWrite(Nozzle , LOW);
    chargeur--;
    bbEngagee = true;
}


//fonction d' enregistrement des variables sur l' EEPROM, NON FAIT

void Enregistrement()
{
   // EEPROM.put(/*toute les var necessaires*/);
}


//fonction de mise à jour des variables via Bluetooth, NON FAIT

void Bluetooth()
{
    if(messageRecu.indexOf("DN") != -1)
        {
       
        }
}

Wow merci !! Mais je n' ai pas compris "testé avec 178 et 164" , que signifient ces nombres ?

peut être qu'en rajoutant un point après le 1 tu comprendras :slight_smile:

Ok je me disais bien ^^

je vais essayer de mettre à jour l' IDE...

Merci !

Problème résolu en passant sur la version 1.6.7 !!

Merci beaucoup !