EasyVR Shield: 'EasyVR' Does Not Name A Type

Arduino shields
Berichten: 30
Geregistreerd: 02 Sep 2013, 14:44

EasyVR Shield: 'EasyVR' Does Not Name A Type

Berichtdoor ArduinoFreak » 22 Jun 2014, 12:44

Hoi Iedereen, Ik heb laats een EasyVR gekocht ( een Shield ). Maar Toen ik het ging proberen Hield ik deze programma aan: http://download.tigal.com/veear/EasyVR_Appnote_SI2function.pdf
Toen ik klaar was gaf mijn arduino deze error aan:
"EasyVR" Does not name a type....
Ik heb zelf al wat dingetjes geprobeerd zoals: Software van arduino opnieuw installeren en ook van de EasyVR.
En de Jumer staat ook gewoon goed op zijn plek dus veder zal ik het ook echt niet weten, en op google kan ik niets er over vinden dat werkt.
Dit is de Hele code:
Code: Alles selecteren
#if defined(ARDUINO) && ARDUINO >= 100
  #include "Arduino.h"
  #include "Platform.h"
  #include "SoftwareSerial.h"
#ifndef CDC_ENABLED
  // Shield Jumper on SW
  SoftwareSerial port(12,13);
#else
  // Shield Jumper on HW (for Leonardo)
  #define port Serial1
#endif
#else // Arduino 0022 - use modified NewSoftSerial
  #include "WProgram.h"
  #include "NewSoftSerial.h"
  NewSoftSerial port(12,13);
#endif

#include "EasyVR.h"

EasyVR easyvr(port);

//Groups and Commands
enum Groups
{
  GROUP_1  = 1,
};

enum Group1
{
  G1_REDLED = 0,
  G1_GREENLED = 1,
  G1_RELAY = 2,
};


EasyVRBridge bridge;

int8_t group, idx;

void setup()
{
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(4, OUTPUT);
#ifndef CDC_ENABLED
  // bridge mode?
  if (bridge.check())
  {
    cli();
    bridge.loop(0, 1, 12, 13);
  }
  // run normally
  Serial.begin(9600);
  Serial.println("Bridge not started!");
#else
  // bridge mode?
  if (bridge.check())
  {
    port.begin(9600);
    bridge.loop(port);
  }
  Serial.println("Bridge connection aborted!");
#endif
  port.begin(9600);

  while (!easyvr.detect())
  {
    Serial.println("EasyVR not detected!");
    delay(1000);
  }

  easyvr.setPinOutput(EasyVR::IO1, LOW);
  Serial.println("EasyVR detected!");
  easyvr.setTimeout(5);
  easyvr.setLanguage(0);

  group = EasyVR::TRIGGER; //<-- start group (customize)
}

void action();

void loop()
{
  easyvr.setPinOutput(EasyVR::IO1, HIGH); // LED on (listening)

  Serial.print("Say a command in Group ");
  Serial.println(group);
  easyvr.recognizeCommand(group);

  do
  {
    // can do some processing while waiting for a spoken command
  }
  while (!easyvr.hasFinished());
 
  easyvr.setPinOutput(EasyVR::IO1, LOW); // LED off

  idx = easyvr.getWord();
  if (idx >= 0)
  {
    // built-in trigger (ROBOT)
    group = GROUP_1;
    // group = GROUP_X; <-- jump to another group X
    return;
  }
  idx = easyvr.getCommand();
  if (idx >= 0)
  {
    // print debug message
    uint8_t train = 0;
    char name[32];
    Serial.print("Command: ");
    Serial.print(idx);
    if (easyvr.dumpCommand(group, idx, name, train))
    {
      Serial.print(" = ");
      Serial.println(name);
    }
    else
      Serial.println();
    easyvr.playSound(0, EasyVR::VOL_FULL);
    // perform some action
    action();
  }
  else // errors or timeout
  {
    if (easyvr.isTimeout())
      Serial.println("Timed out, try again...");
    int16_t err = easyvr.getError();
    if (err >= 0)
    {
      Serial.print("Error ");
      Serial.println(err, HEX);
    }
  }
}

void action()
{
    switch (group)
    {
    case GROUP_1:
      switch (idx)
      {
      case G1_REDLED:
        // write your action code here
        digitalWrite(9, HIGH);
        // group = GROUP_X; <-- or jump to another group X for composite commands
        break;
      case G1_GREENLED:
        // write your action code here
        digitalWrite(8, HIGH);
        // group = GROUP_X; <-- or jump to another group X for composite commands
        break;
      case G1_RELAY:
        // write your action code here
        digitalWrite(4, HIGH)
        // group = GROUP_X; <-- or jump to another group X for composite commands
        break;
      }
      break;
    }
}

Als iemand weet wat er mis is Help me Alsjeblieft! Dankje

Ralph stoop

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: EasyVR Shield: 'EasyVR' Does Not Name A Type

Berichtdoor nicoverduin » 22 Jun 2014, 16:57

als je de boodschap "does not name a type" krijgt betekent dit dat de compiler (onderdeel van de IDE) het type (in jouw geval easyVR) niet kent. Dat komt doordat hij de library niet kan vinden. Dat wordt meestal veroorzaakt doordat je de library niet op de goede plek hebt geinstalleerd. Hij hoort op :
My documents/Arduino/libraries . Daar moet de folder staan met jouw library easyVR. Daarnaast moet je deze library ook importeren in de IDE als volgt:
in de IDE:
sketch->bibliotheek importeren en dan moet je hem zien in de lijst. Zo noet dan staat hij op de verkeerde plek.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Terug naar Shields

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 3 gasten