Search Programmazione WxWidgets CodeBlocks Android Elettronica Arduino 1-Wire

AA

A

Feb

01
2014

IteadStudio 2.8 TFT Display shield: Una nuova libreria
Arduino, Elettronica Add comments

69.164.218.62 Utente non autenticato Registrati Collegati

Come vi preannunciavo nel precedente articolo è ormai pronta la prima versione della mia nuova libreria dedicata alla shield
open in browser PRO version
Are you a developer? Try out the HTML to PDF API

Italiano English

pdfcrowd.com

partendo da una base già funzionante senza riscrivere tutto. IteadStudio 2.8 TFT Display shield: Una nuova libreria Arduino e RS485: piccoli approfondimenti Arduino – cos’è? (per principianti e anche meno) Categories Elettronica (36) 1-Wire (8) Arduino (30) Programmazione (26) Android (7) CodeBlocks (9) wxWidgets (11) Senza categoria (1) pdfcrowd. Dopo semplici interventi di ottimizzazione e semplificazione del software il tempo è passato a 10473. l’ho resa un po’ più complessa ed ho aggiunto la sezione di cronometraggio. su Arduino UNO.IteadStudio 2. specie la noiosa parte di inizializzazione.3 da cui ho cominciato un lungo e pesante percorso di revisione. ma per sottolineare come molto spesso le librerie che troviamo in rete siano tutt’altro che ottimizzate.1ms e pesava 8732 bytes. relè e infrarossi. Anzichè scrivere il codice totalmente da zero. La libreria da cui sono partito. Per testare le performance della libreria ho preso una delle sketch d’esempio. ma decisamente più vistosa è la diminuzione di occupazione della memoria flash di ben il 38% senza contare che la versione originale open in browser PRO version Are you a developer? Try out the HTML to PDF API RSS McMajan Libreria Ss_TFT Arduino.8 TFT Display. Non vi scrivo questi dati solo per la mania dei bechmark.3ms ed il peso della sketch a 5354 bytes. impiegava 11149. infatti con poche ore di lavoro abbiamo incrementato la velocità del 7%. Ho scelto quella libreria in quanto era scritta in maniera elementare e mi permetteva di modificare in modo veloce il codice.com . ho preso il vecchio codice della libreria ITDB02 V1.

8 Grandezza sketch 8732 5354 Senza categoria (1) WEB (1) Wordpress (1) Elettronica Sito ufficiale Arduino Programmazione HomePage Code::Blocks HomePage wxWidgets Il passo successivo è stato sostituire le classiche funzioni digitalWrite con la versione modificata della mia libreria FastArduino che già conoscete in quanto integrata con la libreria hc595 che trovate in questo blog. La prima semplice conclusione è che se avete una sketch che usa intensivamente le porte di Arduino in uscita vi conviene open in browser PRO version Are you a developer? Try out the HTML to PDF API Blog QR Code pdfcrowd. L’utilizzo della FastdigitalWrite comporta un ulteriore notevole miglioramento della velocità con mantenimento totale della compatibilità sia con Arduino Uno che Mega. se non siete interessati potete tranquillamente saltare tutta questa parte. A seguito trovate numerose altre tabelle di valori. Velcoità ms ITDB02 V1.1 10331. Il test viene completato in 7863.2ms mantenendo una dimensione di 5216bytes.com .0 11149.3 Ss_ITDB02 V1. questo articolo vuole infatti mettere in luce quali possano essere i margini di miglioramente scrivendo il proprio codice in un modo o nell’altro.non funziona con Arduino Mega mentra la mia si. L’iniziale incremento del 7% ora sale a quasi il 30% ed una riduzione in spazio flash di oltre il 40%.

8 7863.2 Grandezza sketch 8732 5354 5216 Per andare oltre ci si può che affidare alla programmazione diretta delle porte.0 Ss_ITDB02 V1.0 FA Velcoità ms 11149.1 10331. Ci troviamo di fronte ad un netto miglioramento di velocità ma con un pesantissimo impiego open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.7ms ma con una sketch di ben 19682bytes. cosa che ho fatto ma che ovviamente è stata aggiunta anche nelle ultime versioni della libreria ufficiale. Arduino UNO ITDB02 V1.sostiture la versione originale digitalWrite con la mia FastdigitalWrite per ottenere subito guadagni che nelle applicazioni più intensive possono superare il 75%. E qui le divergenze diventano interessanti e sono il motivo per cui vi ho annoiato con tutti questi numeri. senza compromettere la compatibilità con le diverse board. la UTFT. La domanda a questo punto è: che velocità raggiunge la UTFT? Ve lo dico io: 903.3 Ss_ITDB02 V1.com . La programmazione diretta delle porte complica notevolmente il codice e determina grossi problemi nel rendere il codice compatibile con le varie schede.

2 903.3% base -38.4% -95.3% -91.0 FADP open in browser PRO version 10473.7 531.7% ITDB02 V1.4% pdfcrowd. E la mia libreria? Vi sorprenderà. Ovviamente la UTFT contiente moltissime funzioni non ancora presenti nella mia libreria.di risorse. raggiunge i 531.9ms in soli 4944bytes.9 5216 19682 4944 -29.0 FA UTFT Ss_ITDB02 V1.1 Ss_ITDB02 V1.5% -40. quindi prestazioni ancora migliori con ulteriore risparmio di risorse. ma nel momento in cui non vengono usate NON devono occupare spazio nella sketch finale. Nel futuro sviluppo della mia libreria posso attendermi una lieve flessione prestazionale ma in linea di massima non ci saranno grosse modificazioni.com Are you a developer? Try out the HTML to PDF API .2% -43.0 Ss_ITDB02 V1. Arduino UNO Velcoità Grandezza ms sketch 8732 5326 Speed% Sketch% base -7.9% +125.3 7863.3 11149.

