Go Down

Topic: convertitore usb seriale non carica sketch (Read 2825 times) previous topic - next topic

Michele Menniti

non credo possa essere questo, c'è la r di pull-u, se no  ci fossero i 5V significherebbe che non sta alimentando la breadboard.
invece posso garantirti che molte volte ho programmato degli stand-alone senza usare il condensatore e voglio fare un semplice ragionamento: se servisse il Team l'avrebbe previsto di default, ma diciamo che loro hanno realizzato questo schedino solo per programmare i loro "mini", quindi bisognerebbe vedere se è previsto già lì, e comunque, perso per perso, a toglierlo non esplode nulla... ;)
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Brunello

Comunque per vedere se la schedina funziona ,puoi collegaresia quella che la UNO al PC.
Ti carichi lo sketch che c'e' tra gli esempi "SoftwareSerial/TwoPortReceive"
colleghi il convertitore ai pin 2 e 3 di arduino e apri Serial Monitor e un'altro terminale ( ad esempio Putty )

scrivi su uno e devi ricevere sull'altro

tonid

Quote
non credo possa essere questo, c'è la r di pull-u, se no  ci fossero i 5V significherebbe che non sta alimentando la breadboard.

Hai ragione ma a volte mi è capitato di avere un falso contatto sopratutto se le resistenze vengono sfilate dal cartoncino,gli rimane un po di colla e poi giustamente rompono le scatole...
Se non usa il condensatore per disaccoppiare,visto che sul convertitore al pin che funge da DTR ha una resistenza di 1k verso gnd(mi pare di ricordare a memoria) tirerebbe in basso anche il pin di reset dell'atmega anche in assenza di segnale.
Ora non so bene come funziona la cosa,tu Michele hai molta più esperienza di me se dico quindi c....ate correggimi pure che è così che si impara :)

Michele Menniti

lascia stare l'esperienza, io sono un hobbysta come te, solo che in questo periodo ho giocherellato parecchio con questi dispositivi, prima per aggiungere il paragrafo alla Guida, poi per pubblicare l'articolo sulla BitBang, ed ora (proprio oggi ho consegnato il materiale per la pubblicazione) perché ho fatto un bellissimo progettino di una scheda di questo tipo, basata sull'ottimo ed economico MCP2200. Da quanto ho appurato io normalmente quel pin è sullo stato logico HIGH, quindi quella R di pull-down probabilmente serve a tirare giù il livello logico quando passa sullo stato LOW, per come la vedo io è una sorta di "rinforzo", forse proprio a motivo dell'interfacciamento con altri micro, ma non so dirti altro. Di conseguenza anche se il pin è collegato direttamente al RESET del micro il livello logico è mantenuto su HIGH proprio dal pin dell'8u2. Ciò che dici avrebbe un senso se si trattasse di un pin di ingresso, allora la R da 1k andrebbe diciamo in conflitto con la 10k del 328 e porterebbe il livello su LOW, ma qui siamo in presenza di un'uscita attiva. Ti mostro in anteprima il prototipo definitivo del Convertitore, il jumper JP2 serve proprio per bypassare il C da 100nF, nei casi in cui dovesse risultare di troppo, come mi è capitato di vedere in diverse situazioni.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Augusto Picciani

#19
Nov 30, 2012, 08:43 pm Last Edit: Nov 30, 2012, 08:46 pm by franhk77 Reason: 1
Allora ragazzi, tutte le cose che avete detto finora le ho giá provate; riepilogo:

  • invertire collegamenti RX e TX

  • collegare direttamente il RESET senza il condensatore

  • utilizzare cavo usb piú corto (cortissimo), da 1,8 mt a 30 cm

  • provato a reistallare driver e cambiare pc (Ubuntu e XP)

  • monitorare la seriale tramite Terminal (simile a Putty). In questo caso non ottengo risposta dal convertitore, ma so che che i dati li riceve perché ogni volta che mando un carattere sulla seriale lampeggia il led RX; pero' non ottengo risposta TX. Cosa ben diversa se utilizzo la scheda Arduino UNO collegata al chip atmel sulla breadboard modalita' programmatore. In quest'ultimo caso ottengo RX e TX ed il carattere lo vedo chiaramente in risposta



Utilizzare l'ICSP ? E perché mai? Io l'ho comprata perché il prototipo che sto realizzando deve essere programmato tramite USB. Ve lo immaginate la casalinga a combattere con il cavo AVR/ICSP?   :D

A questo punto le soluzioni sono:
1) la rimando indietro, pago altre 6 euro di spedizione
2)Me la tengo e provo a reinstallare il firmware sull' 8U2 e ne ordino una nuova. altre 12,10+6 Euro
3)La frantumo e la metto nella ciotola di Fuffy trasformandolo in cane bionico

Che rottura di ball!!!! cmq grazie

Brunello

Se hai collegato la schedina al Pc e ponticellato Tx con Rx e da serial monitor non leggi niente..... una qualsiasi delle tre opzioni che citi va' bene.

e poi che c'entra la casalinga, l'ISP e' uno standard di comunicazione, mica devi per forza usare un connettore ICSP.
Io quando devo programmare uno standalone dall'esterno del contenitore ci metto un classico DB9

tonid

Quote
lascia stare l'esperienza, io sono un hobbysta come te, solo che in questo periodo ho giocherellato parecchio con questi dispositivi, prima per aggiungere il paragrafo alla Guida, poi per pubblicare l'articolo sulla BitBang, ed ora (proprio oggi ho consegnato il materiale per la pubblicazione) perché ho fatto un bellissimo progettino di una scheda di questo tipo, basata sull'ottimo ed economico MCP2200. Da quanto ho appurato io normalmente quel pin è sullo stato logico HIGH, quindi quella R di pull-down probabilmente serve a tirare giù il livello logico quando passa sullo stato LOW, per come la vedo io è una sorta di "rinforzo", forse proprio a motivo dell'interfacciamento con altri micro, ma non so dirti altro. Di conseguenza anche se il pin è collegato direttamente al RESET del micro il livello logico è mantenuto su HIGH proprio dal pin dell'8u2. Ciò che dici avrebbe un senso se si trattasse di un pin di ingresso, allora la R da 1k andrebbe diciamo in conflitto con la 10k del 328 e porterebbe il livello su LOW, ma qui siamo in presenza di un'uscita attiva. Ti mostro in anteprima il prototipo definitivo del Convertitore, il jumper JP2 serve proprio per bypassare il C da 100nF, nei casi in cui dovesse risultare di troppo, come mi è capitato di vedere in diverse situazioni.

Ahaha....vada allora per il giocherellone :)
Bello il progettino  ;) 

LCzxk

Nello schema della Uno R2 (http://arduino.cc/forum/index.php?action=dlattach;topic=67217.0;attach=4890) tx e rx sono collegati dall'8u2 all'atmega tramite una resistenza da 1k. Nello schema del convertitore USB (http://arduino.cc/en/uploads/Main/USB_serial04-LIGTH-sch.pdf) tra il chip e il connettore ci sono 2 resistenze in parallelo sul tx e rx è collegato direttamente al connettore.
Prova a collegare una resistenza da 500 ohm tra tx del convertitore e rx dell'atmega e una resistenza da 1k tra rx del convertitore e tx dell'atmega.

LCzxk

USB2SERIAL                  ATMEGA328P
1 GND        --->  GND
2
3 +5V        --->  VCC
4 TX           --->  470 ohm ---> pin 2 RX
5 RX           --->  1k ohm   ---> pin 3 TX
6 RESET     --->  1 uF        ---> pin 1 Reset

Se lo colleghi così funziona. L'ho appena testato

Augusto Picciani

ho appena acquistato un altro convertitore usb/seriale e tutto funziona alla perfezione anche senza le resistenze. L'importante é il condensatore 1uF da mettere in serie con il pin RST del convertitore ed il pin1 dell'ATMEGA.

Ora, dato che ho aggiornato il firmware del vecchio convertitore, volevo chiedervi dove andare a prendere il firmware originale. Ve lo chiedo perché il nuovo convertitore usb/seriale ha hardware id: USB\VID_2341&PID_003B mentre il vecchio: USB\VID_2341&PID_0001, anche se entrambi vengono riconosciuti come Arduino UNO! E' un problema?


Michele Menniti

assolutamente no, se funzionano il problema non si pone, non capisco come vengano riconosciuti come "Arduino UNO", forse ti riferisci al fatto che tu setti tale board e ti funzioni lo stand-alone. Comunque io il condensatore proverei a ridurlo a 100nF
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Augusto Picciani

Ti ricordo che delle due solo la nuova funziona, quella con PID 003B. L'altra, dato che non ha mai funzionato, è stata aggiornata con il firmware arduino-usbserial-uno.hex presente nella cartella di arduino, come molti mi avevano suggerito. Cmq credo che la rispedirò indietro.

Michele Menniti


Ti ricordo che delle due solo la nuova funziona, quella con PID 003B. L'altra, dato che non ha mai funzionato, è stata aggiornata con il firmware arduino-usbserial-uno.hex presente nella cartella di arduino, come molti mi avevano suggerito. Cmq credo che la rispedirò indietro.

ah, ok, allora concordo con te, visto che la seconda funziona correttamente, inutile perdere tempo con la prima, magari è un semplice problema di saldature, ma non si sa mai.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Augusto Picciani

Senti, dato che ti vedo competente e dato che ancora non ho ricevuto risposta, potresti darmi una dritta in merito alla domanda che ho postato ? Si tratta della comnicazione I2C ..il link è questo : arduino.cc/forum/index.php/topic,136602.0.html

TechBek

Ciao a tutti  :)
solo per far notare che anche io ho avuto lo stesso problema...acquistato mesi fa un arduino ethernet con il convertitore in oggetto per poterlo programmare; ha funzionato tutto bene per qualche giorno poi ho iniziato a non riuscire più a caricare gli sketch avendo in risposta l'errore "not in sync".

Ho provato tutte le soluzioni e consigli trovati sul forum e su internet, ma niente ha mai funzionato!
proverò anche io a comprare un convertitore nuovo!

Go Up