Go Down

Topic: Velocità del loop Mega 2560 (Read 9 times) previous topic - next topic

tuxduino


Nel 1° caso escludi il setup delle seriali, quindi escludi check sui buffer e interrupt.
Nel 2° caso togli solo i check per verificare se ci sono byte nei buffer, quindi il guadagno prestazionale è minore dato che  hai le ISR a rallentare lo sketch.

(se ho capito bene a quali porzioni di codice ti stai riferendo)


Le ISR di ricezione seriale vengono eseguite solo quando arrivano dei byte. Il solo fatto che siano attive non consuma cicli di CPU.

pablos

Insomma concludiamo questo treadh

"Hai una Mega? Bene, te la tieni così, se vuoi andare più forte di compri una UNO o un ARM!!"  :smiley-mr-green: :smiley-mr-green:
no comment

lesto

IMHO il 2° caso implica che il rallentamento indotto dalla creazione delle classi è minimo, quello che pesa molto è il check di serialEvent, sarebbe da capire quale istruzione o quale blocco di istruzioni rallenta così tanto e vedere se con il trucco dei buffer a null se non "beginnata" la serial può essere più veloce :D

ho provato a modificare il codice copn la storia del buffer, compila ma non testato (sono a lavoro), qualche buon anima che lo testa? allego il file HardwareSerial.cpp

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

pablos

Mmmmm da una barca di errori :)
allego txt
no comment

lesto

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

Go Up