Pin di reset

Ma il Brown-out tiene solo in reset il Controller finché la tensione é bassa? non puoi pilotare piedini in quel momento.
Ciao Uwe

uwefed:
No, cerco di soppravivere in tutte le situazoni della vita Arduiana. e un alimentazione non USB non é un caso cosí ipotetico.
CIoa Uwe

ROTFL XD XD XD

leo72:

[quote author=Michele Menniti link=topic=98358.msg740057#msg740057 date=1332883412]
l'ideale sarebbe che si adeguasse alla sua alimentazione, ma non mi pare che sia così, non li compro :expressionless:

Si potrebbe ovviare con un Attiny85 programmato con il Brown-out in modo che si attivi solo al superamento di una certa soglia di tensione, e che metta su LOW un pin per un dato lasso di tempo. Con un tempo di reset preprogrammato oppure magari impostato con un circuito RC, no? Non sarebbe difficile. Potrebbe avere anche una certa utilità.
[/quote]
Infatti con un tiny85 si può fare anche molto più di quel chip e la tensione si portrebbe leggerla in analogico, insolla il tiny ha tutte le carte in regola per risolvere quel tipo di problema, magari qualche volta ci giochiamo su :wink: sul brown-out non ricordo ora come funziona, ma mi pare che resettasse il micro SOTTO una certa soglia di tensione, leggo Uwe e mi pare dica la stessa cosa...

Sì ma anche quel chip vedo che ha una tensione di attivazione, oltre la quale resetta il micro per il tempo preimpostato. I nuovi micro Atmel serie "A" hanno tensione di alimentazione minima di 1,8V, quindi si attivano ben prima di un Arduino, per esempio. Comunque era un'idea così :sweat_smile:

uwefed:

[quote author=Michele Menniti link=topic=98358.msg740028#msg740028 date=1332881651]
Uwe trova sempre una scappatoia per non darci ragione

No, cerco di soppravivere in tutte le situazoni della vita Arduiana. Un alimentazione non USB non é un caso cosí ipotetico.
Ciao Uwe
[/quote]

Uwe il tipo di alimentazione non c'entra nulla con il reset. l'8u2 resta alimentato e funzionante anche usando alimentazione esterna. Volendo quindi si puo' continuare ad usare la sezione seriale, con tanto di reset, anche con alimentazione separata.
ad esempio isolando i segnali di alimentazione della usb, ma tenendo connessi i pin RD+ ed RD-

e' quello che succede se si rompe F1 di arduino. lo si alimenta a parte, ma il reset che parte dall'IDE continua a funzionare

Testato:
Uwe il tipo di alimentazione non c'entra nulla con il reset. l'8u2 resta alimentato e funzionante anche usando alimentazione esterna. Volendo quindi si puo' continuare ad usare la sezione seriale, con tanto di reset, anche con alimentazione separata.
ad esempio isolando i segnali di alimentazione della usb, ma tenendo connessi i pin RD+ ed RD-

e' quello che succede se si rompe F1 di arduino. lo si alimenta a parte, ma il reset che parte dall'IDE continua a funzionare

Visto che il reset viene dalla seriale non c'é quando alimenti l'arduino da un altra alimentazione non usb.
Ciao Uwe

Ciao Test, su questa cosa Uwe ha ragione, il reset lo genera l'8u2 ma viene imposto via software dal PC, se non usi i segnali USB il reset non avverrà mai se non manualmente. Però la tua teoria è interessante e forse è sfuggita a UWE, o forse perché in realtà F1, essendo autoripristinante, per romperlo devi massacrarlo di martellate; in pratica scollegando la sola alimentazione proveniente dall'USB i segnali viaggiano lo stesso. Non credo ci sia bisogno di arrivare a tanto: Arduino è dotato di un commutatore elettronico che, in presenza di entrambe le alimentazioni da USB e esterna, commuta a favore di quella esterna, sono prove che ho fatto decine di volte, quando p.es. mi serviva una 12V per uno shield.
Io credo che Uwe si riferisca al fatto di usare Arduino SOLO collegato all'alimentazione esterna e NON più all'USB, né per segnali e né per alimentazione: in questo caso ha ragione nel senso che il rest non è più "pilotabile" ma è certo (da quanto mi risulta) che un impulso parta ogni volta che Arduino viene alimentato, altrimenti come si avvierebbe lo sketch memorizzato nella flash del 328?

Mi pare di aver capito, che il problema sia il fatto che non parta l'autoreset iniziale dell'arduino, ma solo il reset manuale...
Questo problema è successo anche a me di recente, e non riesco a capire da dove venga il vero problema, tenendo inoltre conto che ho già fatto uso del microcontrollore al di fuori della scheda Arduino (si può dire???)...
Nonostante ciò ho risolto il problema collegando, con un condensatore (io ne ho usato uno 10nF),il pin di Reset e la massa GND (questo sapendo come funziona un condensatore)...
Questa è la soluzione (e funziona te lo posso assicurare), l'unica cosa che non so e che vorrei sapere anch'io, è il come mai delle volte fuziona delle volte no...

Sí, guardo un po una situazione generale con tutte le possibilitá di alimentazione normalmente usati.
L' ATmega328 all'accensione fa un Power on Reset ma non da fuori sul pin Reset il segnale per resettare altri dispositivi collegati al pin RESET.
Naturalemnte Leo ha ragione che puoi usare un ATtiny per programmarlo da mandare un reset in certe condizini di accensione, sottotensione e perfino watchdog. Ma é la stessa cosa che fa il TLC77xx a un costo inferiore (comunque parliamo di qualche decine di €)
Ciao Uwe

Davider:
Mi pare di aver capito, che il problema sia il fatto che non parta l'autoreset iniziale dell'arduino, ma solo il reset manuale...
Questo problema è successo anche a me di recente, e non riesco a capire da dove venga il vero problema, tenendo inoltre conto che ho già fatto uso del microcontrollore al di fuori della scheda Arduino (si può dire???)...
Nonostante ciò ho risolto il problema collegando, con un condensatore (io ne ho usato uno 10nF),il pin di Reset e la massa GND (questo sapendo come funziona un condensatore)...
Questa è la soluzione (e funziona te lo posso assicurare), l'unica cosa che non so e che vorrei sapere anch'io, è il come mai delle volte fuziona delle volte no...

2 possibilitá perché ognitanto non funziona:
l'impulso é troppo corto e non c'é piú quando il clock é stabile (serve un certo tempo perché l'oscillatore parte)
l'impulso é troppo poco pendente. Entrate digitali ognitanto hanno problemi con segnali che variano troppo lentamente. per questo spesso metti un RC come descrivi e dopo 2 inverter Schmidt Trigger.
Ciao Uwe

sulla questione reset non dimentichiamoci il bug del bootloader 4.4, risolto via hardware solo sulla UNO R3. e' tutto spiegato nella mia guida, si ci imbatte in questo problema se si aggiorna il bootloader di una R1 o una R2 a 4.4 (si risolve con un diodo sul reset)

------ info obsolete, approfondimenti piu' avanti

Testato:
sulla questione reset non dimentichiamoci il bug del bootloader 4.4, risolto via hardware solo sulla UNO R3.

Il diodo in anti parallelo alla R di pull up del reset della UNO R3 è una protezione contro eventuali tensioni maggiori di 5.6 Volt applicate al reset, inoltre aumenta l'immunità a disturbi sull'alimentazione che possono causare reset indesiderati, non ha nulla a che vedere con il normale funzionamento del reset.
Piccola nota tecnica, il diodo CD1206 è un diodo molto veloce, solo 4ns come tempo di intervento, in grado di reggere fino a 4A di picco, non può essere sostituito da un comune 1N4148 :slight_smile:

per quanto riguarda il diodo avresti un sostituto non smd ? A me era venuto in mente il 4148, che cmq e' veloce, se c'e' di meglio, pero' non smd, aggiorno la guida.

Per il funzionamento ho letto un po' in giro, ma principalmente ho provato sulla mia pelle. Uso il 4.4 sugli standalone, e mi capita spesso che resta resettato. come se tenessi premuto il tasto di reset. Lo confermi anche tu appunto, probabilil disturbi sull'alimentazione.

Il fatto che io lo chiami BUG e' perche' sul 4.0 il problema non c'e'. quindi cmq qualche intoppo sw c'e'.

Testato:
per quanto riguarda il diodo avresti un sostituto non smd ? A me era venuto in mente il 4148, che cmq e' veloce, se c'e' di meglio, pero' non smd, aggiorno la guida.

Per il funzionamento ho letto un po' in giro, ma principalmente ho provato sulla mia pelle. Uso il 4.4 sugli standalone, e mi capita spesso che resta resettato. come se tenessi premuto il tasto di reset. Lo confermi anche tu appunto, probabilil disturbi sull'alimentazione.

Il fatto che io lo chiami BUG e' perche' sul 4.0 il problema non c'e'. quindi cmq qualche intoppo sw c'e'.

un diodo schottky dovrebbe essere comunque molto più veloce del 4148, p.es. 1N5819

@Testato:
ciò che dici io non lo riscontro. Ho da luglio dell'anno scorso sulla mia UNO il bootloader Optiboot 4.4 (prima era l'Optifix quando era in beta) e non ho mai avuto problemi di reset indesiderati o problemi stessi di reset casuali. Arduino UNO R1.
Se davvero bastava solo il diodo, perché allora sulle UNO R3 c'è comunque l'Optiboot 4.4?
Io credo che sia un comportamento ascrivibile al tuo specifico modello: col tempo ho imparato che ogni UNO è un esemplare a sé stante. Ricorda, ad esempio: sulla sua UNO con bootloader originale Mike deve usare l'accoppiata RC per disattivare l'autoreset quando invece (prima di mettere l'Optifix) a me bastava il solo C.

@Mike:
quando Astro dice che l'1N4148 non può sostituire il diodo SMD della UNO penso si riferisca alla corrente che regge, dato che anche l'1N4148 è dato per 4ns ma regge 1/10 della corrente del primo.

la corrente non c'entra, e' solo la velocita', pero' mi confermi che avevo visto bene il datasheet. il 4148 non lo avevo scelto a caso, pero' visto che parto dal presupposto che Astro ha sempre ragione ho creduto che il 4148 non fosse 4ns. astro chiarira'.

per il discorso del boot leo, allora chiariamo meglio. SOLO con la 4.4 esiste il problema (saltuario sia chiaro, come dici te a molti non lo fa, a me si) ed infatti sulla R3, la prima dove hanno messo optiboot 4.4, dopo svariate segalazioni hanno approfondito ed hanno messo sto diodo

Quindi con il 4.0 no problem di reset ma altri problemi. con 4.4 esce sto problema, risolto con il diodo

quindi sugli standalone consiglio 4.4+diodo, cosi' come e' la R3 definitiva

ne avevamo parlato gia' nel post della guida ricordi ?

Testato:
la corrente non c'entra, e' solo la velocita', pero' mi confermi che avevo visto bene il datasheet. il 4148 non lo avevo scelto a caso, pero' visto che parto dal presupposto che Astro ha sempre ragione ho creduto che il 4148 non fosse 4ns. astro chiarira'.

Siccome mi ricordavo anch'io del 4148 come diodo "veloce", sono andato a riguardarmi il datasheet e lo danno per 4 ns. Uno Schottky come il 5819 è dato per 350 ns, se non ricordo male.

ne avevamo parlato gia' nel post della guida ricordi ?

Ma che domande: ovviamente... no! XD

Testato:
la corrente non c'entra, e' solo la velocita', pero' mi confermi che avevo visto bene il datasheet. il 4148 non lo avevo scelto a caso, pero' visto che parto dal presupposto che Astro ha sempre ragione ho creduto che il 4148 non fosse 4ns. astro chiarira'.

La differenza è in cosa è specializzato il diodo e proprio nella corrente di picco che regge visto che lo scopo primario è la protezione contro le ESD.

per il discorso del boot leo, allora chiariamo meglio.

Si chiariamola bene questa cosa, quel diodo non ha nulla a che vedere con le normali funzionalità di reset di Arduino.
Non ho ancora capito a quali problemi di reset ti riferisci relativamente alla 4.4 dell'optiboot, l'ho installato su tre diverse schede, una UNO R1, e due L328, e non ho riscontrato nessun problema.

ok, allora oltre ad Astro ha sempre ragione anche leo :slight_smile:

hai un sostituto non smd in mente ?

per il fatto delle motivazioni dell'uso del diodo io non e' che me le sono inventate. ho fisicamente il problema, accendi lo standalone con 4.4 ed a volte resta in reset. anche premendo il reset non parte, cioe' continua a restare su reset. dopo un po' da solo parte, oppure disalimentando ed alimentando 2 o 3 volte
ho cercato sul forum inglese, trovai dei bug ufficiali aperti se non sbaglio. e si parlava del diodo come soluzione.
Da li' naque il paragrafo della guida. se ne sa poco, e ritenevo utile creare u capitolo apposta.
devo vedere se ritrovo quelle info

Testato:
per il fatto delle motivazioni dell'uso del diodo io non e' che me le sono inventate. ho fisicamente il problema, accendi lo standalone con 4.4 ed a volte resta in reset. anche premendo il reset non parte, cioe' continua a restare su reset.

Cosa intendi che resta in reset ?
Vuoi dire che il led continua a lampeggiare veloce in sequenza ?
Ti ripeto che quel diodo non influenza in nessun modo il pin di reset del micro, fino a che la tensione sul reset non raggiunge circa 5.6V il diodo rimane interdetto.

Astro però lui parla di un Atmega328 in standalone. Tralasciamo il diodo.
Io sinceramente il bootloader Optiboot4.4 sugli standalone non ce l'ho mai messo per cui non so se può davvero avere dei problemi in quella situazione.