Pages: 1 [2] 3   Go Down
Author Topic: arduino due <=> mysql  (Read 3292 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10468
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la uno è un'architerttura AVR, ma la DUE è una ARM!!! quindi devi cercare una libreria per gli ARM e non per l'arduino, o il corrispondente della io.h
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Switzerland
Offline Offline
Faraday Member
**
Karma: 113
Posts: 5952
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la uno è un'architerttura AVR, ma la DUE è una ARM!!! quindi devi cercare una libreria per gli ARM e non per l'arduino, o il corrispondente della io.h

Ok per i differenti processori, ma ...nessuno ha già avuto e risolto il problema sino ad oggi ? Tu hai indicazioni di dove reperire le librerie adatte ? smiley

Grazie,

Guglielmo
Logged

Search is Your friend ... or I am Your enemy !

0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10468
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la DUE è relativamente recente... dubito. però credo che puoi modificare la lib per farne a meno
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Switzerland
Offline Offline
Faraday Member
**
Karma: 113
Posts: 5952
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la DUE è relativamente recente... dubito. però credo che puoi modificare la lib per farne a meno

Già ... troppo recente smiley-grin ... c'è ancora molto poco ...

Grazie comunque, smiley

Guglielmo
Logged

Search is Your friend ... or I am Your enemy !

Switzerland
Offline Offline
Faraday Member
**
Karma: 113
Posts: 5952
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Come da consiglio di lesto ... ho provato a mettere le mani nella libreria sha ed a sistemarla.

Ora compila correttamente sia per Arduino UNO che per Arduino DUE.

Ne sconsiglio l'uso su Arduino UNO ... l'esempio che c'è "sha256test" ho idea che va fuori memoria disponibile perché ... parte, ma a metà impazzisce smiley-grin

Su Arduino DUE mi funzionano tutti e tre gli esempi che sono allegati ed anche con tempi piuttosto accettabili (... mi riferisco al test "FIPS 180-2 B.3 : Processing 1000000 characters ...").

Riscontro un unica incongruenza nel programma "sha256test" su un unico risultato ... il "Test: RFC4231 4.8" ...
... il valore che ritorna è diverso da quello che, nel codice, viene indicato come valore che dovrebbe tornare.  La cosa è però un po' sospetta ... "sha1test" funziona correttamente, "hmacsha256test" funziona anche lui correttamente, "sha256test" funziona sempre correttamente MENO che per quel particolare Test ...   smiley-eek  Mah ...

Se qualcuno scopre l'arcano magari lo comunica ... smiley-grin

La libreria modificata è allegata al presente post.

Guglielmo

* Sha.zip (9.98 KB - downloaded 24 times.)
« Last Edit: March 14, 2013, 03:11:51 pm by gpb01 » Logged

Search is Your friend ... or I am Your enemy !

Offline Offline
Newbie
*
Karma: 2
Posts: 11
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

io cerco e chiedo in giro, forse riesco a risolvere,
grazie ragazzi
Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 113
Posts: 5952
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bé ... intanto con la libreria che ti ho allegato puoi già fare le tue prove (... funziona tutto a parte quel singolo test) smiley-wink

Guglielmo
Logged

Search is Your friend ... or I am Your enemy !

Offline Offline
Newbie
*
Karma: 2
Posts: 11
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Velocissimo Guglielmo complimente funziona!

Ora ho provato ad aggiungere la libreria mysql.h ed ecco che risalgono i problemi   smiley-grin :

\arduino\arduino-1.5.2\libraries\mysql\mysql.cpp: In member function 'boolean Connector::cmd_query_P(const char*)':
\arduino\arduino-1.5.2\libraries\mysql\mysql.cpp:140: error: 'strlen_P' was not declared in this scope
\arduino\arduino-1.5.2\libraries\mysql\mysql.cpp:149: error: 'pgm_read_byte_near' was not declared in this scope


* arduinomysql.ino (0.22 KB - downloaded 12 times.)
Logged

Offline Offline
Newbie
*
Karma: 2
Posts: 11
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Risolto.

allego sketch, la libreria mysql modificata e la libreria sha.

non ho avuto la possibilita di testarlo con il server mysql ma la compilazione funziona  smiley-lol

cmq ho usato la ide nightly build ma non dovrebbe cambiare

* arduinomysql.ino (0.82 KB - downloaded 28 times.)
* mysql.zip (13.13 KB - downloaded 30 times.)
* Sha.zip (10.15 KB - downloaded 27 times.)
Logged

0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10468
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ottimo lavoro ragazzi, veramente complimenti
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Roma
Offline Offline
Newbie
*
Karma: 0
Posts: 11
Fatti non fummo a viver come bruti, ma per seguir virtude e canoscenza.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao ragazzi, scusate se mi intrometto in questa discussione, ma stavo anch'io cercando di smanettare con mysql.
Ho scaricato le librerie che avete modificato, ma ho qualche problemino.
Perdonatemi, ma io non sono molto esperta come voi ed inoltre, mi sono inscritta da pochi giorni. Spero possiate aiutarmi a capire.
Vi spiego la mia situazione:

Ho recentemente acquistato un arduino uno con lo shield ethernet
Ho scaricato l'ide 1.0.4 ed anche l'1.5.2, anche se in realtà uso sempre il primo.
Dovrei fare, per un progettino di lavoro, quanto segue:

- leggere un xml generato dal webserver di una stampante (es: http://192.168.1.174/config/device ed in risposta mi da l'xml)
- estrarne i dati (credo si dica parsing) ed andarli a scrivere su un db mysql che ho su un host aruba
- contemporaneamente, dovrei andare a leggere un altro record dello stesso db, dove ci sarà scritto 1 o 0 ed in virtù di questo, abilitare o meno, un'uscita digitale di arduino.

Secondo voi, arduino uno è sufficientemente potente per fare questo? Altrimenti, cosa mi consigliate?

Venendo agli esempi che avete allegato, li avevo scaricati per studiarci un po' su, per capire come funziona, ma ho riscontrato un errore di compilazione che riporto qui:

D:\Download\Arduino\arduino-1.0.4-windows\arduino-1.0.4\libraries\mysql\mysql.cpp:39: error: conflicting declaration 'typedef const unsigned char prog_uchar'
d:/download/arduino/arduino-1.0.4-windows/arduino-1.0.4/hardware/tools/avr/lib/gcc/../../avr/include/avr/pgmspace.h:213: error: 'prog_uchar' has a previous declaration as 'typedef unsigned char prog_uchar'

Perdonate la mia ignoranza, ma non riesco a venirne a capo. Avete dei consigli da darmi? Non capisco dove sbaglio e/o se ho usato le librerie giuste.
Lo stesso errore me lo da sia con l'1.0.4 che con l'1.5.2.
Spero possiate aiutarmi e mi scuso per l'intrusione.
kisses

Valentina
Logged

Ci sono 10 persone al mondo, quelle che capiscono il codice binario e quelle che non lo capiscono.

0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10468
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

togli "typedef const unsigned char prog_uchar" da mysql.cpp (riga 39)

arduino è abbastanza potente per fare il parsing, però non per tenere in memoria tutto l'XML.. quindi o sei in grado di lavoralo un pò per volta, oppure dovrai prima memorizzarlo su una memoria esterna (magari una SD) e poi analizzarlo con calma.
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Roma
Offline Offline
Newbie
*
Karma: 0
Posts: 11
Fatti non fummo a viver come bruti, ma per seguir virtude e canoscenza.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao Lesto, grazie per la risposta.
Ho però comunque un problema...
forse non ho le librerie giuste, perché alla riga 39, c'è un commento!
Ho provato anche a scaricarne altre dalla pagina precedente, ma sempre tanti errori.
Oddio, sto impazzendo, tra cartelle, libreire, scaffali e armadi...
forse era meglio se mi davo all'arredamento!
Ti prego, dammi un link con le librerie giuste, ti prego ti prego ti prego!!!
 smiley-cry

BYE
Logged

Ci sono 10 persone al mondo, quelle che capiscono il codice binario e quelle che non lo capiscono.

Switzerland
Offline Offline
Faraday Member
**
Karma: 113
Posts: 5952
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao,

... primo : spiegami come fai a compilare per Arduino DUE con la 1.0.4 ... visto che NON è tra le board supportate da quella release   smiley-eek

... secondo : con la DUE le lib modificate NON usano la pgmspace. Se guardi i sorgenti modificati vedrai che se si accorgono che stai compilando per la DUE, non usano la pgmspace e fanno altre cose (nel codice abbiamo aggiunto appositamente delle  #if defined __SAM3X8E__). Quindi ... se stai compilando per la DUE e stai usando le lib modificate NON può uscirti quell'errore

Morale ... sicura di aver selezionato la board giusta nel IDE ?  smiley

Guglielmo
« Last Edit: April 11, 2013, 12:55:11 am by gpb01 » Logged

Search is Your friend ... or I am Your enemy !

Roma
Offline Offline
Newbie
*
Karma: 0
Posts: 11
Fatti non fummo a viver come bruti, ma per seguir virtude e canoscenza.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao, non stavo complilando per la DUE, ma per la UNO. Comunque ho risolto.
In pratica mi sono dovuta rimodificare le librerie secondo i vostri consigli ed ora compila correttamente. Per ora ho provato solo con la 1.0.4. Non so cosa fosse successo, ma ho ricominciato tutto da capo ed ora finalmente va.
Ora farò un po' di prove e poi vi farò sapere.
Grazie per i vostri preziosissimi consigli, siete veramente molto bravi, complimenti.

BYE
Logged

Ci sono 10 persone al mondo, quelle che capiscono il codice binario e quelle che non lo capiscono.

Pages: 1 [2] 3   Go Up
Jump to: