Pages: [1]   Go Down
Author Topic: [Risolto] Problema parsing con aJson.h  (Read 479 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao ragazzi, sto implementando una comunicazione tra il mio Arduino(Uno) ed il computer, utilizzando il protocollo Json..
Nello sketch di arduino, ho importato la libreria aJson.h che ho scaricato da github, per il parsing delle stringhe che ricevo dal pc..
Ma quando devo creare l'oggetto Json mi da questo errore:

Error: expected primary-expression before '.' token
nella parte in rosso...


Questo è lo sketch di arduino:
______________________________________________________________


Code:
#include <aJSON.h>
#include <SPI.h>
#include <String.h>

void setup()

{
  Serial.begin(9600);
}

void loop()
{
    String json_string;
 
if (leggi( json_string)>0 )

      {
    [color=red]  aJsonObject* jsonObject;
      jsonObject = aJsonClass.parse(json_string);[/color]
           }
}

int leggi(String s){

  /* funzione che legge la stringa da seriale */

}

cosa significa?
« Last Edit: July 04, 2013, 02:49:29 am by zio90 » Logged

ivrea (to)
Offline Offline
Faraday Member
**
Karma: 86
Posts: 4848
miaaao ^-^
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

A questa pagina leggo sempre aJson.parse()  e non  aJsonClass.parse()
https://github.com/interactive-matter/aJson
Logged

my name is IGOR, not AIGOR

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si, hai ragione, ho messo aJsonClass perchè se lascio quella ''originale'' mi da questo errore:

Code:
Error:
sketch_ricezioneStringa.ino: In function ‘void loop()’:
sketch_ricezioneStringa:25: error: no matching function for call to ‘aJsonClass::parse(String&)’
/home/marco/Scaricati/arduino-1.0.5/libraries/aJson/aJSON.h:178: note: candidates are: aJsonObject* aJsonClass::parse(aJsonStream*)
/home/marco/Scaricati/arduino-1.0.5/libraries/aJson/aJSON.h:179: note:                 aJsonObject* aJsonClass::parse(aJsonStream*, char**)
/home/marco/Scaricati/arduino-1.0.5/libraries/aJson/aJSON.h:180: note:                 aJsonObject* aJsonClass::parse(char*)

edit by mod: per favore includere i messaggi del terminale usando gli appositi tag code
« Last Edit: July 03, 2013, 01:47:01 pm by leo72 » Logged

ivrea (to)
Offline Offline
Faraday Member
**
Karma: 86
Posts: 4848
miaaao ^-^
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Lui ti dice che il parse() come comando c'e' ma che non accetta come parametro un oggetto String
Devi per forza spostare i dati (caratteri) dalla String a una stringa ovvero a un vettore di caratteri tipo cosi:
char buf[30];
json_string.toCharArray(buf, 30);

e poi passare alla   .parse(buf);

vedi tu se 30 per il buffer bastano
Logged

my name is IGOR, not AIGOR

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

aaaaah ecco c..., mi sono confuso tra l'oggetto String e un array di caratteri (stringa)...  adesso dovrebbe andare sicuro, ti dico..
« Last Edit: July 03, 2013, 01:48:03 pm by leo72 » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e infatti NON mi da errori, compila subito....

un Grazie immenso !!!!!!!!!! grande..
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 327
Posts: 22651
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Moderiamo il linguaggio, per favore.
Logged


Pages: [1]   Go Up
Jump to: