Pages: [1]   Go Down
Author Topic: FTDI vs 16U2  (Read 541 times)
0 Members and 1 Guest are viewing this topic.
Naples (IT)
Offline Offline
God Member
*****
Karma: 6
Posts: 716
Andrea E.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Salve

Mi è stata prestata una scheda arduino uno R3.
Ho notato, con mio grande stupore, che impiega davvero poco nel caricare uno sketch.

Facendo un rapido confronto (con lo stesso sketch), la mia luigino328 (clone della duemilanove - con l'ultimo optiboot - quindi 115200 baud) impiega qualche secondo in più.

Molti sul forum hanno sempre sostenuto che l'FTDI impieghi meno tempo.

E' una mia impressione o è un dato di fatto?

grazie
Logged

Arduino, MODs e DIY: blackstufflabs.com

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 134
Posts: 9688
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Facendo un rapido confronto (con lo stesso sketch), la mia luigino328 (clone della duemilanove - con l'ultimo optiboot - quindi 115200 baud) impiega qualche secondo in più.
Molti sul forum hanno sempre sostenuto che l'FTDI impieghi meno tempo.
E' una mia impressione o è un dato di fatto?

Il tempo per caricare lo sketch dipende unicamente dal bootloader, il FTDI o 16u2 sono solo delle interfacce tra USB e UART e non hanno alcuna parte nella procedura di caricamento dello sketch salvo fare da mezzo fisico per la trasmissione dei byte.
Detto in altri termini, se sulla L328 metti lo stesso bootloader della UNO r3 il tempo di caricamento dello sketch è identico.
Logged

Naples (IT)
Offline Offline
God Member
*****
Karma: 6
Posts: 716
Andrea E.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

salvo fare da mezzo fisico per la trasmissione dei byte.

Appunto, l'ftdi non dovrebe essere ottimizzato?
Logged

Arduino, MODs e DIY: blackstufflabs.com

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 134
Posts: 9688
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Appunto, l'ftdi non dovrebe essere ottimizzato?

C'è poco da ottimizzare, il flusso dati transita alla velocità consentita dall'UART tra l'FTDI e l'ATmega, quindi il collo di bottiglia è il micro e non l'FTDI che sulla USB comunica sempre come minimo a 1.1 Mbps
E' come avere un serbatoio pieno d'acqua (i dati) e un rubinetto che ne regola la portata (il baud rate), se il rubinetto più di tanto non fa passare non c'è modo di aumentare la quantità d'acqua che puoi prelevare ogni tot tempo a meno che non aumenti la pressione (compressione dei dati) dentro il serbatoio.
Logged

0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5962
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Detto in altri termini, se sulla L328 metti lo stesso bootloader della UNO r3 il tempo di caricamento dello sketch è identico.
Scusa Astro pero' lui questo test lop ha fatto, infatti dice che sulla tua Luigino c'e' optiboot, quindi come mai trova questi secondi di differenza ?
Il tuo sistema di discriminazione del reset non inserisce latenza ?
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 134
Posts: 9688
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusa Astro pero' lui questo test lop ha fatto, infatti dice che sulla tua Luigino c'e' optiboot, quindi come mai trova questi secondi di differenza ?
Il tuo sistema di discriminazione del reset non inserisce latenza ?

Tocca vedere che versione del optiboot ha messo sulla L328, io ti dico che sulla mia L328 con sopra l'ultima release del optiboot, ovvero quella allegata con l'iDE 1.0.2, il tempo di caricamenti degli sketch è identico a quello della mia UNO con sopra lo stesso optiboot.
Lo smart reset non introduce nessuna latenza sensibile, il tempo di reazione è circa  2 ms dopo aver rilevato una condizione di reset valida, semmai si può parlare di differenze di latenza tra l'FTDI e l'8u2, il primo aspetta di aver riempito il buffer con alcuni caratteri prima di inviare verso il micro, però anche in questo caso parliamo di pochi ms, un tempo non percepibile da un essere umano.
Logged

0
Offline Offline
Faraday Member
**
Karma: 47
Posts: 5962
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ok
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Pages: [1]   Go Up
Jump to: