Problema arduino standalone e batteria 9 volt

Salve a tutti, oggi ho un problema da neofita dell'elettronica (quale sono). Ho montato un arduino standalone e ci ho caricato un software. Dovrei aver montato tutto nel modo corretto, ho inserito anche il limitatore di tensione e ho fatto tutti i collegamenti come mi diceva lo schema che mi hanno dato dove ho comprato il tutto (tra l'altro e' la splita configurazione che c'e sul sito di arduino nella guida ufficiale salve due condensatori connessi al limitatore si tensione che sono leggermente piu grandi di capacita'). In ogni modo il punto e' che finche lo alimento con la sua shield (quindi con i +5v e la massa) non ho problemi (il consumo di corrente e' di pochi micro ampere, si proprio micro ampere in quanto nel mio progetto e' inclusa una parte che mette in standby arduino). Invece quando stacco tutto e lo collego davvero in standalone con una batteria da 9 volt e 200mah il consumo sale di molto fino a raggiungere le decine di m.... Dove sbaglio?

Lo stabilizzatore di tensione consuma anche lui della corrente, ma senza lo schema o il link non so dirti altro.
Ciao Uwe

Sì, il problema è quasi certamente il consumo aggiunto dello stabilizzatore, se il circuito ti funziona ugualmente hai la prova certa, se invece non va allora è meglio postare lo schema, come dice UWE.

ragazzi ho risolto...era un collegamento fatto male.. con tutti questi cavi stavo impazzendo :grin:.. anche con il limitatore consuma molto poco. Ho notato tuttavia una cosa: per questi test ho usato ATMEGA328P-PU e tutto funziona correttamente. Tuttavia ho un lotto di ATMEGA328-PU su cui peròla funzione di sleep mode non fa risparmiare molto è come se non riuscisse a disabilitare tutti i dispositivi interni come invece accadeva nell'ATMEGA328P-PU, forse è dovuto a quelcosa che devo modificare dentro le funzioni? Utilizzo queste librerie:

e

il codice di richiamo è:

LowPower.powerDown(SLEEP_8S, ADC_OFF,BOD_OFF);

sapete perchè accade questo?

Hal90001:
... Utilizzo queste librerie:
Low-Power/LowPower.cpp at master · rocketscream/Low-Power · GitHub
e
Low-Power/LowPower.h at master · rocketscream/Low-Power · GitHub
il codice di richiamo è:

LowPower.powerDown(SLEEP_8S, ADC_OFF,BOD_OFF);

sapete perchè accade questo?

la libreria intera puoi scaricarla anche da GitHub - rocketscream/Low-Power: Low Power Library for Arduino cliccando sul icona "ZIP" in alto al centro. In questo modo scarichi anche gli esempi e il file keywords.txt per evidenziare le parole chiavi nel IDE.
Ciao Uwe

uwefed:
per evidenziare le parole chiavi nel IDE.
Ciao Uwe

in che senso? scrivo nella seriale quelle parole? Ma ad ogni modo questo come potrebbe aiutarmi nel mio problema?

ho aggiunto il keywords (mi sono documentato su internet e ho capito il funzionamento) ma non ha risolto il problema.

Dipende anche da cosa fanno il tuo codice ed il tuo circuito.
Lo sleep non è uno, ci sono diverse modalità di risparmio energetico. Inoltre un qualsiasi interrupt, sia esterno che generato da un modulo interno, può risvegliare il microcontrollore.

dopo un po' che ci ragiono forse ho risolto :grin: sapete però dirmi la differenza tra le due versioni di ATMEGA328??

Hal90001:
ho un lotto di ATMEGA328-PU su cui però la funzione di sleep mode non fa risparmiare molto

Ups. Non avevo visto questo.
Gli ATMEGA328 senza la "P" sono quelli con il vecchio core. La "P" sta per "PicoPower", un core con nuove implementazioni per il risparmio energetico. Quindi su un Atmega non "P" lo sleep non fa risparmiare quasi nulla perché non puoi disattivare i moduli interni come sull'Atmega328P.

eheheh.. tutto si spiega allora... :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: