Cavo USB, problema con la tensione

leo72:
Non capisco se le alimentazioni entrano nelle giuste coppie VCC/GND e AVCC/GND.

A parte il montaggio da incubo c'è pure il fatto che non è possibile usare la presa USB del pc come fonte di alimentazione senza prima contrattare la corrente, ovvero senza un device USB regolarmente enumerato è possibile prelevare solo 100 mA dalla usb, cioè una corrente minima per consentire l'enumerazione e solo dopo che il device ha contrattato la corrente è possibile arrivare fino ai 500 mA massimi ammessi dalla USB.

astrobeed:

leo72:
Non capisco se le alimentazioni entrano nelle giuste coppie VCC/GND e AVCC/GND.

A parte il montaggio da incubo c'è pure il fatto che non è possibile usare la presa USB del pc come fonte di alimentazione senza prima contrattare la corrente, ovvero senza un device USB regolarmente enumerato è possibile prelevare solo 100 mA dalla usb, cioè una corrente minima per consentire l'enumerazione e solo dopo che il device ha contrattato la corrente è possibile arrivare fino ai 500 mA massimi ammessi dalla USB.

Già vero, il limite è di 100mA e non 500mA.
Passano a 500mA dopo il riconoscimento?
Oppure è necessario una richiesta esplicita sul bus?

Ciao.

MauroTec:
Oppure è necessario una richiesta esplicita sul bus?

E' il device che chiede all'host di elevare il limite di corrente, max 500 mA per la USB 2.0, fino a 900 mA per la USB 3.0, se non lo fa il limite rimane a 100 mA.

E con 100mA il chip funziona? Quindi il problema dovrebbe essere o nella resistenza alla base del transistor o in questi 100mA della usb, giusto?

veigh:
E con 100mA il chip funziona? Quindi il problema dovrebbe essere o nella resistenza alla base del transistor o in questi 100mA della usb, giusto?

Scusa una cosa, almeno facciamo prima.
Realizza uno schema elettrico del tuo circuito così almeno è possibile verificare gli errori di realizzazione che potrebbero esserci.

Ed ecco lo schema. Ho dimenticato di mettere le resistenze sui led, ma ovviamente ci vanno. Poi ho disegnato solo 9 led invece dei 27, lo schema poi si ripete. Comunque lo schema è questo:

Invece queste sarebbero le correzioni da fare giusto?

Ma le R sui LED di che valore sono?
Succede che piloti tutti i 27 LED contemporaneamente?
il transistor cos'è? un npn ok, la sigla?

Inoltre manca l'alimentazione al pin AVCC, non c'è la R di pull-up sul pin di reset. Il pin 8 di massa non è collegato..

leo72:
Inoltre manca l'alimentazione al pin AVCC, non c'è la R di pull-up sul pin di reset. Il pin 8 di massa non è collegato..

sì, ma lui l'aveva detto e ne avete già parlato, no? tutte queste esatte osservazioni migliorano il circuito ma certamente non spiegano il problema del sovraccarico o cortocircuito. Io temo che il problema sia sulla millefori, non è proprio il massimo da vedere, però è quasi impossibile riuscire a capirci qualcosa e soprattutto a vedere un eventuale corto.
Però mi pare che nessuno ti abbia suggerito di misurare con un tester i pin 5V e GND della tua scheda, OVVIAMENTE scollegata dal PC per vedere se c'è un bel corto o almeno una resistenza bassissima, l'hai fatta questa verifica?

No, aspetta. Lui aveva detto di non aver collegato l'alimentazione all'ADC.
Ma se vedi lo schema, ha collegato VCC sul pin 7 ma NON la massa sul pin 8, che invece ha collegato al pin 22. Manca la tensione positiva sul pin 20 (AVCC).
:*
Insomma ha fatto un po' di intrecci sulle linee di alimentazione.

ricordi i test che feci un annetto fa dopo una lunga discussione con Astro??? i due GND sono assolutamente in comune ed io sono riuscito ad alimentare e far funzionare il micro sia con un GND che con l'altro e addirittura col solo AVCC con un GND qualsiasi, il problema non è lì a mia memoria

Anch'io feci dei test e fui in grado di far funzionare l'ADC su uno standalone senza connettere la coppia AVCC/GND dei pin 20/22 però visto che siamo ad esaminare i problemi, era giusto specificare che quella connessione non è corretta.
Poi va visto anche il codice: se lui pensa di accendere tutti i led contemporaneamente, può darsi che mandi in blocco l'alimentazione da porta USB (e qui si torna al problema dell'assenza dei dati sulle R dei LED).
Poi c'è la questione dei corti che hai sollevato tu: quelle saldature effettivamente non sono il massimo. Dovrebbe mettersi di "buzzo buono" (come si dice dalle mie parti :wink: ) col tester e verificare se c'è una qualche conduzione parassita.

Le domande che ho posto sono tutte mirate a scovare questo probabile extra-assorbimento, ma se lui non risponde possiamo farci una partita a scacchi sulle possibili risposte; ovvio che sono d'accordo sul fatto che il circuito va reso perfetto, solo dicevo che collegare o meno quei pin non contribuirà in alcun modo a risolvere il problema principale; una volta scovato e rimosso il problema ovvio che poidovrà essere completato con tutto ciò che hai osservato.

Le resistenze sono di 150 ohm. Ogni pin pilota un led alla volta. Il transistor è un npn, su di esso leggo C33740 W27.

Questa verifica la dovrei fare con o senza chip? Spiegati meglio per favore.

leo72:
No, aspetta. Lui aveva detto di non aver collegato l'alimentazione all'ADC.
Ma se vedi lo schema, ha collegato VCC sul pin 7 ma NON la massa sul pin 8, che invece ha collegato al pin 22. Manca la tensione positiva sul pin 20 (AVCC).
:*
Insomma ha fatto un po' di intrecci sulle linee di alimentazione.

Assumendo le masse in comune come ci suggerisce Michele, dici che collegando anche il pin 20 si risolverebbe? Ma quello non serve per i pin in analogico?

Inoltre volevo precisare che, sì le saldature non sono il massimo, ma ragazzi è il mio primo progetto che faccio su una millefori xD Ho fatto altri progetti ma tutti con la scheda Arduino, e là basta collegare due fili e il gioco è fatto. Quindi chiedo venia per i collegamenti pessimi :grin:

Dunque (5-2)/150 = 20mA di media, nei momenti in cui li accendi tutti, se succede, i SOLI LED assorbono 27*20 = 540mA e quindi sei già fuori, in considerazione del fatto che ancora devi aggiungere il consumo, seppur minimo, del micro.

La verifica col tester devi farla col micro ma la scheda DEVE essere scollegata dal PC; devi mettere il tester sulla portata ohmica più bassa o, se c'è, sulla portata che fa suonare un cicalino quando c'è un corto; poi devi applicare i puntali direttamente sui pin 5V e GND della scheda, per vedere se c'è un cortocircuito (o ohm) o un assorbimento esagerato (pochi ohm)

I consigli di LEO non ti risolvono il problema, però SONO importanti e li devi mettere in pratica a prescindere, cioè quando risolverai il problema comunquedovrai apportare i correttivi che ti suggerisce

Nessuno ti sta facendo un processo, la millefori è eccellente per la prototipazione, anche per lavori definitivi, ma va usata in modo ordinato, non semplicemente come una specie di supporto per tenere assieme i componenti; insomma deve essere un valido sostituto del PCB, se la usi come una specie di breadboard diventa un boardello :grin:

No no non assorbe 540mA! Perchè si accendono uno alla volta, quindi massimo 9*20=180mA. 180 è comunque troppo in questa circostanza, ma se provo ad accendere un solo led non va comunque, e lì l'assorbimento è di 20mA più il consumo del micro. I led non possono accendersi tutti insieme perchè per poter accenderli contemporaneamente, con un assorbimento di 0.06 A sarebbe (5-2)/0.06=50 ohm. E la resistenza avrebbe dovuto essere diversa se accendi 1, 2 o 3 led. Quindi devono necessariamente accendersi uno alla volta.

Il tester che ho non ha una portata ohmica, o almeno credo che non ce l'abbia, mi misura semplicemente la resistenza. Nella lettura non da un valore, nel senso che continua e continua a leggere ma non esce nessun valore. Mentre se faccio toccare le due punte segna 0. Ne deduco che dovrebbe esserci un corto quindi?

veigh:
No no non assorbe 540mA! Perchè si accendono uno alla volta, quindi massimo 9*20=180mA. 180 è comunque troppo in questa circostanza, ma se provo ad accendere un solo led non va comunque, e lì l'assorbimento è di 20mA più il consumo del micro. I led non possono accendersi tutti insieme perchè per poter accenderli contemporaneamente, con un assorbimento di 0.06 A sarebbe (5-2)/0.06=50 ohm. E la resistenza avrebbe dovuto essere diversa se accendi 1, 2 o 3 led. Quindi devono necessariamente accendersi uno alla volta.

non ho capito niente, mi sembra una logica da allucinogeno, quindi lasciamo stare l'approfondimento :sweat_smile: e restiamo sulla certezza che non si accendono tutti assieme.

Il tester che ho non ha una portata ohmica, o almeno credo che non ce l'abbia, mi misura semplicemente la resistenza. Nella lettura non da un valore, nel senso che continua e continua a leggere ma non esce nessun valore. Mentre se faccio toccare le due punte segna 0. Ne deduco che dovrebbe esserci un corto quindi?

le resistenze si misurano in "ohm", quindi hai le portate "ohm"iche; il tester in ohm normalmente misura "1" con i puntali aperti e "0" con i puntali in corto tra loro, se vedi numeri ballerini significa che non c'è cortocircuito, qindi il mistero resta, a questo punto non saprei.
P.es. se il Transistor fosse guasto (ma intanto l'hai messa la R sulla base??) potrebbe non portare più tensione ai led

Per i consumi credo che volesse dire "si accendono uno un piano alla volta", difatti poi parla di 9 led.

leo72:
Per i consumi credo che volesse dire "si accendono uno un piano alla volta", difatti poi parla di 9 led.

sì, va bene, l'importante era escludere un consumo spropositato, comunque è la seconda parte della frase che :astonished: ma comunque non ha importanza, ci sono troppi fattori incogniti

Ma ciò che non mi spiego è che prima di fare questo progetto, ho fatto un altro cubo con gli stessi collegamenti e pezzi (resistenze, led, transistor) uguali. Perfino la resistenza sulla base del transistor, cioè non l'ho messa nemmeno sul primo progetto. L'unica differenza è che usavo la scheda Arduino, invece qui uso solo il micro. Quindi facciamo una serie di tentativi: il GND è comune? o devo saldarlo su entrambi i pin? Il VCC va solo sul pin 7 oppure anche su AVCC devo farlo arrivare? Benchè non utilizzi gli analogici.