0 FA UTFT Ss_ITDB02 V1. Indipendenemente dalla libreria e dal tipo di ottimizzazzioni. ne ho mantenuto i dati come riferimento iniziale: Arduino Mega BASE Ss_ITDB02 V1.3% -43.3 5330 20224 5302 -29.8% 7870. la versione per Arduino Mega è sempre più lenta ed open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.9 1198.3 8732 5602 Speed% Sketch% base +23.2% base -35.4% -39.1 13735.6% -89.4% Guardando questi dati una cosa riuslta chiara. per cui abbiamo altre tre tabelline piene di dati da studiare.0% -89. Come dicevamo la mia libreria funziona anche su Mega e su shift register.com .4% +131.Ma non finisce qui.0 FADP Velcoità Grandezza ms sketch 11149. Anche se la versione originale della libreria ITDB non funziona con la Mega ne tantomeno su HC595.0 Ss_ITDB02 V1.5 1179.

0 Ss_ITDB02 V1. Velcoità Grandezza ms 11149.3% XX -30.3 1179.impiega maggiori risorse.3 XX 2590.7% Come ultima tabella vi metto a confronto le versioni più Comparativa Ss_ITDB02 – Mega UTFT – Mega open in browser PRO version Velcoità ms 1198.9 Grandezza sketch 5302 20224 pdfcrowd.8 sketch 8732 HC595 BASE Ss_ITDB02 V1.1 30163.5% 7127.1% XX -76.com Are you a developer? Try out the HTML to PDF API .0 FA UTFT Ss_ITDB02 V1.8% -28.0 FADP performanti: Speed% Sketch% base base -27.0 6260 XX 6052 -36.1% 6364 +170.

è possibile che si tratti dei font aggiuntivi.9 903. infatti le differenze con la mia libreria sono irrisorie (una decina di bytes). Nella UNO open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd. ma nel momento in cui non vengono utilizzati dalla sketch non ha senso che vengano compilati.0 HC595 531. La versione Mega è solo dello 0.1% più veloce della mia libreria (almeno per ora ) ma ha un’occupazione di memoria flash quasi 4 volte superiore Vi siete chiesti perchè la mia libreria è oltre due volte più veloce sulla UNO che sulla Mega? Ve lo dico io.Ss_ITDB02 – UNO UTFT – UNO Ss_ITDB02 V1. Per fortuna non ho notato sprechi sul versante RAM. L’altra cosa che possiamo notare è che la libreria UTFT non è ottimizzata al massimo su Arduino UNO. cosa seccante visto che la shield è in prima istanza fatta proprio per quella board. Non ho ancora indagato il motivo di tale spreco.7 2590.0 4944 19682 6052 Ci sono diverse considerazioni che possiamo fare su questi dati. La prima è che la UTFT spreca enormi quantità di risorse e questo è un lato sicuramente negativo anche perchè risulta chiaro che l’occupazione di memoria è riducibile del 75% per fare le stesse cose.com .

quarzo. Questo ci spiega perchè hardware di sviluppo come Arduino e le relative shield possano essere decisamente meno efficienti di schede create ad OK per specifici compiti. per cui possiamo affermare che rinunciando al 50% delle performances possiamo risparmiare 5 pin digitali.gli 8 pin corrispondenti agli ingressi dati del display sono tutti sulla stessa porta per cui con un’unica assegnazione li posso settare tutti in contemporanea. anche se purtroppo occorrerà open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com . etc. anche a parità di processore. Vorrei anche sottolineare che la versione HC595 (foto qui sopra) tutto sommato ha una velocità che è solo la metà di quella della versione Mega. cosa impossibile da farsi sulla Mega dove sono mescolate tre porte diverse.

due 74hc595 in serie di cui il primo collegato al display. IteadStudio 2. Share! Tw eet 0 Like 0 0 Share Articoli correlati: 1.8 TFT Display shield sia su Arduino UNO che su Mega 2560 2. 4. display HD44780 compatibile e 74HC595 5. un 74hc165 con 8 ingressi digitali ed un trasmettitore infrarossi. sensore 1wire DS18B20 e shield Ethernet. Direi che è un bel passo avanti rispetto a quanto ci obbliga la shield ed il software originale anche se non ho ancora cominciato a testare touch ed SD.dell’hardware di supporto per addattare la shield. Arduino e 74HC595: libreria per display HD44780 compatibili e uscite digitali. open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com . Display HD44780 e caratteri personalizzati. Arduino. Qui a lato vedete all’opera il mio solito prototipo che al momento della foto ha montata la shield con il display. 3. Arduino. zxdxddfghdf Be Sociable.

idraulico. Bazzica con l'elettronica e unisce le diverse passioni in un progetto di domotica. html. ai muri interni. medico radiologo Programma in C dalla fine degli anni 80.com . Stefano Stefano Smania. libreria.Related posts brought to you by Yet Another Related Posts Plugin. riscaldamento a pavimento. IteadStudio. Possiede approfondite conoscienze sullo standard DICOM. Scrive questi articoli nella speranza che servano a qualcuno Posted by Stefano at 00:02 Tagged w ith: arduino. hc595. TFT Leave a Reply You must be logged in to post a comment. Ha realizzato da solo un piano della propria casa. Gli piace cucinare ma ha poco tempo per applicarvisi. sql. php. open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd. javascript. Ha conoscenze discrete di C++. infissi e quant'altro vi venga in mente. l'impianto elettrico e domotico. dal rivestimento termico.

relè e infrarossi.com . © 2011 McMajan Suffusion theme by Sayontan Sinha open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.Arduino e porta RS485: piccoli approfondimenti (Italiano) Arduino.