Go Down

Topic: Help---Errore : expected class-name before '{' token!! (Read 615 times) previous topic - next topic

sfigi

Salve a tutti,
sono nuovo e ho appena iniziato ad usare Arduino.
Sto lavorando con USB shield della CIRCUIT@HOME per il collegamento del modem gprs.
Per il programma ho copiato il loro esempio ma ho un sacco di errori nella Verifica.
Ho semplificato il programma per cercare di capire:

/* Arduino terminal for PL2303 USB to serial converter and DealeXtreme GPRS modem. */
/* USB support */
#include <avrpins.h>
#include <max3421e.h>
#include <usbhost.h>
#include <usb_ch9.h>
#include <Usb.h>
#include <usbhub.h>
#include <avr/pgmspace.h>
#include <address.h>
/* CDC support */
#include <cdcacm.h>
#include <cdcprolific.h>
/* Debug support */
#include <printhex.h>
#include <message.h>
#include <hexdump.h>
#include <parsetools.h>

class PLAsyncOper : public CDCAsyncOper
{
public:   
  virtual uint8_t OnInit(ACM *pacm);
};

Non c'è molto eppure ho  i seguenti due errori:
expected class-name before '{' token
'ACM' has not been declared

Le librerie richieste sono salvate nella directory libraries, è stata creata nello stesso folder dove vengono salvati gli sketch.
Sto utilizzando la versione arduino 1.0.2 con windows XP SP2.
Ho provato ad utilizzare "" invece di <> per includere le librerie, ho provato a commentare le librerie ma non cambia nulla.

Le librerie sono state scaricate dal sito CIRCUIT@HOME e dai vari post che ho letto, da parte loro sembra tutto ok.

Se qualcuno ha un'idea o suggerimento perché sono ad un punto morto.
Grazie.
Dario.

lesto

in quale di quelli include è presentre la classe CDCAsyncOper ? e in quale la classe/tipo ACM?
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

sfigi

al momento ho fatto questo esperimento, ho scoperto che tutte le librerie terminavano le linee con LF in formato UNIX anziché CRLF per il formato Windows.
Con notepad++ ho cambiato LF con CRLF e adesso tutti gli errori(una marea) sono relativi alle librerie:
error: stray '#' in program
error: stray '\342' in program
error: invalid suffix "f22690c1da4e15b83da9d951894173f" on integer constan
'tag' does not name a type
expected unqualified-id before '<' token
e tanti altri.

Sembra quasi che ci sia una incompatibilità tra il mio editor e il modo in cui sono state scritte le librerie.

tuxduino

1) Usa i code tags (tasto #) quando posti codice. E' più leggibile. Prima di pubblicarlo premi CTRL+T nell'IDE, l'indentazione (e la chiarezza) ne guadagna.
2) Pubblica tutto il codice che usi, anche tutti i file che includi. Puoi allegarli cliccando su "additional options" sotto la finestra del messaggio.
E' molto difficile dire qualcosa di utile quando i messaggi di errore sono riportati fuori dal contesto e non si ha il codice che li ha generati per fare prove... :)

lesto

uhm, questo è un problema di charset. Secondo me hai fatto copia incolla di quel codice da qualche sito.

in particolare, oltre agli a-capo, devi controllare le virgolette " che non siano " (da error: stray '\342' in program, il \342 è il codice di ")
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Go Up